Finding Your Company’s Next Growth Opportunity
How to create and leverage a Simplified Quantitative Growth Model (including templates)
Hi there, it’s Adam. I started this newsletter to provide a no-bullshit, guided approach to solving some of the hardest problems for people and companies. That includes Growth, Product, company building and parenting while working. Subscribe and never miss an issue. If you’re a parent or parenting-curious I’ve got a podcast on fatherhood and startups - check out Startup Dad. Questions you’d like to see me answer? Ask them here.
Q: How do I know where my company’s next growth opportunity is?
This is probably the most common question I get asked by growth practitioners. People wonder about the underlying assumptions and calculations that go into developing a Growth Strategy. I’ve been building Growth Models since 2005—well before they were called that—and have a lot to say on this topic. After recently publishing a version of the Lyft Quantitative Growth Model I was contacted by a growth practitioner named Ruslan “Ross” Nazarenko who had found similarities in our approach to building these models at companies like Vimeo, Bird and Braid. We talked about collaborating on something together for the newsletter which led to him writing this post. Excited to share it with you today as my second-ever guest post (Lauryn was the first).
Ruslan is a former growth lead at companies like Vimeo and Bird and an angel investor in Substack (!), Respeecher and Miros. He is part of Sequoia’s 1% talent pool. He has a lot of experience building scalable growth engines with a primary focus on activation, engagement, referral, and internal martech tools.
In today’s post he’ll cover:
The concept of Growth Models and why we use them
How to build a Growth Model, step by step using a template from his time at Braid
How to simplify some advanced concepts like forecasting and seasonality
In 2017, I stumbled across an article from Chris More (updated link here). He shared this massive spreadsheet that had the answer to the question of life, the universe, and everything in it. He was describing a Growth Model. That was a turning point in my career. Life as a Growth professional has never been the same.
What is a Growth Model
In short, it’s a spreadsheet. It’s similar to a P&L model (profit and loss) used in the Finance world with one exception: it’s made for Growth folks. It’s supposed to take into account the inputs from your acquisition loops first, then squeeze it through your product funnel, and help you answer these questions:
How many users and revenue will we have in X months?
Where should we focus to achieve the biggest wins?
What OKRs make sense for the Growth team to sign up for?
I was excited to leverage Chris’ work to get these answers!
Then a reality check occurred.
I found his model to be an excellent and precise tool that can be used within the Growth team, but I also found something else…
It’s impossibly hard to sell it to anyone outside of the Growth team!
All of the charts, numbers, coefficients, and formulas lead to a very complex system. So complex that I failed in getting everyone on the same page to implement that model. I was forced to come up with a simpler version. One that works as an alignment tool and can be easily used with your peers from other teams.
Here were my new requirements:
It needs to be less complex
It should be easily explained in fewer than 5 minutes
I’m fine with 80% accuracy
It needs to be easy to navigate so people can play around with it
I call this the “Simple Growth Model.” While at Vimeo I used this new, simple growth model to navigate through the challenges of product-led growth (PLG). We launched PLG shortly before I joined the company but when I arrived it wasn’t achieving the expected results and soon our growth became stagnant.
I built our simple growth model to assess where the problems and opportunities existed. My former manager, Markiyan Matsekh, bombarded me with a gazillion questions when I showed him the model. But only five minutes in, he bought the concept. Woop woop!
Here’s what Markiyan had to say:
This is an amazing way to communicate the value of what we do to leadership, translate our OKRs and initiatives into impact two years from now, have the flexibility to compare different strategies by the numbers, and quickly adapt long-term appetite based on each month's performance.
And that PLG motion from Vimeo? We quadrupled the user base in 6 months by leveraging our growth model to focus on the right places.
How to Build a Growth Model (Braid Example)
To show you how the simple growth model works I’m going to share one from my work at Braid. I’ll be deconstructing this template. Braid is a multiplayer fintech app. It allows you to have multiple shared bank accounts for different groups of people, like couples, friends, and family members.
Braid didn’t survive the recent fundraising crunch (unrelated to our growth trajectory) and is currently being retooled. I’m so thankful for being able to work alongside Amanda and the team to grow as fast as we did.
[Editor note: Adam, you’re highlighting the Growth model from a company that didn’t make it? Yes, it’s still an excellent example of how to build a Growth model and a valuable lesson on what to do with it. Your company probably won’t have the same financial infrastructure challenges as Braid].
Tab 1: Inputs
The best way to organize your growth model is to have all the input numbers (variables) listed on the first tab. This keeps it clean and organized—all the calculations then happen on the next tabs and we reserve the first tab only for variables that need to be entered manually.
The benefit is that we have an easy playground to adjust different metrics in one place and then see the impact, instead of going through the entire doc and updating all the numbers here and there. Remember one of our requirements: it needs to be easy to navigate so people can play around with it.
Here is what the input tab looks like:
I start by listing current numbers as they are, with no adjustments. These are divided into four key input sections:
Funnel (conversion rate variables)
Product (engagement within the product)
Financials (the monetization variables)
Growth Channels (performance of our primary loops)
To start, I add all the important conversion rates (CR) as a user would encounter them through the product.
The major drop-off point for any fintech product is the Know Your Customer (KYC) step. This step is where we are obligated to ask users for their legal first and last names, date of birth, and social security number. If we want users to move money without the system they cannot skip this step. It’s a legal requirement.
Once KYC is completed, the user needs to hook up their bank account, which 36% of people do successfully. And then it’s time for them to activate on the platform. Without going into much detail, our AHA moment was the first transaction. This is when users realized that it’s really simple to use Braid and they found initial value. Of the users with linked bank accounts, 58.2% of those made it past this step. Of those people 75% then returned to do it more than once.
Tip #1: An important call out here is how to think about the retention rate since it’s not linear. The perfect approach is to bring a full cohort into the model to account for the change in the retention rate over many months, but I found doing this adds more complexity than we need. Remember our first three requirements around simplicity, understanding in 5 minutes or less, and being fine with 80% accuracy.
I use the retention rate when it flattens. In the case above, 75% of people will be retained users on their 1st, 2nd, 3rd month and longer. This is not entirely accurate, but for our purposes, it’s just fine.
An alternate approach is from the churn side. Churn is usually higher for the first period then remains relatively constant. Therefore, when picking a churn variable I like to use “churn rate after 1st month” and the “1st month+ churn rate” to calculate how many customers you’ll be losing.
Within the product variables we’re including a breakdown of engagement by user type. We have casual, core and power users—60%, 27%, and 13% respectively—and every segment has its average number of transactions and transaction value.
Do you need to break it down like this by engagement tiers? No, but if you’re planning to address the percentage of users in each tier then I would do it. If not, using an average for the number of transactions and transaction value is good enough.
Tip #2: To maintain simplicity, collapse as many lines together for those areas you aren’t planning to work on anytime soon.
Financial (Monetization) Inputs
Braid only makes money on interchange fees incurred during card transactions. 28% of all transactions in a given month are made through the card and 0.75% of the amount goes to us.
I put all the sources of how people get into our product here. For most fintech apps there is almost a default set of channels—paid ads and referral programs are among the most promising ones. With Braid I focused on Meta and App Store Search Ads as our primary paid channels. I include both their estimated cost per install (CPI) and monthly budget: $5.80 and $4.59; and $35k and $48k respectfully.
Our referral program is the second most important channel outside of paid. If you want to see how I think about referral programs, take a look at this article.
Not every new user is eligible to take part in the program due to fraud prevention purposes. We therefore limit their exposure to the program until we know they’re not fraudsters. About 70% of the total population end up eligible for the referral program. Out of those eligible, 86% of users send invites and they send 3.2 invites on average (this is the “branching factor”).
Typically referral converts better because it’s a warm introduction to the product. Braid was no exception; 22% vs 3% for other channels! Since our referral program is a double-sided, incentivized loop we have a cost for a successful invite. We spend ~$50 per invite.
It’s important to pay attention to non-attributed users. Our non-attributed user traffic is 60%, which is a lot… thank you iOS 14.5. This will be a challenge for you too; I have yet to see a company that can attribute 100% of their traffic with confidence. This ends up being another metric for the growth team to optimize and bring down as much as possible over time.
Lastly, legacy users are just those users we had prior to building the model.
To make sure that the entire team is on the same page, link the data source to each section. That way we can ensure that we’re measuring the right thing in the right way.
What inputs do you need to include and what can be skipped?
Because Braid was still a young company I tried to avoid unnecessary complexity. But let’s pretend, for a minute, that Braid is a later-stage company.
We’ve done a lot of the basic optimizations so we have to dig deeper with our model. In this case, you can break down some of these input steps even further.
For example, it’d be useful to identify the actions or features that correlate with our activation rate. We know that a user needs to make a transaction. But what happens if someone links their bank account and doesn’t make a transaction? Did they attempt to? If they did, what happened?
To answer those questions we can refer to transaction error codes and slice them to only show the first transactions. From that we can derive a new metric—the percentage of successful first transactions—and now our funnel would look like this:
KYCCompleted -> Transaction attempted -> First transaction successful -> User activated.
Tip #3: Build the first model at a high level first and keep it that way until you see that more and more experiments for a given stage start failing. Then dig deeper.
If you’re starting to see that most of your experiments are failing you can decide to slice the funnel more granularly and work with each individual step separately. But be careful: the model’s complexity will increase significantly.
In our example above, we would now have to account for both users who completed their first transaction successfully and a small portion of those who failed, re-attempted and then were successful.
Tab 2: The Growth (Plan)
In the next section we focus on the total number of users we are going to see and how they will convert.
This is a straightforward calculation:
Take the budget per channel and divide it by the CPI; this gives you the number of new installs.
Next, we apply the conversion rates from each step in the experience – as users go through our product fewer of them will complete KYC, connect their bank accounts, and get past the first transaction. A fraction of those will become retained users.
Tab 3: Transactions
Now it’s time for the money part! Since we figured out how many active users we have on the last step we can now translate them into revenue.
To turn people into money we break down the total number of compound money movers into the casual/core/power buckets. We know from the inputs tab that these segments are different in the number of transactions they make and the average transaction value. We account for those differences on this tab, leveraging our initial inputs.
We would have 923 new, 22,800 casual, 10,260 core, and 4940 power users. In total they will transact for $140.5M this month. From that, $39.3M will be transacted through a card and we will earn $295k (remember, we monetize based on interchange fees; identified on the inputs tab).
Tab 4: Projections
Projections are where the real fun begins!
Take all the numbers and conversions and extend them into the future for 24 months as a baseline. For anyone who has worked in Growth for longer than a week we know it’s never that easy. Metrics are changing constantly so we need to account for that.
You can then take 2-3 months of historical data, put the real numbers in there, take an average, and extend it into the future. Since you’re reading this article in 2024 (and the data is from 2023) I changed all the numbers at the end of the month from the projected ones to the real ones. You might notice a fluctuation here and that’s normal.
Tip #4: Accounting for Seasonality. For the e-commerce or DTC products out there you’ll want to increase the numbers for holiday seasons. For B2B, you know that nothing grows in December, so act accordingly.
At Vimeo we had the benefit of seasonal curves produced by our Finance team from historical data. It helped us understand the changes we could expect due to the natural seasonality of the business. At Braid we were a younger company so we had to do our own estimations and guesses.
The easiest and most important number to adjust is the CPI. Bigger budgets and scaling campaigns leads to a higher CPI from a drop in conversion rates. This is simply because after initial optimizations you learn how to acquire high-quality users. Those earlier users are finite which makes them more expensive to acquire over time.
Okay, so we’ve built our initial, simple growth model but now what do we do with it? Before we get into that I want to share three of the hard lessons I’ve learned along the way:
The relationship between your metrics isn’t linear. Let’s use activation as an example. If we increase the activation rate by 5% we can’t also expect revenue to go up by an equivalent 5%.
When we’re improving activation, we’re removing friction. Friction is the reason why low-intent users go dormant and only those who truly need your solution will make it to the end. This results in higher retention and a higher number of transactions from highly engaged (maybe desperate) users.
When we just start optimizing the activation rate, every improvement yields a compounding uplift to revenue. More people are active, more of them send invites, and so on. However, over time, optimizing activation pushes the problem of low-intent users down the funnel. It doesn’t solve their intent. So one metric can go up while another can go down.
You can avoid the scenario where the Growth team is working hard on improving metrics and they go up while revenue stays flat by tracking the correlation between two metrics and making some forecasted projections within your Growth model.
The 1% Exercise
Statistically speaking, a 1% improvement in the lowest number will yield the biggest uplift. Practically speaking, however, increasing the lowest conversion rate might be the hardest and most time-consuming thing to do. As the Growth team, we have to find a balance between trying to improve the lowest and most difficult metric while also delivering quick wins. Sometimes those quicker wins are better because they have a compounding effect that we are able to realize earlier.
You Can’t Improve Everything At Once
It’s tempting to be very optimistic and expect that you can improve quite a few metrics within a short time period. This might be true for very mature growth teams who can operate across many parts of the growth model at once, but for most companies it doesn’t work that way. Usually, you’ll be able to increase one or maybe two metrics per month at best.
Okay, so what can you do?
How to Leverage And Adjust Your New Growth Model
Once you have your baseline model you can then accomplish three primary goals:
Planning. Projecting the model into the future gives us an assessment of how the company will do relative to its goals. We can layer our initiatives on top to understand their impact on our key metrics.
Team alignment around initiatives. I use the model to explain the direction my team wants to move and what we’re prioritizing. It provides enough business detail to weigh all the options and adjust based on each month’s performance.
Auditing. Comparing what we thought would happen with what happened is a very useful self-reflection exercise. It makes our projections much more accurate in the future.
To identify initiatives start with the 1% exercise—using your model, try to improve every number by 1% (relatively) and see what yields the biggest improvement over time. Based on this, and degree of difficulty, choose your focus area and map out what you want to pursue in a forward-looking roadmap.
Within the Growth model, people might wonder why you expect certain numbers to increase or decrease. I like to list all the initiatives per month in a separate row on the Inputs tab for clarity.
Tabs 5 and 6: Metrics and Fact vs. Plan
At this point, we’ve done a lot. We took the inputs and extended them for 24 months. We’ve adjusted for seasonality and expected changes in the scale of our acquisition. We’ve also done a 1% exercise to find the best opportunities, planned our initiatives, and roadmapped it.
Here is where we build the “metrics” tab to track high-level health metrics for the product—things like your month-over-month growth rate, for example. This tab helps me avoid being overly optimistic. If you see 50% month-over-month growth or an LTV-to-CAC ratio that is greater than 10 you’ve got a clear sign that something is miscalculated somewhere.
At the end of each month I revisit the inputs tab and input the real numbers we were able to achieve and where we missed our target. This goes into the Fact vs. Plan tab. It’s important to forecast the future but also compare that forecast to reality.
In this section, I include high-level numbers and metrics. These are the metrics I’ll present to the C-level so naturally it needs to be the numbers they care about and a less granular level of detail than the Growth team might focus on.
I do snapshots of my forecast first, at the beginning of a year, and then each quarter after inputs are adjusted. I then compare side by side what we thought was possible and what actually happened.
If the goal is achieved or if there was a significant discrepancy I create a reflection doc which I ask my team to help fill in. This includes what worked, what didn’t, and why. This seems so simple, but I find that most companies don’t do this. It helps everyone learn from each other and improve going forward.
Because those monthly documents are linked to the table every new person joining the team can reference and understand our historical thinking and results. The growth model becomes a great onboarding artifact for the team.
Start by copying this template.
To build the template:
Define your growth loops and the inputs that power them.
Add the numbers from the past 3 months; drag out the averages for 24 months assuming nothing will change.
Once you’ve got your simple model:
Run a 1% increase exercise to help determine your focus areas.
Plan initiatives and their impact; as you roadmap them make adjustments to the numbers in your model.
Leverage the “Metrics” tab to adjust your model if something looks very off.
Leverage the model to improve:
Report on numbers each month and how the forecast will change based on the recent month’s performance.
Write a self-reflection document, identifying what worked and what did not.
If you do these steps successfully you can find the broken parts of your growth loops and set goals around fixing them. Using the Simple Growth Model as your primary communication tool makes it easier to plan your goals and align stakeholders around what your team is working on and why.
For a few extra resources on this topic you can take a look at: