Source
rawraw/how-i-built-a-30k-month-mobile-app.md
url

TL;DR

Solo founder John Macavoy from Scotland taught himself how to code and scaled Mumigo—a bus and train tracking mobile app covering 160+ cities—to 5.2 million downloads and $30,000 MRR using a zero-dollar App Store Optimization (ASO) strategy and event-driven paywall optimizations.


The Founder’s Story

John Macavoy began his career as a graphic designer in Edinburgh, Scotland. Working for a local bus company, he grew intensely curious about software development, databases, and backend systems. He wanted to build something tangible from scratch.

The idea for Mumigo came from a simple personal frustration: waiting at a bus stop in the freezing Scottish rain for 10–20 minutes. Uber had recently launched, and John was fascinated by the ability to see a vehicle moving in real-time on a map. He wanted that exact experience for public transit, allowing commuters to finish their morning coffee in comfort. He decided to teach himself how to code and build the solution.

The Building Process

John first designed the entire app interface in Adobe Illustrator. Lacking smartphone programming experience, he initially built the app’s first versions using Xamarin (C# / .NET). He quickly realized website architecture parameters do not translate to native mobile OS frameworks, leading to months of broken code, failures, and messy structural overrides.

As the project grew, John took a few months to rewrite the iOS application in native Swift, and subsequently chose Flutter to reconstruct the cross-platform application. Flutter proved to be the perfect framework for handling Mumigo’s intensive mapping arrays and complex sliding panels.

To power the app’s core utility, John built a server-side machine learning pipeline that tracks commuter pathways. If a train or bus is delayed, or a passenger is projected to miss an upcoming transit connection, the server automatically fires a push notification and dynamically routes alternative travel plans.

Launch & Marketing Strategy

John achieved over 5 million downloads without spending a single dollar on paid marketing, relying entirely on a sophisticated organic App Store Optimization (ASO) playbook:

  • Location-Specific Keywords: John added city-specific terminology directly into his app title and metadata (e.g. “New York subway”, “CTA L train” for Chicago). This triggered massive search visibility boosts.
  • Secondary Localization Hack: A major unlock was utilizing secondary App Store localizations. John added targeted US-focused English keywords inside the Mexican Spanish localization. Since Apple indexes Mexican Spanish keywords in the US App Store, this effectively doubled his usable keyword metadata real estate.
  • Region-Specific Screenshots: He customized app store screenshots for each localized region, assuring prospective downloaders that the app natively supported their specific city.
  • Autocomplete Research: John mapped high-impact search phrases by typing the first few letters of transit keywords into the App Store search bar and analyzing Apple’s autocomplete suggestions. These low-competition keywords were easily targeted to rank in the top 5.
  • Golden Moment Rating Prompts: To reach the number-one spot for keywords, John prompted the native iOS/Android review dialog during “golden moments”—such as right when a user successfully tracks a live bus moving on the map. This generated 75,000+ highly positive ratings.
  • Subscription AB Testing: After the pandemic completely wiped out Mumigo’s banner ad revenue ($8,000/month), John shifted to subscriptions. By running 10 AB tests using Mixpanel to optimize the onboarding and paywall flows, he skyrocketed paywall conversion from 0.5% to 8%, scaling MRR to $30,000.
  • Reverse Trial Paywall Exit: When users tap the close button on Mumigo’s initial paywall, the app triggers a “reverse trial” (“enjoy a week of Pro on us”) giving them 7 days of Pro features completely free without entering payment details. This frictionless trial significantly increased downstream conversions.

Tech Stack

  • Backend: Laravel PHP running on 20 dedicated servers (~$2,500/month)
  • Mobile Frontend: Native Swift (iOS) and Flutter (Android / cross-platform)
  • Design & Motion: Adobe Creative Suite (Illustrator, After Effects for animations converted to Lottie)
  • Subscription Management: RevenueCat
  • ASO & Keyword Research: Appfigures, Apple Search Ads (for keyword testing)
  • Analytics & Infrastructure: Mixpanel (event-driven analytics), Cloudflare (load balancing - $90/month)
  • AI Assistance: ChatGPT ($20/month)

Key Quotes & Metrics

  • Monthly Recurring Revenue (MRR): ~$30,000
  • Total Downloads: 5.2 Million (since launching in 2017)
  • Monthly Active Users (MAU): ~400,000
  • Total Ratings: 75,000+
  • Mapping API Expenses: ~$1,000/month
  • “For any developer, any idea you have has to be a problem that you yourself have… that’s probably the best way to get past the blocks.”
  • “For the first couple of years, I was relying on vanity metrics like monthly active users. It was only when I moved to event-based analytics that growth really happened.”