SaaS Metrics for Beginners: MRR, Churn, LTV and CAC Explained (2026)

Plain-English definitions of the subscription metrics that matter, how to calculate each one with worked examples, and the mistakes that make small SaaS numbers look better than they are.

Floot ·

Key Takeaways

  • MRR counts only recurring, paying subscriptions. Normalize annual plans to monthly, and leave out taxes, one-off fees, free plans and trials.
  • Churn is the metric that compounds. At 10% monthly subscriber churn, Stripe’s own example shows a cohort falling to 59% by month five.
  • LTV is ARPU divided by churn, as an estimate. It is only as good as your churn number, and with a few months of data it is a rough guess.
  • Track paid CAC separately from blended CAC. Blended CAC includes free word-of-mouth customers and can hide unprofitable ad spend.
  • At the start, watch four numbers. New MRR, churned MRR, trial conversion and how long a customer takes to pay back what you spent to get them.

Quick-Start Prioritization Framework

MetricSimple formulaWatch it when
MRRSum of monthly-normalized paid subscriptionsFrom your first paying customer
Subscriber churn rateChurned ÷ (active at start + new in period)Once you have about 20 or more subscribers
ARPUMRR ÷ active subscribersWhen you add tiers or change prices
LTV (estimate)ARPU ÷ monthly churn rateWhen deciding how much to spend on acquisition
CACAcquisition spend ÷ new customers acquiredAs soon as you spend money on ads or sales
CAC paybackCAC ÷ monthly gross profit per customerBefore scaling any paid channel

Subscription businesses are judged on a handful of numbers: monthly recurring revenue, churn, customer lifetime value and the cost of acquiring a customer. Each is simple to define and surprisingly easy to calculate wrongly, usually in a direction that flatters the business. This guide defines each metric the way Stripe’s Billing analytics does (so you can check your own numbers against the dashboard), walks through a worked example for each, and explains which ones to watch at each stage. You need a spreadsheet and your billing data; no finance background required.

MRR: monthly recurring revenue

MRR is the monthly value of all the subscriptions currently paying you. It is the headline number of any subscription business, and the one most often inflated by accident.

The definition

Stripe defines MRR as the sum of the monthly-normalized value of all active and past_due subscriptions. It excludes taxes, subscribers on free plans and metered (usage-based) products. A subscription that is canceled or marked unpaid stops counting and is treated as churn.

Worked example

You have 100 subscribers on a $25 monthly plan and 30 on a $240 annual plan. Normalize the annual plan to $20 a month. MRR is (100 × $25) + (30 × $20) = $2,500 + $600 = $3,100. Stripe’s documentation uses the same approach: annual prices are divided by 12.

What does not belong in MRR

One-off setup fees, consulting work, refunds-to-be and the full value of an annual payment in the month it arrives. Andreessen Horowitz’s guide to startup metrics warns that multiplying one month’s bookings by 12 often overstates annual recurring revenue because it sweeps in non-recurring charges.

MRR movements: where growth comes from

Total MRR tells you where you are. The movements tell you why.

The five components

Stripe breaks MRR growth into new MRR (first-time paying subscribers), expansion MRR (upgrades), reactivation MRR (returning customers), contraction MRR (downgrades) and churned MRR (cancellations). Net new MRR is the first three minus the last two.

Worked example

Start the month at $3,100. Add $400 from 16 new $25 subscribers, $60 from three customers upgrading by $20, and $25 from one reactivation. Subtract $40 from two $20 downgrades and $250 from ten $25 cancellations. Net new MRR is $400 + $60 + $25 − $40 − $250 = $195, so you end at $3,295.

Why it matters

Two businesses with the same $195 net growth can be very different: one adding $200 and losing $5, the other adding $2,000 and losing $1,805. The second has a churn problem that more marketing will only make more expensive.

Churn: the number that compounds

Churn is the share of customers or revenue you lose in a period. Small differences become large over a year.

Subscriber churn rate

Stripe calculates subscriber churn as churned subscribers in the past 30 days divided by the active subscribers 30 days ago plus new subscribers in the past 30 days. Its example: 1,000 subscribers at the start of the month, 100 added and 100 churned gives 100 ÷ 1,100, or 9.1%.

Revenue churn

Stripe’s churned revenue is churned MRR plus contraction MRR. Losing a $200 customer hurts more than losing a $10 one, which subscriber churn alone hides. The a16z guide also distinguishes gross churn (MRR lost) from net churn (MRR lost minus upsells), noting that net churn can understate the real loss.

How it compounds

Stripe’s cohort example shows that with 10% monthly subscriber churn, a cohort retains 90% after month one, 81% after two, 73% after three, 66% after four and 59% after five. At 3% monthly churn, the same arithmetic (0.97 to the power of 12) leaves about 69% after a year; at 8%, about 37%.

Split voluntary from involuntary

Stripe counts a subscription marked unpaid after failed retries as churn, the same as a cancellation. Separate the two in your own tracking. Failed-payment churn is fixed with retries and reminder emails; voluntary churn is fixed with the product.

ARPU and LTV

Average revenue per user and lifetime value tell you what a typical customer is worth.

ARPU

Stripe defines ARPU as total MRR divided by active subscribers. In the example above, the month ends with 137 active subscribers (130 + 16 new + 1 reactivated − 10 churned) and $3,295 of MRR, so ARPU is about $24.05. Downgrades and upgrades change ARPU without changing the subscriber count, which is why it is worth watching after any pricing change.

