Underpricing kills more indie apps than bad code.
The price on your app is probably the least examined decision on your entire listing. Most indies pick a small, apologetic number at launch — one chosen to avoid criticism, not to fund a product — and then never touch it again. Here's the argument, and the arithmetic, for why that cheap price isn't buying you a single thing you think it is.
Where the fear price comes from
Nobody prices at $0.99 because they ran the numbers. They price at $0.99 because it feels unattackable: no one can accuse a dollar app of overcharging. The comparison set in the developer's head is other apps — the to-do list charging $2.99, the photo editor at $4.99 — and undercutting them feels like strategy.
But a store visitor doesn't shop the way that pricing assumes. Nobody lines up five habit trackers in tabs and sorts by price. They arrive from a search or a recommendation, look at one listing, and answer one question: will this solve my problem? Only after a yes do they glance at the price to check it feels sane. Price is the last checkpoint in the decision, not the first filter — and a number chosen to win a comparison nobody performs is pure donated revenue.
What a low price actually buys you
Start with visibility, because this is the quiet assumption underneath most cheap pricing: it doesn't exist. Price appears nowhere in either store's documented ranking factors — Apple talks about text relevance, ratings, and engagement; Google Play about relevance and listing quality. Your $0.99 gets precisely zero placement over a competitor's $9.99. The store does not reward cheap.
Conversion, then? Barely. The visitor who bounces at $4.99 was almost never going to buy at $1.99, because the barrier at that moment isn't money — it's trust. They don't yet believe the app will do the job, and no discount fixes disbelief. This is why "less than a cup of coffee" has never rescued a listing: the coffee already has your trust; the app is still asking for it.
What a low price does reliably buy is a hard ceiling on what any user can ever pay you — and a signal. A dollar says "toy." Users read price as a quality claim before they've seen a single screenshot, and a suspiciously cheap tool in a serious category reads the same way a $40 laptop would.
The arithmetic nobody runs
Say you want a modest $2,000 a month from your app — not quit-your-job money, just keep-caring money. Both stores take 15% at indie scale (Apple through the Small Business Program under $1M a year, Google on your first $1M each year), so a $0.99 sale nets you about $0.84. To hit $2,000 you need roughly 2,400 sales every month — about 78 every single day, forever, each one a brand-new customer you have to find, convert, and support, who will never pay you again.
Now the same target at real prices. A $14.99 one-time purchase nets about $12.74 — 157 sales a month, a fifteenth of the acquisition problem. A $6.99 monthly subscription with 300 subscribers grosses $2,097 and nets about $1,782 — and the job stops being "find 2,400 strangers by the 31st" and becomes "keep 300 people happy." Same revenue, completely different life.
And the tiers aren't the constraint they used to be: in 2023 Apple expanded App Store pricing to roughly 900 price points, from $0.29 into four figures. The store will let you charge almost anything. The limiting factor is nerve.
Price against the job, not the category
The way out of fear pricing is to stop pricing against other apps and start pricing against the alternative. What does your app replace — an hour of someone's time, a service they'd hire, a mistake they'd make? An invoicing app that saves a freelancer one billable hour a month is comically cheap at $10 a month. A culling tool that saves a wedding photographer an evening per shoot competes with paid culling services, not with 99-cent filter apps. If your app genuinely does a job, the honest comparison is what doing that job costs without it.
Run that math for your own app and write the answer down. If your price is less than a tenth of the value number, you haven't priced the product — you've tipped yourself.
The customers a low price selects for
Here's the part nobody warns you about: price doesn't just set revenue, it selects who shows up. The dollar buyer bought an impulse. They skipped the listing, expect magic, and their commitment to figuring anything out is exactly one dollar deep. The user who paid a real price self-selected — they read what the app does, they have the problem, and they arrive intending to succeed with it.
Meanwhile your cost per user — support email, sync storage, AI calls, refund handling — is identical at every price. Charge less and you haven't reduced the work; you've only reduced what funds it. Underpricing is how you end up with an inbox full of demands from users whose lifetime value doesn't cover the reply.
Raising a price without a riot
Grandfather the people who already trusted you. Both stores support this natively: Apple lets you preserve the current price for existing subscribers when you raise a subscription, and on Google Play existing subscribers stay on the old base-plan price until you deliberately migrate them. New price for new users, nothing changes for anyone who already paid — there is no riot, because nobody has anything to riot about.
Treat it as an experiment, not a confession. Change the price, change nothing else, and watch a month of store analytics. What matters is revenue, not installs — losing 30% of conversions at double the price is a raise. If the data says you went too far, you can step back down in an afternoon.
Let the store handle the world. Apple generates per-storefront prices from your base price automatically; you only need to hand-tune the handful of markets that matter to you instead of defending one global number everywhere.
The listing has to back the price
One honest caveat: a real price needs a listing that looks like it. A $6.99-a-month ask sitting on raw, unstyled UI dumps reads as a mismatch — the visitor's trust question comes back, harder. Your screenshots are the only evidence of quality anyone sees before paying, which makes them the cheapest pricing power you can buy. That's what ShotCanvas is for: drop in your raw screens, pick a professional template or let AI compose the set, and ship a listing that makes your price look obvious instead of optimistic.