Virality in mobile gaming, Part 3: Building a virality model

So after recognizing the importance of virality and concluding that viral mechanics can be engineered, the last step in building a massive user base is understanding how virality contributes to growth. There are a few virality models available on the internet, but I built my own (download) because I wasn't satisfied with the approach that a lot of them take, which is to simply divide the number of virality installs by the number of viral invites to estimate viral adoption.

Unquestionably the conversion rate of installs is a component of viral transmission, but estimating the total number of viral installs -- which, in my opinion, is more relevant than simply understanding an application's k-factor, especially when budgeting for marketing campaigns -- doesn't account for anything but first-degree installs. I also found some models that tried to curve-fit logistic population growth or power law models onto k-factor measurements, which, while again conceptually reasonable, doesn't do a good enough job of estimating viral installs.

As a result, I built a viral model that I think competently estimates total viral installs. It uses the virality factor (invite hooks x invite conversion) to estimate the number of first-degree installs, then subsequently iterates that process over viral installations (i.e. the viral installers invite more friends virally, who invite more friends virally...).

To do this, I take three inputs: the number of viral invites generated by the average user, the average conversion rate, and the virality timeline -- the amount of time over which viral invites are sent. I distribute viral invites linearly over the virality timeline. I have seen some models which map viral invites over a normal distribution and some which map them over a power law model. Neither of those approaches is wrong, but given how dependent viral invite sends are to game design (i.e. when and how the designer intended viral invites to be sent), I don't see the point in trying to force a specific probability distribution on the invite timeline.

While I'm usually wary of any model that could potentially overestimate adoption -- and this model places no upper bound on network penetration -- I do feel it's important to have an accurate idea of how virality affects user base growth (and thus reduces actual CPAs). Without knowing this, a marketer risks underinvesting in acquisition, which is as detrimental as over-investing.

Any projection model is fiction, predicated on myriad biases and (usually) reckless performance optimism. But models are good at illustrating the relationship between the components of a system -- and, in this case, it's helpful to understand how virality affects the size of a user base given a fixed acquisition budget and a measurable conversion rate for viral invitations. When I plug the output of this model into my broader user acquisition model, I get a better sense of what impact a change in my budget will make on the size of the user base.