" Modeling viral growth
Why spend money on ads when we can just go viral? Thousands of failed startups assumed their product was so good users would tell their friends about it. Virality doesn't work that way: it has to be engineered by understanding, modeling and optimizing all the inputs.
BANK OF YU OFFICE – Just before launch
You were lucky enough to join as the second marketer of a potentially game-changing fintech app just before launch. Everyone agrees that the lend-to-a-friend technology the product team have built will be a game changer, and as such the marketing plan is to 'go viral'. But nobody has defined yet what that actually means in terms of numbers...
We're going to do an initial beta test and launch to 20,000 users at a university campus\nThat'll buy us time to fix any bugs and iterate on what's working\nWe'll have 1,000 initial test users who are on our email list, and from there we expect to spread virally through the school\nCan you make a few assumptions and build a viral growth model I can present to the board?\nOnce we know what to expect, we can track our progress against your model
It's easy to find the concept of viral growth appealing: who doesn't want to grow their product via word of mouth and save on advertising costs? In reality true virality is rare: often what we call 'viral' is really the result of a large influencer sharing to their audience. True virality is when each person that uses the product tells more than one person about it, recruiting new users via word of mouth or social media. \nIf you achieve viral growth your product will grow exponentially – like a biological virus – as 1 user gets 3, and 3 get 9, 9 get 27, then 81, 243... fast forward 10 cycles and that 1 initial user has 'infected' over 20,000. Keep growing at this rate for 12 more cycles and you've reached 10 billion users, more than the population of Earth. Of course in reality exponential 'hockey-stick' growth doesn't continue forever, it's just the first part of an S-Curve. Growth flattens out as the audience becomes saturated, and most people who get invited have already joined.\nTo calculate virality a handful of metrics are important. The number of invites each user sends out is key: this doesn't have to be actual invite messages, they could be simply telling their friends about a new app, or using it in a prominently visible way. Next is the conversion rate from users being exposed to the product and actually signing up as a new user. Finally the carrying capacity is what gives us our S-Curve, as we can use it to adjust the conversion rate downwards as the audience becomes saturated.
I am going to show you how to model viral growth. So this is what we're going to end up with. I'm just going to create a new tab, a which will be here, and we need to put a few different assumptions into the model first. So the assumption. The kind of inputs that you hard-code into the model the convention is you want to do these in blue.\nSo that it's pretty clear, like what the assumptions are. And then you want to reference them all in one place. So that whenever someone wants to change the model or kind of update some of the assumptions or they can do that here rather than you know, doing it elsewhere and then like, you know, potentially changing it at one place and then somewhere other places referencing it.\nSo Put these different assumptions in here. So I'm just going to copy and paste them across. So I'm sorry, let me paste them across. Cut that. Okay, cool. So these, this is where the the numbers are going to go. All right. So what assumptions do we have? We have carrying capacity that is.\nSize of the audience. This is really important because we have to be realistic about this. If we assume that our audience is infinite than vitality is exponential. So if I tell three people about the app and then they tell three people. Yeah, it's going to triple that each time. So eventually you would have more people than the population of the entire earth.\nYou know, it's like a viral infection, right? Like COVID and obviously there's a spread that way that eventually reach herd immunity as the people who. I've heard about the app or could have been invited to the app, have already been told about it or in the case of COVID people who've already been infected way less likely to get infected again, or if they've been vaccinated.\nSo that's what we're gonna handle with carrying capacity. Are we going to say that we have 20,000 uses? And researches that number is that's just how many people were in Harvard when Facebook watched. Right? So that, that went viral in Harvard, as I'm just using that as a placeholder average invitation.\nSo this is how many people get invited to the app, each period by by the the, the number of uses as they're using the app. 'cause I'm like Facebook was the retell seven friends in 10 days as someone just going to use that as an example. And then a conversion rate is off the people who get told how many of them actually convert and start to use the app.\nSo what I'm assuming here is if you tell seven people about Facebook maybe only 10% are going to. So it might've been much higher invitations actually, but we can play around with these numbers once the model is built and then the initial user base, I'm just going to say in this case you have a thousand users and this is the seed audience.\nThese are the people that are spreading the word, the initial people you invited to your app. Okay. So now we have the assumptions, it's time to build the model. So we're just going to model out. Can I copy across this, I'm going to have different time periods. The convention is a do it you know, length ways like this are horizontally.\nBut you can do it basically if you want, if you prefer. I'm interested in to copy these labels. And so we need the saturation and we need the conversion rate, which will adjust based on the saturation. And I'll explain that in a second. And then we'll calculate how many new conversions we get for each user using the app.\nAnd then we have the new users that, that generates each cycle then adds to the cumulative users and then we calculate the monthly growth. Cool. So for saturation we want to make the saturation at first it's going to be 0% because in the first period it's not saturated. You know, w we don't have uses.\nAnd then the second period, it's going to be the cumulative users divided by the. Carrying capacity and we're going to make this an absolute reference and that's F so. I right now, it's just going to say zero out, but we'll deal with that in a second. So that, that would be the saturation will drag that formula across and it'll populate in the second the conversion rate.\nThat's going to adjust based on the saturation. So the simple formula here is it's going to be one minus the saturation. And then it's going to multiply that by the conversion rate. So at first is 10%, but then as we drag it along, oh, sorry, I need to make this an absolute reference as say, this C6 I'm this effort, or you can just put the dollar signs in there.\nSo when we drag it across, it's going to say. Still carry with us. So it's right now, it's just 10% initially, but, but it we'll see when we update the bottom this is going to fill in conversions per user is the average invitations, which is going to be an absolute reference multiplied by the conversion rate.\nSo that's how many conversions would get per user per period. And then the new uses is going to be. How many uses we initially have the initial user base multiplied by the conversions per user. So we're going to get 700 new users in this period. And then this case, we're not going to drag it across from him.\nFor the next set are we're going to take the cumulative users. So how many people were using it last period? I know in a most pipe that by the conversion user, I would say if someone was using it, you know, if around had a hundred people using it, the last period, I then 0.7 multiplied by a hundred to be like 17 new people.\nBut this is going to populate in the second year. Now, now we have the final thing here. Cumulative uses as a cumulative uses can be the initial user base. So that's one plus uses that we brought then for this one, it's going to be the cumulative uses plus the new users here. And then we're just going to drag that across.\nAnd so that is how many cumulative users we've got total. And now it just do some formatting. So I'm gonna select this and then say number and then kind of select these and make these numbers as well. And then just decrease the number of decimal places. And then, and then we can see that our cumulative users rises.\nSo. Okay now monthly growth that is simply you know, how many newses we got divided by what the initial user base I'd say this is 70% initially. And then over here, it's going to be the new users divided by this here. So you can see actually, if. Bring this across. Then over time initially it kind of matches the conversions per user.\nBut over time that becomes less important. And it's about how many users we have as. Eventually the growth does slow, which is what you'd expect. Okay. So now let's create a chart so we can visualize a list. And one thing to note before Curtis chart is you can see the saturation rate went from 0%, 9%, 14%, 22.\nEventually it got 98% saturated by the end. And therefore the conversion rate has dropped. And the reason why we're doing. Is to make it more realistic. So that as the audience gets more saturated, the conversion rate drops. If nobody's heard of the app and I tell seven people, I then maybe 10% of them will sign up.\nBut if if everyone has heard of the app in the audience in the carrying capacity then maybe 0% would sign up. Okay. Let's make a chart. So we're going to slough that row and then we're going to go insert. There we go. Okay. Cumulative users over time. As you can see that with this saturation rate, we're getting to 20,000 users and then it's done.\nAnd what's interesting is even if we increase the conversion rate, we never get past 20,000 users because that's the carrying capacity. That's the full amount of audience. If you think about viral infections this is why we quarantine essentially trying to bring down the carrying capacity because if there are less people that you can spread the virus to because you know, you close the borders of your country then you know, then, then.\nYou're going to hit a wall and infections will drop off. So it's the same sort of thing here. The, the audience that we that we have the audience is relevant for the product is the limiting factor to how many people can spread virally to you can see, even if we change the average number of the patients, that's going to make a difference.\nBut then if we increase the carrying capacity to 200,000 because we. You know, a much bigger audience, I, then we can see over time. We get some really good viral hockey stick growth, and then it drops off here as well. So we just change these assumptions back. And if we have the original assumptions of average invitations of seven and conversion, we have 10%, or you can see that, you know, our charts just going to look hockey stick because we haven't gotten to a saturation yet we're only 43% saturated by.\nIf we want the the horizontal access the way we do it is we select the data rain. Just going to select this row here. And then we have the periods on him. So when we look at our initial model or we can see that by period, a growth is significantly slower. Parents six is like when the change over happens, right when we get to 50% saturation.\nOkay. Hopefully this was useful and enjoy modeling viral growth.
How quickly do we get to 10,000 cumulative users, with an initial userbase of 1,000, 7 avg. invitations per user, a 10% conversion rate and carrying capacity of 20,000?
How many users would we have after 10 cycles if we kept all assumptions the same except increased carrying capacity to 100,000?
What happens if you don't factor in 'carrying capacity' to your viral growth model?"