LTV: the simple estimate

Stripe calculates subscriber lifetime value as ARPU divided by subscriber churn rate. Its example: $500 ARPU and 9% monthly churn gives $500 ÷ 0.09, about $5,555. For a small SaaS at $25 ARPU and 5% monthly churn, LTV is $25 ÷ 0.05 = $500.

Use margin, not revenue

The a16z guide cautions that a revenue-based LTV sets a higher ceiling on what you can spend to acquire customers than is safe, and suggests a contribution-margin LTV for a realistic limit. If hosting, AI calls, payment fees and support cost $6 of each $25, use $19 as the monthly figure: $19 ÷ 0.05 = $380.

Treat early LTV as a guess

With a few months of data, churn is noisy and LTV swings wildly. The a16z guide suggests measuring actual 12 and 24 month value per customer once you have it, rather than leaning on a formula.

CAC and payback

Customer acquisition cost tells you what you spend to win a customer. Payback tells you how long it takes to earn that back.

Blended vs paid CAC

Blended CAC divides all acquisition spend by all new customers, including the ones who arrived through word of mouth. Paid CAC divides spend on a channel by the customers that channel brought. The a16z guide notes that blended CAC isn’t wrong but doesn’t show whether paid campaigns are profitable, which is why investors look at both.

Worked example

You spend $1,200 on ads in a month and they bring 15 paying customers, so paid CAC is $80. Another 10 customers arrive from referrals, so blended CAC is $1,200 ÷ 25 = $48. The blended number looks better, but only the paid one tells you whether to spend more on ads.

Payback period

Divide CAC by the monthly margin per customer. With $80 paid CAC and $19 margin, payback is about 4.2 months. With 5% monthly churn, about 81% of those customers are still around after four months (0.95 to the power of 4), so the channel roughly pays for itself; if churn were much higher, it wouldn’t.

Trial and activation metrics

Before you have meaningful churn data, the top of the funnel tells you the most.

Trial conversion rate

Stripe defines it as trials that converted to paid in the last 30 days divided by trials that ended in the last 30 days; 15 conversions from 100 ended trials is 15%. Note that Stripe excludes trialing subscriptions from MRR and active subscriber counts, so a surge of trials won’t show up as revenue until they convert.

Activation

Pick one action that predicts a customer will stay (created their first project, invited a client, sent their first report) and measure what share of new sign-ups do it in their first week. It is the earliest warning you get about churn.

Which metrics to watch at each stage

You don’t need a dashboard of 30 numbers. Match the metrics to where you are.

StageWatchIgnore for now
0 to 20 paying customersActivation, trial conversion, reasons people cancel (ask them)LTV, churn percentages (too few data points)
20 to 200MRR movements, subscriber churn, failed-payment recoveryDetailed cohort analysis
Spending on adsPaid CAC, payback period, margin-based LTVBlended CAC on its own
200 and upRevenue churn, expansion MRR, cohort retentionVanity totals such as all-time sign-ups

Common mistakes

These make small SaaS numbers look better than they are.

  • Counting the full annual payment as one month’s MRR.
  • Including trials, free plans or one-off fees in MRR.
  • Reporting only net churn, which can hide real customer loss behind a few upgrades.
  • Using revenue instead of margin in LTV, then overspending on ads.
  • Quoting blended CAC to justify a paid channel.
  • Calculating churn percentages from a dozen customers and treating them as stable.
  • Mixing failed-payment churn with cancellations, so you fix the wrong problem.

If you’d rather not build the dashboard yourself

If you’d rather not assemble these reports by hand, Floot can build an internal metrics page for your app from a plain-English description, reading from your app’s own Postgres database. Stripe’s Billing analytics also shows most of these metrics if your subscriptions run on Stripe Billing.

Frequently Asked Questions

What is a good churn rate for a small SaaS?

It depends heavily on price and customer type; products sold to small businesses and consumers usually churn faster than those sold to larger companies. Rather than chasing a benchmark, track your own trend and the reasons people leave, and separate failed payments from cancellations.

How do I calculate MRR with annual plans?

Divide each annual price by 12 and add it to your monthly subscriptions. A $240 annual plan contributes $20 of MRR. Don’t count the whole payment in the month it arrives.

What is the difference between MRR and ARR?

ARR is annual recurring revenue, usually MRR × 12. Both should include only recurring subscription revenue, not setup fees or services.

How do I calculate customer lifetime value?

The simple estimate is ARPU divided by monthly churn rate: $25 ARPU at 5% churn is $500. For spending decisions, use monthly margin per customer instead of ARPU, and replace the estimate with actual 12 and 24 month values once you have them.

What counts in customer acquisition cost?

Everything you spend to win customers in a period: ads, sponsorships, sales commissions, tools and, if you want the full picture, the cost of your own or your team’s time on sales and marketing. Calculate it per channel as well as overall.

Does Stripe calculate these metrics for me?

Stripe’s Billing analytics reports MRR, MRR growth, active subscribers, ARPU, subscriber lifetime value, trial conversion, subscriber churn, churned revenue and cohort retention for subscriptions on Stripe Billing. It doesn’t know your ad spend, so CAC is yours to calculate.

Sources