How to count lifetime value: method overview

The question of calculating the lifetime value (aka LTV, customer lifetime value, CLV) sooner or later confronts the developers of mobile (though not only) applications. A lot of calculation methods have been invented, and there are as many people as there are opinions about how to count LTV. In this material, I decided to describe the most common methods, to identify their pros and cons. These methods are primarily suitable for describing the f2p model.
1. After the
fact, this method stands out against the background of all subsequent ones, since it does not model LTV and does not predict it, but considers the actual LTV.
For this method, you need to take a cohort of users who have definitely left the project, see how much money this whole cohort has brought, then divide this amount by the size of the cohort. It is desirable that users are registered at about the same time (one month, or better, one day).
In practice, this method is poorly applicable, since there will certainly be at least one person from the cohort who is still active, no matter how long the cohort has not been registered. And therefore, in practice, LTV is simulated, not calculated in fact. And all subsequent methods will precisely model the future LTV, and not evaluate the past.
2. Take everything and share, or the Sharikov

method. The fastest, but roughest method. We take the entire income of the application for the period and divide by the total number of users for the same period.

This method has only one plus : it counts pretty quickly, literally in one action.
The minus is the apparent inaccuracy of the method, which may be due, for example, to the following reasons:
- revenue from those users who have already become active (hit the denominator), but have not yet brought in revenue (which would have been in the numerator) is not taken into account;
- values of application metrics from the very beginning of its life are taken into account; do not forget that applications have their own life cycle, and as a rule, at the beginning of their life cycle, indicators are better than some time after (read about this excellent study from GameAnalytics ). In the same method, all stages of the application life are combined.
- also in this method it is difficult to calculate LTV separately for each user segment, for this you need to know in advance the size of the segment and the amount of money brought by users of this segment.
3. Lifetime in a simple way
If we know how many days the user on average lives in the application, and how much money he brings on average per day of life, then we can estimate how much money he will bring for his whole life in the application. And this is our LTV. The formula of this method is as follows:

Next, the question arises of how to count lifetime. There are two methods, and the first is the calculation in a simple way (as you can already see from the header):
1) We determine a certain period of inactivity, that is, the time after which the user most likely will not return to the application. This is determined either on the basis of retention values, or, more often, expertly. Usually expertly set this value to one or two weeks.
2) Every day we look at users who have a period of inactivity on that particular day.
3) For each user, we calculate the number of days from his first visit to the current day.
4) We calculate the average value for all users. This is lifetime.
Well, the ARPU (in this case ARPU = ARPDAU) is calculated as the daily Revenue divided by DAU. Multiply lifetime by ARPU and get LTV.
Advantages of the method:
- Ease of calculation. Calculating lifetime in this way is not difficult, it is even easier to calculate ARPU. And any student can multiply one by another.
- You can count LTV at least every day.
- LTV can be calculated for each user segment individually.
Cons again lie in inaccuracy, which in this case is due to the following reasons:
- The value strongly depends on the period of inactivity, set, as a rule, expertly.
- We multiply the average value of lifetime by the average value of ARPU, we get the accumulated error.
- When calculating lifetime, we look at those users who have already left the application. When calculating ARPU, we look at users of the current day. It turns out that the many users who form lifetime and ARPU do not intersect: lifetime is calculated according to the data of past days, ARPU - according to the current day.
- Strong assumption of the immutability of ARPU. We take ARPU in just one day and based on it we forecast LTV for many days in advance.
4. Lifetime in a complicated way, or Bottoms Up
The second name of this method is taken from the Wooga material , and this, you see, is a source that is worth listening to. The formula of the method is exactly the same:

But lifetime here is considered a little more complicated and it turns out much more accurate. Recall what the retention graph looks like :

The fact is that lifetime is the area of the figure under the retention graph, in other words, the integral of retention over time.
But before counting the integral, it is necessary to construct the function itself. How it's done:
1) As a rule, you have retention values for several days (for example, 1 day, 7 days, 28 days). If there are other days, and even better - for longer periods of time - this is fine, this will make the calculations only more accurate.
2) Based on the known values (for example, for 1, 7 and 28 days) we need to build a retention curve. We will look for a curve equation of the form:

