Measuring Churn and CLV
(Thread)

Contents
1. #Churn
2. #CLV

Resources:
- How @ShopifyData Merchants can Measure Retention shopify.engineering/how-shopify-me…
- “Counting Your Customers” the Easy Way brucehardie.com/papers/018/fad…
- lifetimes lifetimes.readthedocs.io/en/latest/Quic…
1.1 Churn | Definition
"Far too often businesses define churn as no purchases after N days; typically N is a multiple of 7 or 30 days. Because of this time-limit, it arbitrarily buckets customers into two states"

But different customers buy at different frequencies? https://shopify.engineering...
1.2 Churn | Probability

Instead Shopify represents churn as a probability and infers it per customer by making some distributional assumptions and using only: recency, frequency, age

This avoids the problem of choosing N.
1.3 Churn | Estimating The Probability
Let lambda be the rate of purchasing, and p be the probability of a churn event.

Then you can use BG/NBD to infer p.
Assuming the assumptions in the next tweet are validated.

Even with seasonality though, BG/NBD does quite well.
1.4 Churn | BG/NBD Assumptions
1. Time between transactions ~ exp(lambda)
2. lambda ~ gamma(r, alpha)
3. After any transaction a customer becomes inactive with prob p
4. p ~ Beta(a,b)
5. lambda and p vary independently across customers
brucehardie.com/papers/018/fad… http://brucehardie.com/pape...
1.5 Churn | BG/NBD Evaluation (CD Purchases)

We can see that BG/NBD performs quite well.

Particularly impressive is the conditional expectation, which demonstrates how well this model tracks the expected # of transactions in weeks 40-78 given # in 1-39

brucehardie.com/papers/018/fad… http://brucehardie.com/pape...http://brucehardie.com/pape...
1.6 Churn | Estimating Probability in Practice

You can use lifetimes to estimate these probabilities in #Python lifetimes.readthedocs.io/en/latest/Quic…

Pay close attention to how your data needs to be structured on inputs, and use the l2 penalty.

Also be sure to viz decision bounds and fit https://lifetimes.readthedo...https://lifetimes.readthedo...https://lifetimes.readthedo...https://lifetimes.readthedo...
1.7 Churn | Why is Churn Important?
Using churn "merchants are in a position to drive smarter marketing campaigns, order fulfillment prioritization, and customer support."

"50% probability are at risk of churning, so targeted campaigns could be made to entice them back"
2.1 CLV | Motivation

CLV is one of if not the most import metric to understand about your customers.

And its very common to calculate it wrong.
Bc they don't properly account for churn in non-contractual settings.

Great talk by @faderp on all of this:
2.2 CLV | Implementation

After fitting the churn above, we can incorporate the economic value now.

Be sure to verify the independence assumption between monetary_value and frequency.

You should also discount the future cashflows. https://lifetimes.readthedo...https://lifetimes.readthedo...https://lifetimes.readthedo...Image
2.3 CLV | How Can this Be Used?
1. Prioritizing customers (ex: contacting users with churn risk)
2. Targeted marketing (ex: how much am I willing to spend on this customer?)
3. Predict high CLV potential customers to acquire
4. Understand (current and future) customer base
2.4 CLV | How Can This Inform Recommendations?
1. Ensure the cost of the recommendation > CLV
2. Recommend specific benefits to high CLV customers
Forgot to mention that @Cmrn_DP was the one who wrote the exceptional post I stole most of this content from.
"How Shopify Merchants can Measure Retention"

And was a major contributor to the lifetimes package.

Thanks again for making great DS content Cam!

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Brydon Parker

Brydon Parker Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @parker_brydon

20 Feb 21
Data Science Applications @Shopify

In this thread I'll highlight some important pieces from a variety @ShopifyData & @ShopifyEng blogs where they discuss applications they've built that I think would benefit Data Scientists.

#DataScience
Contents:
1. How Shopify Capital Uses Quantile Regression To Help Merchants Succeed
2. How to Build an Experiment Pipeline from Scratch
3. How to Use Quasi-experiments and Counterfactuals to Build Great Products
4. Categorizing Products at Scale
Other Threads On Shopify DS Applications:
- How Shopify Uses Recommender Systems to Empower Entrepreneurs:
- Measuring Churn and CLV:
- The Evolution of Kit: Automating Marketing Using Machine Learning:
Read 41 tweets
19 Feb 21
The Evolution of Kit: Automating Marketing Using Machine Learning - @ShopifyData and @ShopifyEng

This thread will pull some interesting elements out of shopify.engineering/evolution-kit-…
by @vincentchio

Contents
1. Intro
2. Motivation
3. #ML
4. New Businesses

#chatbots
1 Intro
"As a virtual assistant, Kit interacts with business owners through messages over various interfaces including Shopify Ping and SMS."

Kit serves as a nice UI to make ads and helps them
"create more effective and performant ads through marketing recommendation"
2 Motivation
Initial rule-based recommendations had the budget ranges hard coded into the application where the user can can choose from.

But these may not fit their needs and it's a difficult decision to make in order to maximize returns.
Read 10 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(