How to Calculate LTV/CLV Correctly
This is the #1 question people ask about LTV. There are dozens of formulas floating around — and
many of them are wrong, or at least dangerously misleading. Here's every method that actually works,
when to use each, and why the simple ones get you roasted in r/datascience.
The Simple Formula (and why it's dangerous)
This is where most people start. It's clean, it's easy, and it fits in a tweet. The problem is that it's almost always wrong.
LTV = ARPU ÷ Churn Rate Some teams multiply by Gross Margin % to get profit-based LTV — see our Revenue vs. Margin guide Where ARPU is Average Revenue Per User (typically monthly), and Churn Rate is the monthly percentage of customers who cancel.
If ARPU = $50/month and monthly churn = 5%:
LTV = $50 ÷ 0.05 = $1,000 Sounds great, right? But this assumes every customer has the exact same 5% chance of churning every month — forever. That's almost never true.
- Assumes constant churn: In reality, churn is front-loaded. Most customers who leave do so in the first 1-3 months. Survivors stick around much longer.
- Ignores cohort differences: Customers acquired from different channels at different times behave completely differently.
- Overestimates dramatically: Teams use this inflated number to justify higher ad spend, then wonder why they're unprofitable.
- Doesn't work for non-subscription: E-commerce, marketplaces, and transactional businesses don't have a "churn rate" in this sense.
When it's acceptable to use
Despite its flaws, the simple formula has some legitimate use cases:
- Back-of-napkin estimates at a very early stage (pre-product-market fit)
- Quick comparisons between segments when you need directional guidance
- As a ceiling estimate — your real LTV is almost certainly lower than this
E-commerce / Retail Formula
For businesses where customers make individual purchases rather than subscribing, there's a more appropriate formula:
LTV = AOV × Purchase Frequency × Average Customer Lifespan Average Order Value (AOV)
Total revenue ÷ number of orders over a time period. Include all order types — not just the first purchase.
AOV = Total Revenue ÷ # of Orders Purchase Frequency
Average number of purchases a customer makes per year (or per the period you're measuring).
Freq = # of Orders ÷ # of Unique Customers Average Customer Lifespan
This is the hardest input to estimate. Use the time between first and last purchase, averaged across churned customers.
Lifespan = 1 ÷ Churn Rate (in years) AOV = $65 · Purchases per year = 4.2 · Avg lifespan = 2.5 years
LTV = $65 × 4.2 × 2.5 = $682.50 Some teams also calculate a profit-adjusted LTV by multiplying by gross margin % — see our Revenue vs. Margin LTV guide for when to use each.
Cohort-Based LTV
This is what most data teams consider the "correct" way to calculate LTV. Instead of using averages across all customers, you track specific groups (cohorts) over time.
LTV = Σ (Revenue per month × Retention % at month N) Summed across the customer's expected lifetime How it works
- Group customers into cohorts — typically by the month (or week) they were acquired. "January 2026 cohort" = all customers acquired in January 2026.
- Track monthly revenue per cohort — how much revenue does the Jan 2026 cohort generate in month 1, month 2, month 3, etc.?
- Build a retention curve — what percentage of each cohort is still active at each time point?
- Calculate cumulative revenue — sum the discounted revenue across all months to get a true LTV.
| Cohort | Month 0 | Month 1 | Month 2 | Month 3 | Month 6 | Month 12 |
|---|---|---|---|---|---|---|
| Retention % | 100% | 68% | 55% | 48% | 38% | 28% |
| Rev / active user | $50 | $52 | $55 | $58 | $62 | $70 |
| Cohort revenue / user | $50 | $35 | $30 | $28 | $24 | $20 |
Adding a discount rate
For serious financial analysis, discount future cash flows to account for the time value of money. A dollar received in 12 months is worth less than a dollar today.
Discounted LTV = Σ (Monthly Revenue × Retention %) ÷ (1 + d)^n where d = monthly discount rate, n = month number Predictive LTV (ML-Powered)
The most sophisticated approach — and increasingly the standard at data-driven companies. Instead of looking backward, predictive models forecast future value for each individual customer.
RFM Analysis
Score customers on Recency (how recently they purchased), Frequency (how often), and Monetary value (how much). Simple but effective as a segmentation baseline.
BG/NBD + Gamma-Gamma Models
The classic probabilistic approach (Buy 'Til You Die model). Predicts how many future purchases a customer will make and their expected value. Popular in Python's lifetimes library.
Machine Learning Models
Regression or survival analysis models using full behavioral data — purchase history, page views, support tickets, product usage, email engagement, etc. Highest accuracy, but requires significant data.
Deep Learning / Neural Networks
LSTM or Transformer-based models that capture temporal patterns in customer behavior. Overkill for most businesses, but powerful for companies with millions of customers and rich event data.
How to Choose the Right Method
| Method | Best for | Data needed | Accuracy | Complexity |
|---|---|---|---|---|
| Simple (ARPU ÷ churn) | Quick estimates, early stage | Minimal | Low | ⭐ |
| E-commerce (AOV × Freq × Lifespan) | Retail, DTC brands | 6+ months of orders | Medium | ⭐⭐ |
| Cohort-based | Any business, 12+ months | 12+ months of cohort data | High | ⭐⭐⭐ |
| Predictive (ML) | Data-rich companies | 1,000+ customers, behavioral data | Very High | ⭐⭐⭐⭐ |
Worked Example: SaaS Company
Let's walk through a real scenario for a B2B SaaS product with 3 pricing tiers.
- Monthly ARPU: $120
- Monthly churn rate: 3.5%
- 12-month retention: 62%
Simple Formula
$120 ÷ 0.035 = $3,429 Likely overestimated Cohort-Based (12mo observed + extrapolation)
$120 × cumulative retention = $2,305 More realistic The 33% difference between these two estimates can mean hundreds of thousands of dollars in misallocated ad spend. This is exactly why the formula choice matters.
Skip the spreadsheets
Finsi OS calculates cohort-based and predictive LTV automatically, with AI-powered confidence scoring on every estimate.
Try Finsi Free →