Customer Analytics: RFM, CLV & Segmentation
429 words
2 min read
Visual companion
Python
Type and operator map
Python Week 1: the first filter for runtime behavior
View
Revision summary
What this note is really saying
Short form
# Customer Analytics: RFM, CLV & Segmentation ## 🎯 Learning Objectives - Calculate RFM scores and segment customers - Estimate Customer Lifetime Value (CLV) - Design customer segmentation strategies - Apply customer analytics to retention and marketing ## 📖 Core Content ### 3.1 RFM Analysis **RFM** scores customer...

Customer Analytics: RFM, CLV & Segmentation
🎯 Learning Objectives
- Calculate RFM scores and segment customers
- Estimate Customer Lifetime Value (CLV)
- Design customer segmentation strategies
- Apply customer analytics to retention and marketing
📖 Core Content
3.1 RFM Analysis
RFM scores customers on three dimensions:
| Dimension | Description | Scoring |
|---|---|---|
| Recency (R) | Days since last purchase | Lower = better (recent = 5, old = 1) |
| Frequency (F) | Number of purchases | Higher = better (frequent = 5, rare = 1) |
| Monetary (M) | Total spend | Higher = better (high spender = 5, low = 1) |
Score customers 1-5 on each dimension, then combine. Example: R=5, F=4, M=3 → RFM score = 543.
3.2 Customer Lifetime Value (CLV)
Simple CLV:
DCF-adjusted CLV:
Where mt = margin at time t, r = retention rate, d = discount rate.
Predictive CLV using Pareto/NBD or BG/NBD models: These probabilistic models use past purchase patterns to predict future activity.
python# runnable import numpy as np # Simple CLV calculation avg_purchase = 50 # $50 per purchase frequency = 4 # 4 purchases per year lifespan = 5 # 5 years average retention clv = avg_purchase * frequency * lifespan print(f"Simple CLV: ${clv:.2f}") # DCF-adjusted CLV def dcf_clv(margin, retention_rate, discount_rate, years): clv = 0 for t in range(1, years + 1): clv += (margin * retention_rate**t) / (1 + discount_rate)**t return clv clv_dcf = dcf_clv(margin=200, retention_rate=0.8, discount_rate=0.1, years=5) print(f"DCF CLV: ${clv_dcf:.2f}")
3.3 Customer Segmentation Matrix
(Diagram)
📝 Practice Questions
Q1: A customer has RFM scores R=1, F=5, M=5. What does this mean?R=1 (not purchased recently), F=5 (many purchases), M=5 (high spender). This is an "At Risk" customer — was high value but hasn't purchased lately. This customer should receive a win-back campaign. They're the most valuable target for re-engagement. Q2: Why use DCF for CLV calculation?Money received in the future is worth less than money today (time value of money). The discount rate (d) adjusts future cash flows to present value. Without it, CLV inflates future revenue unrealistically. Higher risk businesses use higher discount rates. Q3: What is the retention rate and why does it matter for CLV?Retention rate is the percentage of customers who continue purchasing in the next period. 80% retention means 20% churn per year. Small changes in retention dramatically affect CLV: improving retention from 80% to 90% doubles CLV. This is why retention marketing is so valuable. Join Discord PreviousA/B TestingNextData Storytelling