This morning I read the sorry story of Gasketball. The game is an above-average puzzler in which you bounce a basketball off walls and other objects to shoot hoops. Like many such iOS games it's charming, pretty good fun (though not amazing I would say).
However, despite achieving 200,000 downloads, its developers have ended up homeless and borrowing money to survive. They released the game for free and using Apple's in-app purchasing model to allow the player to upgrade to the full game for a one-off price of $2.99. So far they've had 0.67% conversion (or 1,340 sales). Their reasons for only having one purchase are moral.
Like many developers, they believe that freemium business models are abusive. Their idea was to use the same system, but only have one payment. In other words they confused freemium with what we used to call shareware. Unfortunately it seems that nobody told them that shareware was never that great to begin with.
A developer with a noble idea of the player in mind thinks that if he can just get 1 in 10 users to cough up, then he'll do well. It sounds like this is the mistake that the Gasketball developers made. The reality is that free/paid conversions are usually much lower, on the order of 1 or 2% at best.
In the days of shareware software it was much the same, if not lower. Free download sites would distribute your game or application, with the idea that it would travel far and convert some. Shareware developers often hoped that they would see high conversion rates, but commonly would not. Even if software expired after 30 days etc, the number of actual converts was always on the very low side.
The reality of low try/pay conversion applies to even the greatest games. Far less people than you probably think will actually reach into their wallets in order to pay you for your work, but if they do cross that threshold then they are much more likely to do so again.
Repeat business is what makes freemium business models work. You go free to play in order to expose the core of the game to lots people in the hope of turning some of them into customers, and then you sell them something. And then something else. And something else. Once they buy one virtual item, they may buy two. Once they score one set of virtual currency, they will not think it bad to have another.
Not unlike the old arcades, some players spend lots of money and some endlessly eke out the value of one credit. Some even actually want to give you their money just because they like you, but if you haven't set up a way for them to do that then that money is just lost. Why charge $2.99 for an upgrade when you could charge $19.99, for example? Why, if it bothers you that much, not have a flexible pricing scale where they can buy the upgrade at whatever level they desire?
If you are struggling with the same moral question, then my advice is simple: Get over it. Repeat sales is a basic business model, used from fine restaurants to lowly casinos. The question should not be whether to accept or reject that premise (and so get hoisted on your own petard like the Gasketball guys), but how to approach it nobly or ignobly.
You don't have to be evil to sell multiple items to a customer who likes you.