First, under "Type of calculation", choose store/e-commerce (customers buy again and again) or subscription/SaaS (monthly billing), and whether to calculate LTV or work back from a target LTV. Fill in the fields shown and press "Calculate" to get the LTV, average lifetime and more, with a graph of lifetime against cumulative value.
Table of Contents
-
What you can do on this page
-
What is this calculation used for?
-
How to Use
-
Formulas and figures
-
Formula for store/e-commerce LTV (revenue basis)
-
Formula for the average customer lifetime of a subscription (from the churn rate)
-
Formula for subscription LTV (revenue basis)
-
Formula to convert to LTV on a gross profit basis (from revenue-basis LTV and gross margin)
-
Formula for the lifespan needed for a target LTV (store/e-commerce)
-
Formula for the max monthly churn rate for a target LTV (subscription)
-
-
Symbols and terms
-
Good to know before you start
-
How to calculate it in Excel
-
How to calculate it in Google Sheets
-
How to calculate it in Python
-
How to write it in LaTeX and other math languages (copy and paste)
-
How to have ChatGPT do the calculation
-
DataChef Features
-
Related Features
-
NumberChef Calculators List
What you can do on this page
- Calculates LTV (customer lifetime value) for stores and online shops as "average order value × purchase frequency (per year) × customer lifespan (years)". Enter a gross margin and you also get the LTV on a gross profit basis
- Calculates LTV for subscriptions and SaaS as "ARPU (monthly) × gross margin ÷ monthly churn rate", along with the average customer lifetime in months (\(100 \div\) churn rate)
- It also works backward: "How many years do customers need to stay to reach my target LTV?" and "How low does my monthly churn rate need to be to hit my target LTV?"
- A graph shows how the cumulative value of one customer builds up as the months go by
- A plain-language explanation of the formulas and copy-and-paste formulas for Excel, Google Sheets and Python are all on this page
What is this calculation used for?
For a customer who spends $50 per order, 4 times a year, for 3 years on average, the revenue LTV is \(50 \times 4 \times 3 = 600\) dollars, and at a 40% gross margin the gross profit LTV is $240. If ads cost $80 to win one new customer, the gross profit LTV is 3 times that, so the ads look worth continuing. LTV gives you the numbers for this kind of decision.
Compare customer acquisition cost (CAC) with the gross profit LTV, not the revenue LTV. If you compare with the $600 of revenue, the business looks profitable before the cost of goods is even paid.
For a $30/month service with an 80% gross margin and a 5% monthly churn rate, the average lifetime is \(100 \div 5 = 20\) months and the gross profit LTV is \(30 \times 80 \div 5 = 480\) dollars. If a retention program brings churn down to 4%, the average lifetime becomes 25 months and the LTV $600, adding $120 of value per customer.
With 500 new customers a month, that difference is worth $60,000 of LTV every month. This calculation tells you how much staff time and budget a "cut churn by 1 point" program is worth.
A regular who comes in twice a month, spends $25 each visit and keeps coming for 5 years buys 24 times a year, so the LTV is \(25 \times 24 \times 5 = 3000\) dollars. Each check is only $25, but over the whole relationship this is a $3,000 customer.
It gives you a price yardstick for questions like "how much can we spend per year on perks for regulars (loyalty points, birthday rewards)?" and "how much can we spend on flyers or coupons to bring in one new customer?"
For a $40/month subscription box where 8% of subscribers cancel each month, the average lifetime is \(100 \div 8 = 12.5\) months and the revenue LTV is \(40 \times 12.5 = 500\) dollars. Even if you give a first-box discount of $60 per customer to win them, at a 50% gross margin the gross profit LTV is $250, so the discount pays for itself.
This calculation, though, is an average that assumes the churn rate is the same every month. In reality, many people cancel after the first box and churn settles down after that, so tracking first-month churn separately makes the estimate more accurate.
Suppose you spend $200 to win a customer and want $600 of gross profit back. At $50 per order, 4 times a year and a 40% gross margin, the gross profit per year is \(50 \times 4 \times 40 \div 100 = 80\) dollars, so the lifespan needed is \(600 \div 80 = 7.5\) years. If 7.5 years is too long, you know you need to raise the order value or the purchase frequency.
For a subscription at $30/month with a 40% gross margin, keeping the gross profit LTV at $240 or more requires a monthly churn rate of \(30 \times 40 \div 240 = 5\)% or less. In business planning, the goal comes first and you work back to the conditions.
Formulas and figures
Symbols and terms
Symbols
| \(\mathrm{LTV}\) | L-T-V | Customer lifetime value (lifetime value). The total value one customer brings while they stay with you. It is also written \(\mathrm{CLV}\) or \(\mathrm{CLTV}\), short for customer lifetime value. |
| \(\mathrm{LTV_{g}}\) | L-T-V sub g | LTV on a gross profit basis. The subscript g is the first letter of "gross margin", added on this page to tell the two apart. Found with \(\mathrm{LTV_{g}} = \mathrm{LTV} \times M \div 100\). |
| \(P\) | pee | Average order value, from the first letter of "price". The average amount a customer pays per purchase (for example, if the average order is $50, \(P = 50\)). |
| \(F\) | ef | Purchase frequency (per year), from the first letter of "frequency". How many times one customer buys per year: \(F = 4\) for 4 times a year, \(F = 0.5\) for once every 2 years. |
| \(T\) | tee | Customer lifespan (years), from the first letter of "time". The average number of years customers keep buying. In the reverse formula, it is the number of years needed for the target LTV. |
| \(A\) | ay | ARPU (monthly revenue per customer). Short for average revenue per user; on this page it is a monthly amount. |
| \(c\) | see | Monthly churn rate (%), from the first letter of "churn" (customers leaving). The share of customers who cancel during one month. In the reverse formula, it is the highest churn rate that still reaches the target LTV. |
| \(L\) | el | Average customer lifetime in months, from the first letter of "lifetime". How many months one customer stays subscribed on average. Found with \(L = 100 \div c\). |
| \(M\) | em | Gross margin (%), from the first letter of "margin". The share of revenue left after the cost of goods. |
| \(G\) | gee | Target LTV, from the first letter of "goal". The total value you want from one customer. In formulas that use the gross margin, it is treated as a gross profit amount. |
| \(100\) | one hundred | The base for percentages. Divide a percentage by 100 to get back a decimal (\(40\% \div 100 = 0.4\)). This conversion is also why the reciprocal of the churn rate, \(100 \div c\), is the average lifetime in months. |
Terms
| customer lifetime value (LTV) | How much value (revenue or gross profit) one customer brings in total, from their first purchase until they leave. It is the basis for deciding "how much can we spend to win this customer?" Definitions vary (revenue or gross profit basis, and whether future amounts are discounted), so match the definitions before comparing. Some also call "LTV − CAC" the LTV (subtract the customer acquisition cost from the gross profit LTV on this page and you get that value). |
| revenue basis | LTV counted as total revenue. If you compare this with ad spend or customer acquisition cost, you overestimate the profit, because the cost of goods has not been subtracted. |
| gross profit basis | LTV counted as gross profit (revenue minus the cost of goods). Gross profit basis = revenue basis × gross margin. Use this one when you compare with ad spend or customer acquisition cost. |
| gross margin | Gross profit (revenue − cost of goods) as a percentage of revenue. If $100 of revenue has $60 of cost of goods, the gross profit is $40 and the gross margin is 40%. See the profit margin calculator page for details. |
| ARPU | Average revenue per user (customer). In subscriptions and apps it is usually per month, found with "total monthly revenue ÷ number of customers". The average over paying customers only is called ARPPU (average revenue per paying user). B2B SaaS often uses ARPA (average revenue per account) instead. |
| churn rate | The share of customers who cancel in a given period (one month on this page). It is usually found by dividing the customers who canceled during the period by the customers at the start (100 at the start of the month and 5 cancellations = 5%). For an annual rate, working from the share that remains after a year is more accurate than simply multiplying the monthly rate by 12 (at 5% a month, \(1 - 0.95^{12} \approx 0.46\), about 46% a year, less than 12 times 5% = 60%). |
| average customer lifetime | How many months one customer stays subscribed on average. When customers cancel at a steady churn rate each month, the average lifetime is the reciprocal of the churn rate (100 ÷ churn rate). Also called customer lifespan. |
| expected value of a geometric distribution | The average number of tries until something with the same chance every time happens for the first time. With probability \(p\), it is \(1 \div p\). If cancellation happens with a chance of 5% each month (\(p = 0.05\)), customers cancel in month \(1 \div 0.05 = 20\) on average. This is the basis for the average lifetime on this page. |
| discount rate (present value) | The rate used to convert future money into today's value, on the idea that "$100 a year from now is worth less than $100 today". A strict LTV sometimes discounts future revenue with a discount rate, but this page uses a simple undiscounted total. |
| customer acquisition cost (CAC) | The cost of winning one new customer (ad and sales costs ÷ customers won). The basic use is to put it next to LTV and ask "how many times CAC is LTV?" (the LTV:CAC ratio). A gross profit LTV of about 3 times CAC is often cited as a healthy benchmark. |
| subscription | A business where customers keep paying monthly or yearly. Video and music streaming services are subscriptions too. Monthly revenue is easy to predict, but every cancellation (churn) directly cuts revenue, so the churn rate and LTV are the most important metrics. |
| SaaS | Software as a service. A kind of subscription that provides software for a monthly fee. Every cancellation (churn) directly cuts revenue, so the churn rate and LTV are the most important metrics. |
Good to know before you start
Here is what helps you use the calculation on this page with real understanding, not just by pressing the button.
| Percents (Grades 6–7) |
|
| Unit rates (Grade 6) |
|
| Inverse variation (Grade 8 and Algebra 1) |
|
| Variables and rearranging equations (Grades 7–8) |
|
| Geometric series and expected value (Algebra 2 and statistics; you can skip this and still use the page) |
|
How to calculate it in Excel
| Average order value P ($) | 50 |
| Purchase frequency F (per year) | 4 |
| Customer lifespan T (years) | 3 |
| LTV (revenue basis, $) | =B1*B2*B3 |
| Monthly churn rate c (%) | 5 |
| Average lifetime L (months) | =100/B1 |
| ARPU A (monthly, $) | 30 |
| Average lifetime L (months) | 20 |
| LTV (revenue basis, $) | =B1*B2 |
| LTV (revenue basis, $) | 600 |
| Gross margin M (%) | 40 |
| LTV (gross profit basis, $) | =B1*B2/100 |
| Target LTV G ($) | 600 |
| Average order value P ($) | 50 |
| Purchase frequency F (per year) | 4 |
| Lifespan needed T (years) | =B1/(B2*B3) |
| ARPU A (monthly, $) | 30 |
| Gross margin M (%) | 40 |
| Target LTV G (gross profit, $) | 240 |
| Max monthly churn rate c (%) | =B1*B2/B3 |
For example, B4 of the first table shows 600 (LTV $600), B2 of the second shows 20 (20 months on average), B3 of the third shows 600, B3 of the fourth shows 240 (gross profit basis $240), B4 of the fifth shows 3 (3 years), and B4 of the sixth shows 5 (churn rate 5%). Just replace the inputs with your own numbers.
How to calculate it in Google Sheets
| Average order value P ($) | 50 |
| Purchase frequency F (per year) | 4 |
| Customer lifespan T (years) | 3 |
| LTV (revenue basis, $) | =B1*B2*B3 |
| Monthly churn rate c (%) | 5 |
| Average lifetime L (months) | =100/B1 |
| ARPU A (monthly, $) | 30 |
| Average lifetime L (months) | 20 |
| LTV (revenue basis, $) | =B1*B2 |
| LTV (revenue basis, $) | 600 |
| Gross margin M (%) | 40 |
| LTV (gross profit basis, $) | =B1*B2/100 |
| Target LTV G ($) | 600 |
| Average order value P ($) | 50 |
| Purchase frequency F (per year) | 4 |
| Lifespan needed T (years) | =B1/(B2*B3) |
| ARPU A (monthly, $) | 30 |
| Gross margin M (%) | 40 |
| Target LTV G (gross profit, $) | 240 |
| Max monthly churn rate c (%) | =B1*B2/B3 |
How to calculate it in Python
# Store/e-commerce: order value × frequency × lifespan
unit_price = 50 # average order value ($)
frequency = 4 # purchase frequency (per year)
years = 3 # customer lifespan (years)
gross_margin = 40 # gross margin (%)
ltv_purchase = unit_price * frequency * years # LTV (revenue basis)
ltv_purchase_gross = ltv_purchase * gross_margin / 100 # LTV (gross profit basis)
print(f"Store LTV (revenue basis): ${ltv_purchase}")
print(f"Store LTV (gross profit basis): ${ltv_purchase_gross}")
# Subscription: ARPU × average lifetime in months (= 100 ÷ churn rate)
arpu = 30 # monthly revenue per customer ($)
churn = 5 # monthly churn rate (%)
avg_months = 100 / churn # average lifetime (months)
ltv_subscription = arpu * avg_months # LTV (revenue basis)
ltv_subscription_gross = arpu * gross_margin / churn # LTV (gross profit basis) (= ARPU × gross margin ÷ churn rate)
print(f"Average lifetime: {avg_months} months")
print(f"Subscription LTV (revenue basis): ${ltv_subscription}")
print(f"Subscription LTV (gross profit basis): ${ltv_subscription_gross}")
# Work back: lifespan needed for a target LTV (store) and max monthly churn rate (subscription)
target_ltv = 600
required_years = target_ltv / (unit_price * frequency)
print(f"Lifespan needed for a target of ${target_ltv}: {required_years} years")
target_ltv_gross = 240
max_churn = arpu * gross_margin / target_ltv_gross
print(f"Max monthly churn rate for a gross profit target of ${target_ltv_gross}: {max_churn}%")
How to write it in LaTeX and other math languages (copy and paste)
LTV = P × F × T
\mathrm{LTV} = P \times F \times T
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>LTV</mi>
<mo>=</mo>
<mi>P</mi>
<mo>×</mo>
<mi>F</mi>
<mo>×</mo>
<mi>T</mi>
</mrow>
</math>
LTV = P xx F xx T
price*frequency*years
LTV := P*F*T;
LTV = P*F*T;
LTV = P × F × T
L = 100 ÷ c
L = \dfrac{100}{c}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>L</mi>
<mo>=</mo>
<mfrac><mn>100</mn><mi>c</mi></mfrac>
</mrow>
</math>
L = 100/c
100/churn
L := 100/c;
L = 100/c;
L = 100/c
LTV = A × L
\mathrm{LTV} = A \times L
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>LTV</mi>
<mo>=</mo>
<mi>A</mi>
<mo>×</mo>
<mi>L</mi>
</mrow>
</math>
LTV = A xx L
arpu*avgMonths
LTV := A*L;
LTV = A*L;
LTV = A × L
LTVg = LTV × M ÷ 100
\mathrm{LTV_{g}} = \mathrm{LTV} \times \dfrac{M}{100}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<msub><mi>LTV</mi><mi>g</mi></msub>
<mo>=</mo>
<mi>LTV</mi>
<mo>×</mo>
<mfrac><mi>M</mi><mn>100</mn></mfrac>
</mrow>
</math>
LTV_g = LTV xx M/100
ltv*margin/100
LTVg := LTV*M/100;
LTVg = LTV*M/100;
LTV_g = LTV × M/100
T = G ÷ (P × F)
T = \dfrac{G}{P \times F}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>T</mi>
<mo>=</mo>
<mfrac>
<mi>G</mi>
<mrow><mi>P</mi><mo>×</mo><mi>F</mi></mrow>
</mfrac>
</mrow>
</math>
T = G/(P xx F)
target/(price*frequency)
T := G/(P*F);
T = G/(P*F);
T = G/(P × F)
c = A × M ÷ G
c = \dfrac{A \times M}{G}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>c</mi>
<mo>=</mo>
<mfrac>
<mrow><mi>A</mi><mo>×</mo><mi>M</mi></mrow>
<mi>G</mi>
</mfrac>
</mrow>
</math>
c = (A xx M)/G
arpu*margin/target
c := A*M/G;
c = A*M/G;
c = (A × M)/G
How to have ChatGPT do the calculation
You are a calculation assistant for marketing metrics. Do the following calculation by actually running Python code, and base your answer only on the numbers from the execution result (do not answer by mental math or guessing). Customers of an online store spend $50 per order on average, buy 4 times a year, and keep buying for 3 years on average. The gross margin is 40%. Find each of the following: 1. LTV on a revenue basis (average order value × purchase frequency × lifespan) 2. LTV on a gross profit basis (revenue LTV × gross margin ÷ 100) 3. For a different subscription service: with $30 of monthly revenue per customer, a 5% monthly churn rate and a 40% gross margin, the average lifetime in months (100 ÷ churn rate) and the LTV on a revenue basis and a gross profit basis (ARPU × average lifetime; ARPU × gross margin ÷ churn rate) 4. For that subscription, the max monthly churn rate if I want a gross profit LTV of $300 or more (ARPU × gross margin ÷ target LTV) Show the formulas you used and the numbers from the execution result.
How to Use
-
1Enter your numbersType the numbers you want to calculate with into the input fields
-
2CalculatePress the "Calculate" button
-
3Check the resultThe result appears on the spot. The same page also explains the idea behind the calculation and the formula
DataChef Features
No technical knowledge required.
Intuitive and user-friendly operation.
Can be used without registering personal information.
Automatic file deletion by clicking "download".
and rapid file conversion.
No attribution required.
No need to contact us for commercial use permission.
