How to measure the product virality

How to calculate the k-factor?

The most common formula is k-factor = i*c, where i is an average number of invitations sent by one user, c is an average conversion from received invitation into registration.

  • Not all products trace the sent invitations. In fact, this can be done only if each user sends an invitation with a unique mark, and if for each invited user we can track the inviter. In the real world sending invitations occurs through social networks, and if the number of sent invitations is still countable, then the number of recipients is not.
  • And what if you simply told a friend about a new game at the meeting? Then your friend registered in the project will not bear the mark as being invited by you and will not be taken into account in k-factor, although the virality had a place to be. The bulk of invitations just happens through the word of mouth.

How should k-factor be calculated then?

On the Internet we met another formula: k-factor = 1 + (organic downloads) / (paid downloads).

Now let’s turn to another interesting metric

How is virality actually formed? Where comes the wind from that brings new users?

  • You go through the tutorial, you understand the value of the product. In other words, here is your activation.
  • You get familiar with the product, study it at some speed. Some may go to the application once a week, some open it five times per day
  • It seems you start to like the app.
  • You decide to invite a friend to the application. You send an invitation, you mention the name of the application at the meeting. In general, somehow infect your friend.
  • A friend remembers your advice and also downloads the application.

What should k-factor be equal to?

How do you know if your k-factor is good or not?

  • if k-factor > churn, more users come than users leave, and your product is going to have exponential growth;
  • if k-factor = churn, the virality only compensates the churn, and the number of users will be stable;
  • if k-factor < churn, the churn of users is not compensated by the virality and audience of the project will gradually decline.
  • 15% — 25% — good;
  • 40% — excellent;
  • 70% — just an outstanding product.
  • the best way to increase k-factor is to reduce the viral cycle;
    you need to use the existing social networks of your users, it simplifies the process of dissemination of information about your product. In other words, integrate social networks and other services;
  • the user must have a stimulus to invite friends, so, take a look at joint activity in Dropbox, communications via instant messengers, referral programs in online games;
  • at the expense of virality only, the product cannot survive; it is necessary to be truly popular among users.

Let’s summarize the main ideas

  • Virality is a great thing! It is a nice way to attract a large mass of potential users for free.
  • To measure the virality use the k-factor (the average number of friends invited by one active user) and the viral cycle (average time from the registration of a user to the registration of friend invited by him). K-factor should be high, and the viral cycle should be short.
  • K-factor has to cover the churn of users, in this case, you will find an exponential growth.
  • K-factor changes over time, with usually downwards. Do not worry.
    You can affect the virality of your product by making your product awesome and the process of inviting friends simple, logical and necessary to the user.



Product Owner at Everything you need to know about analyzing and improving games and apps.

Love podcasts or audiobooks? Learn on the go with our new app.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Vera Karpova @devtodev

Vera Karpova @devtodev


Product Owner at Everything you need to know about analyzing and improving games and apps.