Quiz 2

Customer Analytics: RFM, CLV & Segmentation

429 words
2 min read
Python Week 1: the first filter for runtime behavior
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:
DimensionDescriptionScoring
Recency (R)Days since last purchaseLower = better (recent = 5, old = 1)
Frequency (F)Number of purchasesHigher = better (frequent = 5, rare = 1)
Monetary (M)Total spendHigher = 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:
CLV=Average Purchase Value×Purchase Frequency×Customer LifespanCLV = \text{Average Purchase Value} \times \text{Purchase Frequency} \times \text{Customer Lifespan}
DCF-adjusted CLV:
CLV=t=1Tmtrt(1+d)tCLV = \sum_{t=1}^{T} \frac{m_t \cdot r^t}{(1+d)^t}
Where mtm_t = margin at time t, rr = retention rate, dd = 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 (dd) 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
Document outline

Keep your place and jump directly to a heading.

Table of Contents
System Normal // Awaiting Context

Intelligence Hub

Navigate the knowledge graph to generate context. The Hub adapts dynamically to surface backlinks, related notes, and metadata insights.