๐Ÿ’ต

Pricing your app

Free, paid, or subscription: what to actually charge. Price for value, not comfort.

The most expensive pricing decision most indie founders make is the one they never actually make. They slap "free" on it, or copy a number that "feels okay," and hope. But price is the clearest signal of what your app is worth, and it's the one lever that moves MRR โ€” the hardest metric to fake and the spine everything here ranks on. Get it wrong low and you don't just leave money on the table; you tell the market your app is cheap and starve the runway that keeps it alive.

Pick a model that matches how value shows up

Don't reach for a pricing model by fashion. Match it to when and how often your app delivers value.

  • Paid up front (one-time). Fits a tool that delivers a discrete result and costs little to run per user โ€” a utility, a converter, a premium game. Simple, but it's a treadmill: you only earn when you find a new buyer, and there's no MRR to compound.
  • Freemium. A genuinely useful free tier plus paid upgrades. Fits apps with a natural usage ceiling (storage, exports, projects, "pro" features) and a search- or viral-driven top of funnel. The trap: give away so much that nobody ever needs to pay.
  • Subscription. Fits ongoing value โ€” the app does something useful this week, and again next week. It's the default for most modern mobile apps because it turns one install into recurring MRR. On iOS/Android this runs through StoreKit / Google Play Billing (or RevenueCat over both): digital subscriptions consumed in-app must use IAP, so you can't route around the cut with Stripe.
  • Free, no paid path. Only honest if you'll monetize later or you're truly a loss-leader. "Free forever" with no model isn't a strategy โ€” it's a deferral.

Price the value, not your costs

Cost-plus thinking โ€” "it costs me $2 in API calls, so I'll charge $5" โ€” anchors your price to your bill instead of the buyer's benefit. Value-based pricing asks a different question: what's the outcome worth to the user? An app that saves a freelancer a few hours a month is worth far more than its server cost. Your infra bill is the floor, never the target.

Charge more than feels comfortable

Almost every indie underprices, because the person setting the price is the one most afraid nobody will pay. Underpricing hurts three ways:

  1. It signals low value. A $0.99 subscription reads as "probably abandonware." Price is a quality cue before anyone opens the app.
  2. It attracts your worst customers. The cheapest tier draws the most demanding, highest-churn, most support-hungry users. Raise the price and the buyers get easier.
  3. It starves you. At small scale, revenue per user has to be real. Ten users at $15 beats a hundred at $1 โ€” and it's a far better sanity check that the value is actually there.

If quoting your price doesn't make you slightly uncomfortable, it's probably too low. Test up, not down.

Land on an actual number

You don't need a study โ€” you need a few real signals.

  • Read five comparable paywalls. Open five apps solving a nearby problem and look at what they charge. You're finding the range the market already accepts, not copying one.
  • Find your value metric โ€” the thing that scales with how much someone gets from the app (projects, generations, seats, exports). Tie price to that, so heavier users pay more.
  • Test a small range. Ship one price, watch conversion and MRR on real data instead of guessing, then try a higher one for new users. RevenueCat makes price experiments on mobile straightforward.

Tiers, anchors, and the trial

Three tiers beat one. Good / better / best gives buyers a frame, and most land on the middle โ€” so design the middle to be the one you want picked. A deliberately unattractive high tier (the decoy) makes that middle feel sensible; this is ordinary price-anchoring psychology, not a trick.

Two mobile realities:

  • Annual vs monthly. Offer both. Annual, at a visible discount, front-loads cash and cuts churn; monthly lowers the entry barrier. Lead with annual on the paywall, monthly as the fallback.
  • Free trials convert. A short trial on the annual plan lets the value land before the charge. Configure it in StoreKit / Play Billing and keep the terms honest โ€” surprise charges buy you refund requests and 1-star reviews.

Ship-ready when

  • Your model matches how value shows up (one-time vs freemium vs subscription).
  • The price is anchored to user value, not your server bill.
  • The number makes you slightly uncomfortable โ€” you tested up, not down.
  • You read five comparable paywalls for the accepted range.
  • Three tiers with a clear middle you want chosen; a decoy where it helps.
  • Annual and monthly both offered; annual led with a real discount.
  • Digital subscriptions run through IAP / Play Billing (or RevenueCat), not a side-door checkout.
  • Price and trial are instrumented, so you change them on MRR data โ€” not a hunch.
Building or growing an app?

I'm building ProveMyApp so founders like you can connect your apps, track their growth with verified metrics, and build alongside other founders instead of doing it alone.

Explore the library

More guides and playbooks to grow your app