·3 min read

Subscription vs One-Time Purchase: Which Model for an App?

How to choose between subscription and one-time purchase for your mobile app? Here are the criteria that actually matter, with real numbers.

TL;DR

If your app has recurring server costs per user, go with a subscription. If it runs locally with no backend, go with a one-time purchase. Inner Gallery has zero server costs, so users pay once.

When I built Inner Gallery, the business model came up very early. Competitors (Keepsafe, Private Photo Vault) all charge a subscription -- between 3 and 10 dollars/month. For an app that runs 100% locally.

When a Subscription Actually Makes Sense

Subscriptions aren't inherently bad. They're justified in three specific cases.

You Have Real Recurring Costs

If your app uses servers, cloud storage, or paid APIs, a subscription makes sense. Keepsafe Photo Vault generates about $700,000/month with this model because they store terabytes of encrypted photos.

You Provide Regular Content

Apps like Day One (roughly $350,000/month according to Sensor Tower) justify their subscription through cloud sync and frequent new features.

Your Product Is Constantly Evolving

Spotify, Netflix, or even Figma: their value increases every month. New artists, new shows, new features. Users pay for a service that grows.

Subscriptions work when you regularly deliver new value. Without that, it's disguised theft.

When a One-Time Purchase Is More Honest

For Inner Gallery, the choice was obvious: one-time purchase. Why? The app works entirely locally. Zero servers, zero external APIs, zero recurring costs on my end.

Charging a subscription for an app that runs on the user's iPhone without consuming anything external is dishonest. Full stop.

Local Apps

Calculators, offline photo editors, local password managers: if your app doesn't need any external service to function, a subscription has no justification.

Professional Tools

Developers gladly pay $50 once for Paw or Proxyman. These tools save them hours. A one-time purchase is clean and transparent.

Long Lifespan

I designed Inner Gallery to last at least 10 years. 6,325 lines of Swift/SwiftUI, zero external dependencies. Once purchased, it works indefinitely. That's the value of a one-time purchase.

User Psychology Matters

Users hate unnecessary subscriptions. The RevenueCat 2024 report shows that 68% of users prefer paying more upfront rather than monthly.

Why? They feel in control of their money. With an unjustified subscription, they feel held hostage.

A user satisfied with a one-time purchase becomes your best ambassador. A user forced into a subscription becomes your worst detractor.

For Inner Gallery, I chose the one-time purchase model. A free version with the basics, and paid packs to unlock advanced features. No subscription.

The app runs 100% locally, with no server to fund. Imposing a monthly subscription for an app that costs me nothing to run would not be honest.

How to Decide for Your App

Ask yourself these questions:

  1. Do you have real recurring costs? Servers, APIs, content...
  2. Do you deliver new value every month? Not bug fixes -- real value.
  3. Does the user get their money's worth in the long run?

If you answer no to any of these, a subscription is probably not justified.

Subscriptions must be earned with real recurring costs. If your app runs locally with no external costs, a one-time purchase is more honest and often more profitable in the long run.

Further Reading

businesspricingapp-storemonetizationmobile