The best way to calculate Customer Lifetime Value for Ecommerce

Brittany Davis

Feb 2, 2021

Understanding what Customer Lifetime Value is, why it's a useful metric, and how to compute it.

Why is LTV useful?

Lifetime Value (LTV) allows us to make decisions about our customers by considering their value today and their value in the future.

LTV allows us to have a common metric that represents what someone is worth today and what we expect them to be worth in the future so we can make decisions to influence future revenue.

Note that this is LTV for retail e-commerce businesses with multiple single purchases. For subscriptions / SaaS products LTV is calculated differently and will be the topic of a future post.

LTV Explained

LTV is a modeled value that gives us a simple way to reason about a customer's changing behavior (purchase amount, retention, and cadence) using a simple metric.


It’s a prediction of future value generated from each customer and it's made up of the following components:

  1. Retention Customers become more valuable as they have more orders
  2. Average Order Value Customers who spend more are more valuable
  3. Time Between Orders The time it takes for customers to come back will drive the time horizon over which LTV is realized

Calculating LTV

Before we dive in: Narrator can provide this analysis and many others in minutes using your data. Chat with us and we'll show you how!

LTV uses retention patterns to understand a customer's likelihood to reach the nth order, then multiplies it with the revenue value in order to come up with the expected revenue from the nth order. Finally, the expected revenue is summed up across all orders. From there we'll use the time it takes for customers to order again to estimate the amount of time it will take to realize LTV.

LTV is a converged value. LTV is based on the expected revenue that a single customer will generate. We look at the chance for customers overall to make subsequent orders. Eventually the likelihood to reach order number 4, for example, becomes so small that the expected revenue gains from another order stop mattering (diminishing returns). This is the point when LTV converges.

For example:

The LTV of a Narrator Demo customer converges at $154.25. It takes 180 days for a customer to reach 95% of this value.

LTV over time for Narrator's demo customer

What drives LTV

LTV is a single number that represents a complex relationship between multiple variables, so we can reason about the combination customers' time, average order value, and retention and focus on the most valuable customers.

Behavioral drivers of LTV:

  1. Customer Retention
  2. Average Order Value
  3. Time Between Orders

Modeling Customer Retention

Retention is the biggest driver of LTV because the retention rate is carried over to subsequent orders

Recall that the equation of LTV is a function of likelihood to reach the Nth order. And because the likelihood to reach the Nth order is dependent on the likelihood to reach the (N-1)th order, even small changes in retention are amplified throughout the calculation. This is what makes retention a significant driver of LTV.

Overall the calculation goes like this

  1. Remove the most recent X days of data.
  2. For each order occurrence (1st, 2nd, etc) look at the conversion rate to the next order
  3. Sum the conversion rates to get the likelihood to reach Nth order

Ignore Recent Data

First we need to ignore the most recent days of data – we need to give a chance for customers to order multiple times.

We can do this by looking at the number of days between completed orders for each customer. Of all the total orders, some were completed 1 day after the last one. Some were done 2 days after, and so on. When we add them all up, the number at which we hit 85% of all orders is a good stopping point. In our sample data that's 119 days.

Likelihood to Reach Nth Order

Generally (though not always) a returning customer is more likely to buy again than a brand new customer.

The problem is that any given customer isn't likely to have many orders – at each step a significant number of customers are dropping off along the way.

In our example, we see that 9.6% of customers purchase again after the first order, and of those 36% purchase after the second.

To calculate the likelihood to reach the Nth order we just need to multiply the conversion rate of all the previous orders (note that we're only looking at customers who have ordered already, so the likelihood to reach the first order is 1).

Likelihood to reach 2nd order: 9.62%

Likelihood to reach 3rd order: 9.62% * 35.7% = 3.43%

... and so on

Likelihood to Reach Order i

When plotted it looks like this

This will be the first part of our LTV calculation.

There's one interesting thing to note here: the fastest way to increase LTV is to increase the conversion to multiple orders. Here the drop off is fairly drastic, so any improvement will have an important effect.

In our example, most customers are lost after the first purchase, so improving first order retention will have a huge impact on LTV.

Now for the next part of the LTV calculation.

Modeling Average Order Value

Customers may change their spending habits as they continue to purchase.

When valuing a customer, it's important to understand if they are going to spend more or less over time. For example, a customer who spends a lot up front but a little for each returning purchase might be less valuable than a customer spending less up front up a lot on each recurring purchase.

In short, spending behavior is an important input to the LTV calculation. LTV is the sum of the expected revenue gained at each order. Since we already know the likelihood that a customer will reach the Nth order, we just need to multiply that with the revenue value to get the expected revenue for that order.

Here we're predicting, based on the order number, how much money a customer will spend.

So we just need to compute the average order value by occurrence, which is fairly straightforward.

Putting it Together

With both our pieces in place we can now compute LTV. So here's the equation one last time:

Recall that for each occurrence the likelihood to reach the Nth order is the product of all the ones before it. So we just multiply that by our average order value to get the expected order value by Nth order. Adding all those together gives us LTV!

Nth OrderLikelihood of Nth OrderAverage Order ValueExpected Value1st1$122.00$122.002nd0.093$244.17$22.703rd0.034$243.50$8.284th0.012$257.03$2.96Sum$155.94

The sum after the 4th order is $156. But what's the value after all the orders? At each step the expected value is going down fairly rapidly. It's obviously converging.

So where do we stop? When the LTV changes by no more than 1%, which will sum up to 95% of its total value.

For our example, the expected value of the seventh order is $1.22. This is less than 1% of the sum to that point, so we can stop there. That sum is $160.66, so dividing it by 0.95 brings us to a converged value of $169.11

Modeling Time to Accrue Revenue

Now that we know that most of the LTV is accrued in the first 7 orders, we can compute how long it takes a customer to reach this point – we need to understand how much time passes between each order.

A common error in LTV timing calculations

A common mistake is to use historical data to see how long it took customers to reach the converged number of orders (in our case 7).


Why it's dangerous

The sample size of customers who reached 7 orders will very small, so using them to calculate the time to reach LTV will introduce a lot of error.


A better way

Instead, we'll use the median time between orders to calculate a better estimate of the time it takes to reach a given order ocurrence.

This is fairly straightforward. We'll just look at the days between orders and sum them all together.

Summing the days between orders up to the 7th order gives us a total of 266 days. In other words, we're predicting that it takes 266 days from their first order for customers to reach 95% of their LTV.

This number can be a very useful timeframe for thinking about return on investment. For example, this can be used to compute the time to recover customer acquisition costs.

LTV and Beyond

And there it is. Our complete LTV.

So where do we go from here?

Use LTV instead of Average Order Value to represent the value of a customer

Use LTV for analyses when you need to represent the value of a customer because LTV allows you to reason about their spending, retention, and timing simply using a single metric.

  • Ensure operating and acquisition costs stay below LTV to ensure a positive business ROI
  • Ensure Product teams prioritize improvements that cater towards high LTV users

Work on improving order retention and other drivers of LTV

Conduct a follow up analysis to dive into each of the behaviors that drive LTV. This will  identify the areas to focus that will have the biggest impact.

Is there an easier way?

Doing a full LTV analysis like this is clearly a lot of work. Luckily we've already done it.

Our company, Narrator, provides these kinds of in-depth analyses (what we call Narratives) in minutes using your own data. Our library of Narratives includes this exact LTV analysis, along with many others. We'll also write about our optimizing LTV Narrative in a future blog post.

If you're interested book a demo or reach out and we can chat about it.