A very mild defense of in-app purchases « John Moltz’s Very Nice Web Site:

I come not to praise in-app purchases but to not bury them.

Really, I hate the in-app purchase racket. I hate how it’s abused by so many developers. I will always favor an app that has a list price and no in-app purchases over one that’s going to nickel and dime me or even just make me pay to unlock levels or features.
The in-app purchase racket preys on people like the lottery. Pay another dollar and maybe you could win today! Oops, not today! Well, see you tomorrow!
Turns out, surprise, a lot of people like the freemium model

The thing is, the in-app model can work for both sides. It potentially solves a number of problems for developers. It was a big push for webOS, back in the day, to try to create opportunities for the developers, and it’s turning into a useful tool for developers when used intelligently. 

And yes, it can be abused, but that’s true of pretty much everything. 

How does it help developers?

It saves developers from the pain of having to deal with the “free trial” app and the “paid full” app. you can ship one app and use in-app to unlock the paid features. the pain of this “one app in two” are legion, starting with the pain of actually convincing users to buy and switch to the full app — and then getting their data from the free app to the full app through all of the security restrictions. 

It’s a very effective tool against piracy. It shifts the revenue point so that cracking the app and installing a free, stolen copy isn’t nearly as useful to the pirates. Some app developers I talked to back when I was dealing with this stuff for real found that many of the folks using pirated apps were still doing in-app purchases for things, turning them into part of the revenue stream. Even if they don’t, it’s a lot harder for them to take full use of the app without in-app. 

It can be an effective alternative to trying to convince users to pay up for “really good App 2”, given that Apple and pretty much every other app store has decided not to implement paid upgrades. You can offer “really good app 2” for sale in the store, and for existing users, upgrade “really good app” to include the features of the new app in a way that they can be unlocked with a in-app upgrade at a discount. It may not work for all apps and all code bases, but the option is there. And for some apps, it can make sense to create features and enhancements that are offered through in-app instead of going the “really good app 2” route.

I in many cases encouraged developers on webOS to think about in-app, especially as a way out of the “free app/paid app” hell that so many of them dealt with. Users generally love the “try and buy” option and shy away from paying for things they aren’t absolutely sure off unless they can test them out. But if you have a free demo app, it can become painful to try to convince them to move to the paid version. A well thought out demo with unlock lowers the pain points of both of these situations. AND screws over the pirates. 

That said, yes, some apps abuse in-app, especially off in game land where you’re constantly being nudged into buying more diamonds so you can buy more stuff. My view: I don’t mind that, if I’m getting good value, and by value, I’m talking about game-hours compared to the amount of money I’m spending. I recently played a game for a good number of weeks, and put a fair bit of change into it (let’s just say “I could have bought a really good XBOX game for that….”); and I think it was quite  a fair cost to me, given how many hours I got out of it. And then one day I’d decided I’d played it enough, and I thought as it advanced to really advanced levels it lost its game balance somewhat, and so I deleted it and moved on. I don’t regret the dollar amount a bit, given I probably ended up paying something like $0.30 an hour to play, more or less. That seems fair compensation to a developer to me (I know, horrors, to those of you who think $4.00 for a game a developer spent 18 months building is expensive. Those of you who think that’s a ripoff need to get a new hobby)

Now I’m playing the latest version of a game in a series I’ve played in the past. This one has shifted from the price up front to the in-app (aka “buy more diamonds!”) model. It’s okay, but the game play is, IMHO, too heavily biased towards “if you don’t buy this better armor you’ll die a lot, and you can only buy the better armor with diamonds, of course…” and so I’m dying a lot. And I’ve tossed a little money at it to experiment with their game play model and pricing, and to be honest, it’s going to get deleted soon. It’s okay, but…. the balance is too heavily weighted towards “buy more diamonds” for my taste. So they’ll end up getting a lot LESS of my money, because they got too greedy in their game balance. 

And that’s the answer here: if you try a  game and find it greedy, throw it out. And send them an email to the support folks telling them why. If it’s not fun because they tweaked the game balance in greedy ways, don’t play it. If you don’t play it and don’t send them money, they’ll get the message. If it’s fun and you’re getting a lot of gameplay hours out of it, well, everyone wins, right?

That’s my basic model: I know what I’m willing to fork over to have a good time. I value it as a rough “per hour” cost. The more fun a game is, the more I’m willing to adjust that “per hour” cost towards “sure, I’ll buy more diamonds”. the more they seem to be keeping me from enjoying the game until I fork over money for more diamonds, the faster I trash it and move on. I expect the developers to set a game balance that’s fair to both sides, not just them. If they blow it and get greedy, well, there are another ten bazillion games in the app store waiting for me to try them out… 

Developers deserve a good living. in-app gives them opportunities to do so. But that doesn’t mean you should let them hold your fun hostage, either. Push back on that and say no by deleting the app and not wasting your time or money on greedy ones. That’s the way to send the message not to abuse in-app. 

(and no, not gonna mention app names. they’re irrelevant for this discussion, and I’m not looking to review or publicize them….)