where t is the number of days from the first visit, F (t) is the future retention equation, and A, B and C are the model coefficients.
3) Substitute the known retention values, no matter how much they are, into the equation, and get a system of equations for the coefficients A, B and C.
4) We calculate the sum of the squared differences of the deviations between the actual and simulated values of F (t).
5) We find such values of A, B and C that minimize the total deviation. This can be done perfectly, for example, using the Solver tool (Solution Search) in MS Excel.
6) Substitute the found values of A, B, C into the equation and get a function with which you can evaluate retention for as many days as you like.
That is not all, but we are already close. Further, you can still choose a complex or simple method.
The complicated method is to find the integral of the retention function.
Recall that

The simple method is to, albeit approximately, divide the retention curve into segments depending on the value of lifetime. For example, for users who quit every other day, who have lived in the application for 2 to 7 days, from 8 to 30 days, from 1 to 3 months, more than 3 months. The more segments, the better. For each segment, calculate the percentage of users (segment weight) related to it according to the retention table, and then calculate the weighted average lifetime for all segments.
But no matter what method you choose, you will be faced with the question, up to what point should LTV be considered (in the case of the integral, this will be the right edge of the integration area, in the case of the sum, the number of days in the very last segment). And here again there are two solution methods: simple and complex.
A simple method is to set the right edge expertly. Usually this happens:
- and let's take six months!
- why?
- why not?
- okay, let's do it for half a year.
The sophisticated method is to use discounts and find the WACC discount rate (admit you did not expect to see financial math in this material?). The fact is that a thousand dollars now and a thousand dollars tomorrow are different amounts of money. Tomorrow's thousand dollars today will be equal to nine hundred dollars or so, depending on the choice of discount rate.
The formula is:

Here PV (present value) is the current value of future money,
CFi- the money that you will receive through i time periods,
WACC (weighted average cost of capital) is the same discount rate.
How to find her? Typically, WACC is made equal to the actual return on equity of the average firm. You can also equate it to the desired return on equity, or to the return on equity of alternative projects. If you do not understand this paragraph, ask your financiers, they probably know your company's WACC.
So, knowing WACC, you can discount future time streams, and therefore, choose infinity as the right edge of integration. The fact is that adding WACC makes an infinitely decreasing sequence from your sum (or from your integral) from which you can find the sum.
We assume that lifetime we have counted. Now consider ARPU (Revenue / DAU), multiply ARPU by lifetime and get LTV.
Advantages of the method:
- Accuracy. Lifetime is calculated very accurately, the error in it is minimal.
- A side effect of calculating this method is that you get a retention forecast for any number of days as a bonus.
- The ability to calculate LTV for each segment separately.
Cons of the method:
- It’s hard to count (although an experienced analyst with all the data will count you LTV in five minutes).
- Again, the assumption of the immutability of ARPU over time. You can play it safe and take into account not the ARPU for one day, but the average daily ARPU for a lifetime, this will increase accuracy.
5. Cumulative ARPU, or Top Down
The second name of the method is again taken from the Wooga material , which gives +10 credibility to this method. The picture is taken from the same material:

Let’s explain. Let's say a group of new players came to your project, and you began to follow it. You measure how much money an average player from this group brought you in 7 days, 14, 28, and so on. That is, in fact, you are switching from a regular ARPU to a cumulative one in N days.
Well, knowing Cumulative ARPU for 7, 14, 28, etc. days, we will again be able to build a mathematical model of the curve, which will predict the values of Cumulative ARPU for any number of days. We will look for an equation of a curve of the form:

where t is the number of days from the user's first visit, F (t) is the future equation, A and B are the model coefficients.
Once again, we calculate the sum of the squared deviations and minimize it by selecting the optimal values of the coefficients A and B.
If you have more Cumulative ARPU values (say, for 60 and 90 days), then you can add additional terms of the form C * t or D to the equation / t, this can improve accuracy. Well, in general - there is no one equation that guarantees a minimum deviation. Experiment with the look of the equation!
After several iterations, you still get an equation that suits you. Now, substituting the value of t you need in this equation, you get Cumulative ARPU (t), which in essence will equal LTV.
How to choose t value for LTV calculation?
- Firstly, you can take a lifetime.
- Secondly, you can again set this t expertly.
- Thirdly, you can return to discounting and add the denominator to the resulting equation
, in this case, sooner or later, an asymptotic value will begin to appear on the chart (as in the picture above - about $ 3.7, above which LTV cannot be. Take this value and take .
So, we examined five methods for calculating LTV, which, as you can see, are ordered from the least accurate to the most accurate. Choose the method that you like, calculate your LTV and make the right decisions. And now the main rule of LTV: divide users into segments, and read the LTV of each segment separately. This will give you higher accuracy and more reasons to make the right decisions for your product.