Virality, As It Applies to Us

Feb. 26, 2015


Vinay Mahagaokar shared his thoughts about achieving virality in lecture. With the exponential growth of his web app SchoolFeed in mind, Vinay shared his numerical approach to predict and influence virality.


  • Write your app's viral equation
    • Define variables. For SchoolFeed, Vinay defined variables for invites sent per user i, click through rate on invites ctr, conversion rate from click to install c, installs from email list e, and number of installs at some time It
    • Develop an equation. For SchoolFeed, Vinay defined an equation of the form It = It-1 (i * ctr * c) + et
    • Do some math. Letting K = i * ctr * c, Vinay determined that at a time t, the number of installs It is given by the sum from n = 0 to t of en * Kt-n. By making some simplifying assumptions, such that en remains constant, i.e. installs from emails are the same every day, this equation simplifies to the sum from n = 0 to t of c * Kt-n for some constant c.
  • Iterate to achieve growth
    • SchoolFeed achieved exponential growth until day 120, at which point they realized an empty string bug caused their FB post to display as "David wants to invite you to the Yearbook" rather than "David wants to invite you to the Saratoga High Yearbook." As a result, users identified the post as spam, which reduced ctr from 24% to 14%.
    • Precipitous decrease in ctr exemplifies the effect of a "small" bug.
  • Monitor key metrics
    • Daily active users DAU and monthly active users MAU comprise the DAU / MAU ratio, which is valuable only when growth is small relative to MAU.
    • Lifetime Value LTVuser equals the sum of the revenue generated by user and the revenue generated by people this user invited.
    • Cost per install CPI increases with volume. Though this may seem counterintuitive, it actually makes sense since reaching the nth or n+1th sigma requires funding on Facebook ads.
    • Stats from analytics tools provided insight into introduced bugs. There exist out of the box solutions (Mixpanel, Flurry, Google Analytics, etc.)

How SchoolFeed applies to us

While SchoolFeed offers a convenient case study into the variable certainties in virality models, the process of adoption of our app promises to present additional challenges.

  • Sparseness of our social graph SchoolFeed leveraged social networks in high schools, highly dense communities on FB. For example, it's completely reasonable to expect someone with n FB friends to have at least 0.5n FB friends who attended high school with him or her. This value is far lower in our case. We would be fortunate for someone with n FB friends to have at least 0.05n FB friends who owned electric vehicles. As a result, a barrage of newsfeed posts will not as effectively traverse the graph as it did for SchoolFeed.
  • Direct utility for users inviting other users SchoolFeed incentivizes users to invite their friends to the network since the app would be uninteresting otherwise. A similar incentive exists for us: EV owners will not benefit from the app if few other users populate the network. The difference between these incentives is subtle but significant. While the increase in utility when users invite other users to SchoolFeed is direct, the increase in utility when users invite other users to Conduit is far less direct. Consider a successful invitation to SchoolFeed: a friend populates your immediate network and, presumably, will interact with you directly through the app. Now, consider a successful invitation to Conduit: a friend does not necessarily your immediate network (there's no guarantee you will ever need to request a public charger from him or her). In this sense, the incentive for users to invite other users to our app seems far less.

Thanks for listening to me ramble :)