Overcast has had two business models to date:

Year one: Free up front, but with many limits and missing features unless you bought the $4.99 (one-time) in-app purchase to unlock them. This brought in good money up front, but income slowly declined, as all paid-once purchases do, and it restricted the app’s best and most compelling features to the very small percentage of people who paid. Everyone else got a sub-par app.

Year two: Free for all features that were previously locked behind the purchase, with an optional $1/month patronage, to deliver the best app to the most people and hopefully change the direction of the downward revenue curve by replacing one-time purchases with recurring income. This simply hasn’t brought in enough money, which I’ll get into below.

Starting today, I’m trying a third:

Year three: Free for almost everything, with simple ads on some screens, and everyone now gets the dark theme. Patronage is now Overcast Premium, now just $9.99 per year, for ad-free use, file uploads, and some future features. Existing patrons become Premium accounts of the same duration, with all Premium benefits. At the end of your patronage, you’ll be asked to renew as Premium. Buyers of the old $4.99 unlock from year one: Restore Purchases from the Premium screen, and you won’t see the normal ads, but you may see occasional promos for Premium to support further development.

How patronage performed

Patronage was a big risk, both in finance and reputation. I took a lot of heat for it, and it initially made much less money than the previous model. But I knew that if I could convince 5—10% of the userbase to pay, I’d come out ahead.

Here’s how that went:

Patronage initially brought no new exclusive features, based solely on goodwill, which only convinced about 1.9% of people to pay. This wouldn’t be sustainable, so I had to add perks to patronage that some people would want enough to pay for. But to prevent the year-one problem of most people using an inferior or annoying app by not paying, the absence of the patron-only features needed to be inconsequential or unnecessary for typical usage.

In March, I added the two new features only for patrons: a niche file-upload feature that required ongoing hosting costs, and a dark theme that was highly demanded but purely cosmetic.

It worked fantastically at first. The patronage rate jumped from 1.9% to 2.6% in one week, and slowly rose to just under 3%. But growth has stalled there, and it’s clear that I’m not going to reach my 5–10% goal.

And keeping the dark theme behind a subscription has been extremely unpopular, even among those generous enough to pay. People really don’t want to pay a monthly fee for what seems like a basic app feature, even if it’s purely cosmetic, and many patrons have been getting very angry when they stop paying and the dark theme goes away.

Options

Faced with these problems, I came up with a few solutions, all of which were terrible:

No change: The status quo brings in enough money to keep the service running and fund basic maintenance and occasional updates, but I want to do more: more frequent updates, more cool features, more server capacity, more users, and higher quality.

The status quo brings in enough money to keep the service running and fund basic maintenance and occasional updates, but I want to do more: more frequent updates, more cool features, more server capacity, more users, and higher quality. Lock existing free features behind patronage: This would anger pretty much everyone, and once it settled down, I’d be stuck with the same problem as year one: most users never get the best parts of the app.

This would anger pretty much everyone, and once it settled down, I’d be stuck with the same problem as year one: most users never get the best parts of the app. Add new patron-only features: If any new patron-only features are widely demanded, I’ll be stuck with the year-one problem again. If not, they won’t bring in enough money. The latter is more likely: what most people want (and will pay for) is pretty well covered by Overcast’s current features.

If any new patron-only features are widely demanded, I’ll be stuck with the year-one problem again. If not, they won’t bring in enough money. The latter is more likely: what most people want (and will pay for) is pretty well covered by Overcast’s current features. Change to pure subscription pricing for the entire app: This may work for other types of apps, but probably not general consumer entertainment apps in highly competitive environments full of free alternatives, one of which comes installed on the phone. This would severely harm Overcast’s ability to get new users, hurting my political goal of protecting the awesome, open, decentralized world of podcasting with app diversity.

This may work for other types of apps, but probably not general consumer entertainment apps in highly competitive environments full of free alternatives, one of which comes installed on the phone. This would severely harm Overcast’s ability to get new users, hurting my political goal of protecting the awesome, open, decentralized world of podcasting with app diversity. Change to a paid-up-front app, or year one’s one-time unlock: A smooth transition from the status quo to this would be impossible, and I’ve been down this road enough times to know that pay-once revenue curves only go downward. The App Store never made this easy, and the market is only getting more challenging over time.

It felt hopeless, but my initial thinking was restricted by trying to wedge traditional software business models into the realities of today’s App Store. It’s hard to make older revenue models work today because the market is completely different.

Charging money only works in scarcity, but most kinds of software are no longer scarce, especially on iPhone. Whatever I charge money for, someone else can give away, and vice versa. For instance, most of my competitors now offer a dark theme at no additional charge, but if I give mine away without any other changes, I’ll go out of business.

There’s still money in some software, especially if it helps people get their work done, but the market for most consumer apps is much more like music, video, news, opinion, and web services than traditional indie software: an overwhelming supply of free choices, many of which are great or good enough, making it hard for anyone with a paywall to succeed.

The content industries figured out the solution a long time ago. If 97% of my users can’t or would rather not pay, but they spend substantial time in the app every day, the solution is probably ads.

Ads

Ads are the great compromise: money needs to come from somewhere, and the vast majority of people choose free-with-ads over direct payment. Ads need not be a bad thing: when implemented respectfully, all parties can get what they want.

Most podcasts played in Overcast are funded by ads for this reason, and as a podcaster and (occasional) blogger myself, I already make most of my income from ads.

I’m far from the first one to try an ad-supported app — among many others, my co-host on Under The Radar, David Smith, now makes the majority of his App Store income from ads — and it’s unwise to rule out any reasonable business model in today’s App Store.

So I’m trying ads in Overcast: simple, non-animated, mostly-text banners on the main list screens that unobtrusively scroll with the content.

In exchange for ads, I’m giving everyone dark mode for free. If you’d rather not see ads, a Premium subscription (or restoring the old 1.0 unlock if you bought it) will hide them.

In today’s app environment, for a daily-use consumer app like this, ads make a lot of sense for both users and developers. Ads align incentives toward making a high-quality app that you’ll actually want to use long-term, rather than just struggling to get your money up front or toying with psychology so you’ll buy more gems.

A lot of indie developers struggle to make sustainable income in the App Store. I’ve experimented with many models over the years, and I’ll be happy to share the results of this change to hopefully be useful to other developers.

I honestly don’t know if this will work long-term, but I think it probably will. If it does, it will solve a lot of problems and let me do quite a bit more, better and faster than before, and truly make the best app for everyone, rather than only 3% of my customers.