Journal · Essay · 8 min

Pricing a $12 Mac app: one-time vs subscription, with real numbers

By Ziyarex ·

Two of our apps are paid: Oreo at $12 once, and Slate free with a $19.99 one-time unlock. Both of those are decisions we can defend, and neither was obvious.

One thing up front, because the internet is full of pricing posts that quietly invent their evidence: the numbers modelled below are a model. The assumptions are stated so you can substitute your own. The only figures here that are literally ours are the two prices in the paragraph above and the reasoning behind them.

The maths, stripped down

One-time. Revenue in a month = new buyers × price. That's the whole equation. Your existing users contribute nothing this month. If acquisition is flat, revenue is flat. Forever.

Subscription. Revenue in a month = (last month's base × retention) + new subscribers, × price. Every month compounds on the last, which is why the curve bends upward, and why churn is the only number that really matters.

Take a concrete comparison: $12 once against $2/month, with 300 new users a month.

one-time $12subscription $2/mo
Month 1$3,600$600
Month 6$3,600~$3,000
Month 12$3,600~$5,300
Month 24$3,600~$8,600
24-month total$86,400~$137,000

Assumptions: flat 300 new users a month, 5% monthly churn on the subscription, no price changes.

The subscription wins in the long run, decisively. Every "should I subscribe" analysis reaches this conclusion, and it's correct arithmetic.

It's also incomplete in three ways that matter more than the arithmetic does.

The three things the table leaves out

1. Churn is not a parameter you get to choose

That model used 5% monthly churn. At 5%, half your base is gone in about 14 months. Push it to 8%, entirely normal for a cheap consumer utility that people forget they're paying for, and the curves look very different: the subscription's base plateaus early, and the compounding advantage mostly disappears.

The apps where subscription genuinely runs away are the ones with structurally low churn, and those are almost always apps holding your data or embedded in daily work. A notch widget is not that. Being honest about which one you've built is the single most useful thing in this whole piece.

2. Consumer utility buyers resist subscriptions specifically

Not as an abstract preference, as a purchase decision. A $12 one-time purchase and $2/month have very different conversion rates, even though the subscription is cheaper for the first five months. The one-time price is a bounded decision; the subscription is an open-ended commitment plus a small ongoing chore.

So the honest comparison isn't "$12 once vs $2/month at equal volume." It's "$12 once at your conversion rate vs $2/month at a lower one," and the gap between those rates is a number you can only get by testing.

3. Support costs are permanent either way

A one-time buyer from 2023 will still email you in 2027 about an OS update that broke something. You've booked their revenue once; their cost recurs. Nobody models this and everybody experiences it.

That asymmetry is the strongest genuine argument for subscriptions in software with an ongoing service component, and it's a much better argument than "recurring revenue is nicer."

The rule that actually decides it

Does your app cost you money every month that a user keeps using it?

If yes (servers, sync, storage, API calls, moderation, content) you need recurring revenue, or the maths eventually eats you. A one-time price against a recurring cost is a slow-motion insolvency, and every developer who has learned this learned it the expensive way.

If no (it runs entirely on the user's machine, and your marginal cost per existing user is approximately zero) a one-time price is defensible, honest, and easier to sell.

Oreo runs entirely on your Mac. There's no account, no server, nothing that costs us anything when you keep using it. Charging monthly for that would be charging rent on a thing we already delivered. $12, once.

The store's cut, which changes the numbers more than people expect

Apple takes 30%, or 15% for developers under $1M in annual proceeds via the Small Business Program. Almost every indie qualifies. Applying for it is genuinely the highest-return hour available in this entire discussion.

On $12 that's the difference between $8.40 and $10.20 per sale, a 21% swing in what actually reaches you, for a form.

Two further deductions people forget when modelling: refunds (Apple grants them, at their discretion, and you find out afterwards), and the fact that displayed prices in most regions include VAT that never belonged to you.

Paid upgrades, and the workaround everyone uses

The obvious answer to "one-time revenue is flat" is charging for major versions. The App Store has never supported upgrade pricing as a first-class feature, so everyone improvises:

  • Ship version 2 as a new app. Clean, and you lose your reviews, your ranking, and a chunk of your existing users.
  • Sell the unlock as an in-app purchase. This is the common path: the app is free, the paid capability is a non-consumable unlock. It gives you a free tier, keeps one listing and one review history, and lets you introduce a second unlock later without a migration.

That's exactly what Slate does, free app, one-time pro unlock. It's also why the free tier is real rather than a crippled demo: the free version has to be worth using on its own, or the unlock has nothing to build on.

What we'd tell someone pricing their first Mac app

  1. Start with the rule. Ongoing cost per user → subscription. No ongoing cost → one-time.
  2. Price higher than feels comfortable. $12 is not expensive to someone who wants the thing. The developers who regret their pricing almost universally regret going too low, and raising a price later is far harder than launching at it.
  3. Take the 15% programme on day one.
  4. Give it a free tier if you can make one that's genuinely useful. It converts better than a time-limited trial, and it produces users who talk about your app before they've paid.
  5. Don't do lifetime deals on a subscription product. You're selling infinite service for a finite payment, and the maths never recovers.

And if you're on the fence between $9 and $12: it's $12. Nobody has ever declined to buy a good utility over three dollars.

Mentioned in this post