A two-week project, five years long
In spring 2020, the UK was in lockdown and exercise was one of the only reasons people were allowed to leave their homes. Shaun Donnelly, an indie app developer based in London, had free time, a running habit, and an itch to build something. He released the first version of Personal Best in May — intending it to be a short two-week project to help him track his own workouts.
He discovered a love for making apps and never stopped improving it. Personal Best is an iOS app that generates insights from your workouts using Apple's HealthKit framework: your fastest run in the last six months, your earliest swim, your total distance this month — plus best-in-class extras like customisable workout images for social media, home and lock screen widgets, and Shortcuts support. Today it's been downloaded thousands of times with users across the world.
What makes the story interesting isn't explosive growth — it's duration. A two-week lockdown project became a five-year business. Donnelly kept shipping: achievements with pun-filled names, widgets Apple Health doesn't offer, deeper analytics than the stock app provides. The app found its wedge not by out-Apple-ing Apple, but by going where Apple won't — the 20% of functionality that Apple's 80/20 philosophy leaves on the table.
Hitting the wall — and writing about it
Personal Best is free with an optional in-app purchase: Personal Best Pro, a recurring subscription (monthly, annual, or lifetime) that unlocks more insights and customisation. There's also the requisite tip jar that every indie developer has. When Donnelly decided to add the Pro subscription, integrating RevenueCat was, in his words, a no-brainer — he'd previously tried wiring up a tip jar's in-app purchase without any third-party framework and found it challenging to get his head around. With RevenueCat, he launched Personal Best Pro in September 2022, fast and simple.
The subscription charts told a familiar indie story. Active subscriptions grew at first, with a big jump coinciding with iOS 16's launch, when Personal Best's updates got press coverage. Then things slowed down. Between October and December he gained only a few new subscribers, and growth stagnated completely in January. The wall every subscription app hits: the initial audience converts, the press cycle ends, and then it's just you and the churn curve.
Donnelly didn't hide from it. He wrote about the stall openly on RevenueCat's engineering blog — one of their 'indie stories' case studies — detailing how he reworked the paywall into a frictionless free trial. Instead of a wall that demanded payment upfront, he built a ramp: try everything, then decide. His framing was deliberate and memorable — build a ramp, not a wall. It's the kind of honest, specific writing that resonates with other indie developers precisely because it admits the hard parts.
The indie stack
Donnelly's public presence extends beyond the blog post. He appeared on the AppForce1 Worklog podcast, where he talked through the product's positioning against Apple Health: the stock app is good at what it does, but inherently limited, and Personal Best exists to turn that buried HealthKit data into useful information — achievements, widgets, deeper stats. He's a developer who understands that his competitor isn't really other indie apps; it's indifference, and Apple's good-enough defaults.
The indie economics are worth noting. At ~$5K, Personal Best isn't going to make anyone rich. But it's a real business built by one person in London, with no funding, no team, and no growth hacks — just a good product, iterated for five years, monetized with subscriptions that respect the user. The lifetime purchase option and the tip jar acknowledge something important about indie apps: some users want to support you, not just transact with you.
There's a broader lesson in the RevenueCat case study too. The subscription infrastructure that used to require a team — trials, entitlements, cross-platform sync, churn analytics — is now an API call. Donnelly could focus on the app while RevenueCat handled the plumbing. That's the quiet enabler behind a whole generation of indie subscription businesses: the boring infrastructure got commoditized, so one person can run the whole stack.
Why it works
Personal Best's story is a reminder that not every success story needs to be explosive. Five years of steady iteration on a genuinely useful app, honest writing about what isn't working, and a monetization model that treats users like adults — that's a complete playbook for indie sustainability.
The two-week project that never ended is also a useful corrective to the 'launch and move on' mentality. Donnelly's compounding came from staying: every feature added to an existing user base, every press mention landing on a mature product, every year of App Store presence building reviews and ranking. Time in the market, like time in the market for investments, does most of the work.
For indie developers watching, the takeaway is simple: pick something you actually use, ship it, keep shipping it, write honestly about the journey, and let the infrastructure handle the rest. Personal Best proves you don't need a breakout hit. You need a good app, five years, and the discipline to keep going.
The playbook
- Let side projects compound — A two-week project became a five-year business because Donnelly kept improving it. Shipping is the start, not the end.
- Go where the platform won't — Instead of competing with Apple Health, Personal Best goes deeper — advanced insights, widgets, achievements, social images.
- Be press-ready before the press comes — iOS 16 press coverage drove a subscription spike. Being ready with a good product when the spotlight hits is the strategy.
- Write about the hard parts — Donnelly wrote openly about the stall on RevenueCat's blog — then fixed it with frictionless free trials. Transparency builds trust.
- Offer every way to pay — Monthly, annual, and lifetime options plus a tip jar. Indie pricing is about giving supporters ways to pay, not maximizing ARPU.