NUPANCH
  • Home
  • Services
  • Customers
  • About
  • Contact
  • Blog

Stay informed on the latest in e-commerce analytics

A holistic picture of customer lifetime value

4/17/2018

4 Comments

 
Picture
Many eCommerce companies calculate Customer Lifetime Value (CLV) as the sum of all historical purchases for each customer. However, CLV, by definition, is a forward-looking statement. By simply considering historical purchases, the underlying assumption is that the customer will not make any further purchases. There has been significant statistical research into creating reliable probabilistic models to calculate Residual Customer Value (RLV) i.e. the dollars your customers are yet to spend.
Here are some ways in which calculating residual lifetime value can be useful for your business -

  • Define your customers not only by what they have spent so far, but by how much they are likely to spend going forward
  • Identify & understand the traits associated with your best and worst customers
  • Improve acquisition decision-making
  • Sales / demand forecasting
  • Customer service queuing
  • Proxy for a company’s value

The most popular of these statistical models is the Pareto/NBD model. Here is the paper that sets the foundation for it. It’s full of math, so here’s the short version -
​
The model takes as input a historical purchase log, and calculates basic RFM (recency, frequency, monetary) stats. It then spits out the following data points for each customer -

  • PAlive - the probability (between 0-1) that the customer is “alive” i.e. still a customer of your business.
  • Expected Transactions - the predicted number of transactions the customer is likely to make in the next X months. X is defined by you and depends on how long you’d like to predict for. As a rule of thumb this should not be greater than the duration for which the model has been trained.
  • Average Order Value - the predicted average transaction value of the customer going forward.

What you will need to predict CLV

  1. Historical Transaction Log - A list of orders with the customer_id, date and amount of the order. This list should include orders made by customers acquired between 2 years ago and 6 months ago. For example, if today was Jan 1, 2018, the customers to be included would be the ones acquired between Jan 1, 2016 and June 30, 2017. It is okay to include customers older than 2 years (in fact, the more data the better), but not newer than 6 months ago.
  2. R Script - The code to calculate the predictions for each customer. The "BTYD" R package is perfect for this purpose. Here is a walkthrough of the code.
  3. Export to BI Tool - Ideally, you will want a way to automate the above steps 1-2 times a month. If you are using a BI tool, use API access to set up an automated export/import process.

Need help setting this up? Feel free to reach out here.

Note: This method is suitable for non-subscription businesses only. For subscription businesses, there are a host of other methods that can be used. Another post to follow shortly!
4 Comments
Adwait Manke link
12/17/2018 07:28:32 pm

Hello,

I was hoping to implement the BTYD / BTYD plus package in R. I happened to come across your excellent article.Many thanks for writing it. I have a few doubts, which I will be glad if you could help me understand:
1) "Average Order Value - the predicted average transaction value of the customer going forward."
How do I calculate this value ? What function do I use ? I did not find this anywhere in the BTYD walkthrough.

2) "It is okay to include customers older than 2 years (in fact, the more data the better), but not newer than 6 months ago."
Why is it not ok to include the new customers ?

3) "If you are using a BI tool, use API access to set up an automated export/import process."
How to achieve this ?

Many thanks once again for the great article.

Thanks & Regards.

Reply
Akash Agrawal
12/17/2018 07:52:55 pm

Hey Adwait - great questions!

1. You'll want to use the "spend.expected.value" function. It's on page 102 of the BTYD PDF.

2. Very new customers may not have sufficient transaction histories to reliably predict their future behavior. The 6 months period is a rule of thumb. A more accurate period might be to use twice your business's average time between orders duration.

3. This can vary depending on where/how you are looking to report/visualize the data. In most cases, I host the script on an EC2 server, and use import and export scripts to set up the data pipeline.

Please feel free to reach out to [email protected] if you have any additional questions as well.

Akash

Reply
Giannis Thivaios
4/19/2021 03:59:45 pm

Hello,

I have an important question on a business study i follow:

1. Is pAlive included in the calculation of expected future transactions?
2. If yes, why we need pAlive since we dont use it in CLV calculation. Just for descriptives?

Thanks a lot,
Giannis

Reply
Terrence link
10/4/2024 04:57:06 am

Very thoughtfull blog

Reply



Leave a Reply.

      stay up to date with the happenings in e-commerce. 

      Subscribe today!

    Subscribe to Newsletter

    Archives

    June 2018
    May 2018
    April 2018
    March 2018
    February 2018
    January 2018

    Categories

    All

    RSS Feed

Home

About

Contact









​Data migration icon used on the home page is by "unlimicon" from The Noun Project.
Report building, account cleanup and data structuring icons used on the home page are by "Dinosoft Labs" from The Noun Project.
Getting the most out of icon used on the blog page is by "Luis Prado" from The Noun Project. 

  • Home
  • Services
  • Customers
  • About
  • Contact
  • Blog