Growing FoodNoms to $10K MRR and Beyond: H1 2023 Recap
Hi! I'm Ryan Ashcraft (@ryanashcraft@mastodon.social and @ryanashcraft@threads.net), creator of FoodNoms, the nutrition tracking app for Apple platforms.
I started FoodNoms back in 2019 as a "funemployment" (i.e. burnout therapy) project and because I saw an opportunity to build a nutrition tracking app that was thoughtfully designed, simple, and integrated well with the Apple ecosystem.
From 2020 to 2022, I balanced working on FoodNoms on the side while maintaining full-time employment. Then in December 2022, I made the decision to recommit to FoodNoms full time and quit my job.
Eight months later, FoodNoms' MRR has doubled and just crossed a huge milestone – $10K MRR! As someone who's always been open about my journey (#buildinpublic), I want to provide an update about how FoodNoms has been doing, and dive into why this year, with its unique mix of challenges and breakthroughs, has been so different.
I spend time writing articles like this for two reasons. The first is that it acts as a natural self-review or check-in. It acts as a forcing function to crystallize my thoughts and plans.
The second, and main reason, I publish these articles is that I hope they can be a valuable set of data points for aspiring indie devs. Being an indie dev is hard and takes an incredible amount of persistence. I hope my experiences can serve as valuable reference points, and I hope that you can learn from my mistakes.
Win: Shipping a Major Rewrite
Rewrites are dangerous and usually a mistake. I knew I had no other choice with FoodNoms. The old codebase had become extremely constraining. I was quite scared of shipping new features that touched certain parts of the app; this fear limited my ability to build major new features that people would pay for.
In January, after years of being in the works and several delays, I finally shipped the damn thing.
I am satisfied with the new code architecture, and I am relieved to have finally shipped several major new features that many people had been requesting for so long. The rewrite had been hanging over my shoulder for years, so it was such a relief to finally put it in the rear-view mirror.
Win: Successfully Relaunching FoodNoms
I spent so long on the rewrite that many features got batched up to be a part of it. I was really hoping that it could all be packaged up into a pitch that would be compelling. I dubbed the update "FoodNoms 2," whipped up a new press kit, and shared it with several writers, editors, and reviewers.
To my relief and immense gratitude, I got what I was hoping for. With features from MacStories, 9to5Mac, and more, the year kicked off with a bang (see chart at start of article).
Win: Increasing Conversion to Paid
Thanks to shipping several features that people are willing to pay for and paywall optimizations, the app's conversion rate to paid has increased by 1+%. One percent may sound small, but it makes a significant increase in volume. Naturally, the ratio of paid users to free users is consistently growing.
Win: Increasing Prices
A few months ago, I conducted a quick and scrappy pricing experiment. I adjusted prices several times over the course of a few weeks to pinpoint the price point that would maximize revenue. (Yes, there are more sophisticated pricing experiments to consider, ones that account for renewals/churn and enable split testing, but I opted for a simpler, more direct approach this time around.)
Ultimately, I decided to keep the monthly price steady at $4.99, while bumping the annual price to $35.99. This equates to a compelling $2.99 per month, which I prominently display in the paywall.
Note, I've never increased prices for existing subscribers. I'm a big believer in grandfathering when possible.
Win: Doubling the Ratio of Annual vs Monthly Subscriptions
By removing the trial option for monthly subscriptions and redesigning the paywall, I have doubled the ratio of annual to monthly subscriptions. This helps reduce churn, increase cash flow, and generally make everything more predictable.
Win: Increasing Lifetime Value (LTV)
By optimizing the paywall, increasing conversion to paid, increasing prices, pushing the annual subscription, and shipping more features that keep users retained longer, LTV has gone up dramatically this year. Realized LTV per user, including free users, has increased by over $1, which makes a world of a difference with paid marketing.
Win: Seeing Increased Word of Mouth
It's not easy to assess "word of mouth", but I have a general sense that FoodNoms is being recommended more often out in the wild. I'm getting more referral traffic from Reddit, and thanks to F5Bot (h/t @emcro for recommending this awesome tool), I can see exactly what folks are saying about the app. People seem to be more honest and nuanced on Reddit compared to App Store reviews, which often results in more insightful feedback.
Win: Decreasing Search Ad Costs
I've been collaborating with an app marketing agency specializing in App Store optimization and search ads. They've effectively reduced Cost Per Install (CPI), which, combined with the increased LTV, brings me significantly closer to breaking even on paid user acquisition than ever before. However, progress still needs to be made, and finding more sustainable marketing channels to complement paid search ads remains a priority (more on this below).
Win: Shipping a New App Icon with 10% Conversion Lift
For more on this, see my most recent blog post.
Win: Inclusion in App Store's "Best Nutrition Tracking Apps" List
I was both surprised and elated to discover FoodNoms featured alongside such great company in the App Store's "Best Nutrition Tracking Apps" list.
Win: Doubling Monthly Recurring Revenue and Crossing $10K
All of the wins I mentioned above have made a resulted in a significant impact on revenue growth this year. MRR has doubled since the start of the year and recently crossed the $10K (after Apple's fees) mark. Really quite proud of that!
Win: 10 Million Foods Logged
Sure, it's a vanity metric (and one I probably should've leveraged for a marketing campaign), but it's also a satisfying milestone. That's a lot of food! Perhaps I'll do something bigger to celebrate 20 million.
Now, onto the struggles…
Struggle: Marketing and Positioning
In order for the app to continue growing, I know I'm going to have to find new ways to acquire users. I can't depend solely on PR launches, search ads, and word of mouth.
Earlier this year, I experimented with influencer marketing. The campaign didn't work out very well, but I came away with several valuable learnings.
First, I need to nail down my product positioning.
Product positioning for FoodNoms has been so hard for me. Like existential dread inducing hard. Why FoodNoms? What separates it from the competition?
I've given these questions weeks-worth of thought, and I do have better answers for them now compared to a year ago. That said, I'm still not satisfied. This space is so competitive, and it's hard to differentiate in ways that appeal to a variety of consumers. There's only so many users that read MacStories and 9to5Mac that also track their nutrition.
I'm making continuous progress on this front, but figuring out what resonates takes a long time.
Second learning: I need to invest more in building my own social media presence on Instagram and TikTok before branching out to influencer and user-generated content. I received feedback from multiple folks that the absence of activity on these social pages is a bit of a red flag.
Struggle: Support Emails
As the app has scaled, I find myself spending more and more time answering support emails, which limits how much time I can devote to marketing and product development. As you can imagine, or perhaps know firsthand, support emails can slowly wear you down.
I'm not at the point yet where I feel like it should be outsourced. I get a lot of value out of answering support emails myself, and I know users appreciate the fact that the developer is helping them out directly. Plus, I know most of the emails that reach me will require an answer from myself, anyways.
That said, I have made several changes in an effort to mitigate this:
- Redesigning the FAQ page into a proper help site with new content and a search bar.
- Removing the "Report a Problem" button in the app and linking to the new help site, which has a CTA to email me if someone needs to contact support.
- Adding an autoresponder to support emails explaining that I am an independent developer and to please be patient, as I will try to respond as soon as I can.
- As always, continuously improving the product to fix bugs and reduce confusion.
It's hard to tell how effective these changes have been, as I still receive a significant volume of support email. Alas, I make do.
Struggle: Figuring Out How to Scale Myself
In general, I have noticed that my time spent working on product development has decreased significantly since a year ago. This makes me nervous because I am a firm believer that product is king. If I'm not working on making the product better, no one will, which means growth will inevitably stall.
The app has started to earn enough revenue to support hiring additional help, but who do I hire?
This year, I've been experimenting primarily with hiring various marketing experts. At the start of the year, I worked with a PR expert to help with the FoodNoms 2 launch, but I was disappointed with their performance. I then went on to work with a social media manager, who assisted me with my first influencer campaign. As I mentioned earlier, this campaign didn't have the impact I was looking for, so I decided to terminate our partnership.
For the past few months, I've been working with a marketing agency for ASO and ASA efforts. Overall, this partnership has been more successful than my previous attempts at hiring marketing experts. They have made some solid optimizations and have helped me obtain several key learnings.
A month ago, I sought out a part-time backend developer. So far, this relationship has been working out very well. It helps that I am equally competent as them in their domain of expertise, so I can manage them effectively.
Recently, I feel the need to revisit the social media side of things. That's why I'm actively seeking someone who can help me create content and figure out a proper social media strategy.
With many of these relationships, I often feel like I could do a better job if I were handling things myself. I don’t say this out of hubris; it’s just the nature of delegating and trusting others with tasks I could do. But I have no other choice. If I don't figure out ways to delegate work to others, I know growth will be impaired, and managing all the stress and responsibilities will become increasingly challenging.
Struggle: Balancing an Increased Spend
I'm glad that I maintained low costs during the first few years, as expenses have started to pile up quickly this year. The services that power the database search engine and "Ask AI" are not cheap. On top of that, the backend investments and various marketing initiatives have been particularly expensive.
My cardinal rule: I'm ok with spending cash as long as it doesn't require a long-term commitment. If it doesn't violate that rule and it helps me learn (and hopefully grow) faster, I'm ok with spending the dough, even if it means cash flow goes negative for a while. That said, it's something I have to keep an eye on, or else I'm going to run out of cash rather quickly.
Struggle: ASO
Securing a high ranking for popular search keywords can be a huge win—if you can make it happen. But the nutrition tracking space is incredibly crowded, making this a tough challenge.
I'm not holding my breath on suddenly striking gold by ranking highly for popular search phrases, but I am continuing to make the effort. Right now, it seems that the most realistic goal is optimizing the conversion rate from impression to download, which should help to both increase the number of downloads and give the app's rankings a boost.
Struggle: Prioritization and Product Vision
I have a million ideas for where to take FoodNoms. But I need to be strategic – I need to focus on acquiring paying customers and keeping them happy with unique features. I don't want to find myself down the road regretting what I built.
This ties back to what I was talking about earlier with marketing. How do I carve out my niche in this crowded space, and align the product with that positioning? Once I nail that down, I need to embed that positioning into the product itself – in the onboarding process and throughout the user experience.
I think I'm learning to not overthink. What are my customers saying today? Here's what I hear users appreciate the most:
- The design. Namely the simplicity and ease of use.
- The focus on nutrition and lack of extraneous content.
- The tight integration with Apple platforms.
- The commitment to privacy and transparency.
- The generous free plan – notably, the barcode scanner isn't behind a paywall.
- The recipe features.
- Ask AI.
- Customizable goal features.
Recently, I've spent some time doing some forward-looking product designs that incorporate customer feedback and the latest from all of my thinking and research related to product positioning. I did a similar exercise with FoodNoms 2. I realized I need some idea of where I'm headed, in order to avoid building features that I will ultimately regret. Once I've locked in that vision, I know I'll feel much better and more motivated to start shipping new features out faster.
Struggle: The Emotional Rollercoaster
I'll tell you – working alone, without a partner, in this highly competitive space, is not easy. Talk about imposter syndrome.
I have good weeks and bad weeks. On good weeks, I feel on top of the world, super appreciative of what I have and proud of what I've accomplished. I feel like the future is bright, and I'm so excited to build and grow.
On bad weeks, I have an immense feeling of doubt. Am I wasting my time? Is FoodNoms doomed to fail? Should I go back and get a "real job"?
What keeps me going: growth, learning, and customer feedback.
I love shipping features that people actually use. I love experiments that yield significant improvements and lead to meaningful growth.
I love learning new things about the industry, my users, and app development. With FoodNoms, I am constantly outside my comfort zone. I love that I'm not just expanding my technical chops, but also becoming a better product owner and marketer.
But genuinely, the thing that motivates me the most is customer feedback. When people reach out to me and tell me how much they love the app, what it's done for them, and their ideas on how to make it better – this is what gives me the confidence that I'm doing something right, and I need to keep going.
It's been an exciting year so far, to be sure, but I have to stay focused. Lots of projects in flight and big challenges ahead!