How to Model Viral Growth: The Hybrid Model

This post is the first in a series in which I show you how to model viral growth. We start with the simplest possible model, and we will work our way up to a model that simultaneously accounts for non-viral channels, how you retain users over time, and even how a user's virality changes over time. A model like this can arm you with realistic expectations, and can give you a predictive tool that you can keep up to date with real data.

What is a Viral Product?

Products acquire users via a variety of channels, such as press, advertising, and partnerships. Perhaps the most intriguing channel is the users themselves.

A viral product derives much of its growth from its current users recruiting new users. A user could recruit another through a simple invitation ("Check out this product, it's cool/useful/entertaining!"), or directly through using the product ("I want to send you money on PayPal!").

One of the most famous examples of virality is YouTube. Before the site became the huge destination it is today, you would most likely find a YouTube video embedded on news site or personal blog. You'd watch it, and at the end, you'd be invited to email the video to people you know, and you'd also be given code to embed the video on your own site. If you didn't fancy sharing right then, YouTube would suggest other videos you might like, and maybe you'd share one of those. Then the people you've shared with would watch the video, and perhaps they'd share it with the folks they know. And so round and round this "viral loop" went, during which YouTube acquired users at an unprecedented rate.

How do we predict how our viral product will perform? How long will it take to acquire 1M users? Will we get to 10M users? What about 100M users?

To answer questions like these, we need to build a model of virality.

Follow along and experiment for yourself with this Excel spreadsheet: "How to Model Viral Growth.xlsx"

The Simplest Possible Model

Let's say we start with 5,000 users. How many new users will these initial users recruit?

Well, some users will like our product, whereas others will dislike it. Some users will invite many people, whereas others will not invite anybody at all. Some users may invite people after a day, whereas others may take a week.

Let's sweep all these uncertainties away, and say that, on average, 1 in 5 of our users will successfully recruit a new user in their first month. In other words, our viral factor is 1/5 = 0.2, and our initial 5,000 users will recruit another 5,000 * 0.2 = 1,000 users in month 1. These 1,000 users will then recruit another 1,000 * 0.2 = 200 users in month 2, who will then recruit another 200 * 0.2 = 40 users in month 3, and so on.

What does our user growth look like? (Follow along on the sheet labelled "1. Simple".)

We acquire users at a decreasing rate until we have 6,250 users.

What happens if our viral factor is instead 0.4?

Again, we acquire users at a decreasing rate. But this time, our growth tails off at around 8,300 users.

Now what happens if our viral factor is instead 1.2?

This time, we acquire users at an ever increasing rate!

In fact, with some easy maths, we can show the following:

  • With x initial users, and with viral factor v less than 1, we acquire users at a decreasing rate until we have x/(1-v) users
  • With viral factor greater than 1, we acquire users at an apparently ever increasing rate

So it's simple! All we have to do is get our viral factor over 1, and we're set, right?

Well, not so fast…

Firstly, there is plenty wrong with our model. For example, as we acquire evermore users, we will eventually run out of new people to invite! I don't explore this idea further here, but to learn more about effect, see Facebook viral marketing: When and why do apps “jump the shark?” by Andrew Chen.

Secondly, true viral growth is incredibly rare. It took me a while to appreciate this: very few products have sustained a viral factor over 1 for any meaningful period of time. But if we shouldn't bet on a viral factor greater than 1, what should we use in our model?

From discussions with other entrepreneurs, investors, and growth hackers, I've learnt the following: for a consumer internet product, a sustainable viral factor of 0.15 to 0.25 is good, 0.4 is great, and around 0.7 is outstanding.

However, we've already shown that with when our viral factor is less than 1, we acquire users at a decreasing rate until we grow no more. That isn't an outcome that anybody wants, so what's missing from this picture?

We are missing all of the other channels with which we can acquire users: press, app stores, direct traffic, inbound marketing, paid advertising, integration partnerships, cross-promotion partnerships, search engine marketing, search engine optimization, celebrity endorsement, street-corner hustling, and anything else we can think of. Let's revisit our model and take these into account.

The Hybrid Model

We're going to rebuild our model to include non-viral channels. (Follow along on the sheet labelled "2. Hybrid".)

Some non-viral channels — such as press — will give us a quick spike of users, whereas others — such as app stores — will give us a stream of users over time. We'll make sure our model includes both kinds, and to keep things simple, we'll consider just 3 non-viral channels:

  • Launch press. A good launch might attract 70,000 new users.
  • App store search traffic. An app store might provide 40,000 downloads per month. Not all of these users will actually run our app, and of those who do, not all will make it through our sign-up process and have a great first user experience. Let's assume that 60% do have a great first experience.
  • Direct traffic. Since our users and potential users tend to talk, people will find our product directly. This might attract 10,000 downloads per month. Again, let's assume that 60% of downloaders have a great experience.

