2013/01/09

How to forecast viral growth of your mobile app

Ever since Hotmail, viral marketing has been the summum bonum ("highest good" so to speak) in the information economy and is still the most effective way to grow an online business. Since users do the marketing job as product invitors and invitees, customer acquisition costs virtually become zero.

A good job in explaining the key metrics behind viral distribution has been done by David Skok, a VC from Matrix Partners. He derived the following formula:



K = viral coefficient which is number of successful invitations per active user
t = time in days
ct = cycle time which is the time interval between an invitation and a successful invitation
Customers (0) = the first active users Customers (t) = number of cumulative active users at a certain point in time t


As David Skok extensively explains the findings for the viral growth formula, K does have to be bigger than 1 and the shorter ct the steeper the upward sloping curve.

Example: if you take a cycle time of 2 which means it takes two days from the discovery of a an app to sending out an invitation which then leads to a successful download by the invitee, and K = 2 (each invitor sucessfully invites 2 invitees), then the result will be 20470 cumulative users. Half the CT and you could end up with ~ 21 million users.





This sounds very much like the Hal Varian teachings which state that information industries with strong network externalities often can end up in a "winner-takes-it-all" scenario.
From a Hal Varian paper

Although there are examples like that in the Internet, like Facebook or Twitter, for apps especially gaming apps this might be rarely the case. As David Skok himself writes his model has two drawbacks: 1. user attrition which I would call "churn", 2. user saturation which I think becomes more of a important issue in this discussion. Why ? Because viral distribution usually follow an S-curve pattern like viral diseases do. In other words, infectors at a certain point in time start to meet more and more infectees as time goes by. I remember disproportionately more people telling me about Gangnam Style a few months after it hit Europe. Another discounting factor is app consumer taste. E.g. 30% probably never play gaming apps.

Though I prefer the above bottom-up approach because of its major two keen findings, it needs to be combined with a top-down approach that takes into consideration the overall addressable sizable market and viral saturation.

I found this cool article about s-shaped marked adoption curve by M.Brandwinder which I think can be combined with the viral growth formula. This page also offers the excel tool as download for those of you who are excel ninjas. Brandwinder makes use of the sigmoid function which has two values

  • long term market share: By this % you project how much you will be able to cover in the long run 
  • Midterm share: This is a point in time between peak and start on the way to the peak share
Further the sigmoid function gives T0 (the tipping point of the curve) which shifts the timeline and alpha stretches or compresses time.

For instance the green curve starts to saturate at 1.0 taking into account the saturation effect of viral infections. The website provides an xls tool to download as well which allows you to play around with input and output variables. Basically you need to define the following values

  • Maximum number of users 
  • two dates (time) by which X% is reached 
 In my previous blog post "App Retention follows App discovery" I mentioned a game called "Everybodys Game" for the Kakao-Gaming Platform. This game got around 5 Million downloads in ~2 weeks. So my goal was to reverse-engineer their growth by using the following parameters:


  • Max Number of Users is limited by the total number of smartphone users in Korea. In this case 30 Million 
  • Value 2: On the 26th day after launch the 75% of the maximum number of users should be reached 
  • Value 1: The growth dynamic should be reached on day 11 with 6% leading to 5 Million downloads (which actually happened)
  • Peak Value = 75% meaning it is expected that a quarter will never be reached 
The result is a sigmoid curve as follows: 
The alpha value is 1.03 (quite steep) and T0 (tipping point) is at day 22. Note that after the tipping point the curve flatens due to the redundancy effect of viral distribution.

So what I did was basically take the two models and tweak the numbers: 
  • So that I have reasonable but aggressive input variables in the Skok model 
  • Take the number of cumulative numbers that have been achieved on day 18-20 (ca.) which was 5 Million downloads 
  • Then use that value as a target goal for the Brandwinder model (taking into account saturation, attrition effects and natural limitations of the addressable market. Of course a 500 M growth is way too inflated as the excel shows:


 borrowed from forentrepreneurs

Conclusion and Recommendation
  • Virality often was never planned but just happened. However, two levers from the Skok model (cycle time, viral coefficient) can be used for beta testings (A/B) prior and after launch so that you optimize the overall virality on a continuous basis.
  • Take the Brandwinder algorithm with a target value and get a feeling for how much is actually possible by limiting the inflated values via the inputs addressable market, total peak value and growth trajectory through value 1 and 2.
  • This article does not cover actual tips. I will do this in a future post. 

Ok, this article is actually not really app specific :) but I hope you are taking some insights away