Finally, let's assume that both app store search traffic and direct traffic stay constant over time.

Let's set our viral factor to 0, and see how we do if our product isn't viral at all.

At the end of the year, we've got around 450,000 users. Now let's test the viral cases.

In the good case, with viral factor 0.2, at year end we've got around 550,000 users. In the great case, with viral factor 0.4, at year end we've got around 700,000 users. And in the outstanding case, with viral factor 0.7, at year end we've got around 1.2M users.

The Amplification Factor

This simulation illustrates how I often think of virality; not as the viral factor v, but as the amplification factor a = 1/(1-v). To calculate our total number of users, all we have to do is multiply the number of users acquired through non-viral channels by our amplification factor.

This graph shows the amazing potential of the viral factor, even when it is less than one: as we increase our viral factor, we increase our amplification factor hyperbolically. (Pro tip: to troll other entrepreneurs, claim that you have managed to achieve hyperbolic growth.)

With a great viral factor we can amplify, several times over, the effort we spend acquiring users through non-viral channels. But remember: you can't amplify something that isn't there! This is why we should split our growth efforts across both non-viral and viral channels. If we focus on just one, we leave users on the table.

Our Users Are Immortal

Adding non-viral channels helps, but our model still has major issues. For example, we assume that when we acquire a user, they stay with us forevermore.

This is clearly over-optimistic: we stop using products all the time. We can forget about a product. We can stop liking a product. We may have never liked a product to begin with. In my next post, we will rebuild our model to include the fact that we lose users.

You can read the next post here.

Summary

  • True viral growth is very rare; for a consumer internet product, a sustainable viral factor of 0.15 to 0.25 is good, 0.4 is great, and around 0.7 is outstanding
  • When the viral factor is less than one, it can interpreted as the amplification factor a = 1/(1-v). To calculate the total number of users, multiply the number of users acquired through non-viral channels by the amplification factor
  • When the viral factor is less than one, it is crucial to have strong sustainable non-viral channels
  • Small increases in the viral factor can cause large increases in the amplification factor

If you like this post, then follow me on LinkedIn! In addition to this series on virality, I'll share interesting links about the web, technology, and entrepreneurship :)

Thank you to Andrew Chen, George Zachary, Elliot Shmukler, and Reid Hoffman for reading drafts and debating these ideas.

Til' next time!

Akhil Saraf

Paid Social Manager at Arsenal F.C

3y

The Excel file isn't available anymore. Can someone share it again?

Krishan Patel

VP of Product @ Apollo - We're hiring!

5y

Hey Rahul! Excellent article! Do you still happen to have this excel file somewhere so that I can follow along?

Alexander Jarvis

Get a pitch deck done that gets you VC meetings. High end consulting.

6y

Hey Rahul - I have made (probably) the largest viral growth model ever. Would love your feedback. And no, it's not a cute little model ;) https://www.alexanderjarvis.com/2017/11/03/model-viral-growth-startup/

Like
Reply
Steve M.

Entrepreneurship Educator  Teen Startup Canvas™ Coach @ Allstarpreneurs  Virtual Classes & In-Person Workshops  Digital Marketing, Lead Gen & Sales Funnel Expert  Custom ChatGPT Builder

7y

An excellent explanation of a complicated topic. Bookmarked for future reference once we get our viral factor rocking the +0.5's :)

Like
Reply
Mark Abrams

Developer / Analyst At Krasdale Foods

8y

Hi Rahul ... I want to thank you for your presentation, but I find your simple model a bit confusing. You are assuming in your model that the .2 viral growth will only accumulate from the newly added users rather than from all existing users including the new ones? I don't see why that would be. If existing users like the site and have been on for a month, and then two months, and then three months, at any point they might decide to let a friend know about the site. In which case, wouldn't it be more accurate to say that for each month any of the existing users might inspire a new user to join the site? If this is the case then the growth rate would not be decreasing but increasing, and exponentially. My question is - why do do we assume in the model that the growth will only come from the new users (so 1000 in the first month based on 20% of the existing 5000, but then only 200 in the second month based on the 1000 new users rather than the 6000 of total users)? I find it confusing and hope you can clear this up for me. Thanks.

To view or add a comment, sign in

Insights from the community

Others also viewed

Explore topics