Blog · Board and management reporting · Software
Average SaaS churn depends on customer size, contract term, renewal opportunities and revenue definitions. Work through a billing-export example that separates logo losses, renewal losses and the recurring revenue bridge.
Average SaaS churn is a useful benchmark only when customer cohorts, contract terms and reporting periods match. Separate lost customer accounts from recurring revenue losses, then check which customers actually had a renewal decision during the period. A low monthly loss rate on annual contracts can reflect limited renewal exposure.
Account churn, often called logo churn, counts lost customer relationships. Revenue churn measures the recurring value lost from the starting customer base. Cancellation-only revenue losses, gross losses including downgrades and net losses after expansion are different measures.
Use the churn glossary for the general definition. For a SaaS comparison, also record account size, contract term, product group, acquisition cohort and customer age. Those attributes help you compare businesses with similar cancellation opportunities and service expectations.
An external average needs a publication date, observation dates, sample description and calculation method. The SEC's guidance on performance metrics emphasizes clear definitions and how management uses a measure. Apply that same reading discipline before putting a benchmark beside your internal result.
The broader average churn rate guide covers internal weighting. This page focuses on the SaaS contract terms and billing rows that make an apparently simple comparison difficult.
Keep one stable customer-account identifier across the files. Subscription identifiers are useful for matching records, but several subscriptions can belong to the same customer. Canceling one subscription does not necessarily mean the customer relationship ended.
Bring the opening account list, effective cancellation dates, contract terms, scheduled renewal dates and recurring amounts. Normalize recurring contract values to a consistent monthly basis. Exclude taxes and one-time charges under a documented rule, and apply the same discount treatment throughout the comparison.
The settings behind an export matter. Stripe's billing analytics documentation describes configurable discount treatment and definitions of when a subscriber becomes active. Record the supplied settings instead of assuming every exported recurring revenue figure uses the same basis.
Freeze segment membership at the start. An account that changes plan during the month stays in its original comparison cohort, with the plan change recorded separately. That preserves the starting denominator and makes the movements auditable.
Consider a fictional US SaaS provider during September 2026. Its monthly contracts can renew each month. Its annual contracts permit cancellation at annual renewal, and all effective cancellations in this example occur at renewal. The annual group therefore has fewer renewal opportunities during the month.
| Starting contract group | Starting accounts | Accounts due to renew | Accounts lost | Retained starting accounts |
|---|---|---|---|---|
| Monthly | 400 | 400 | 20 | 380 |
| Annual | 100 | 20 | 2 | 98 |
| Total | 500 | 420 | 22 | 478 |
These are illustrative internal cohorts, not published SaaS averages. The account calculations expose the difference between the starting base and renewal opportunities:
| Measure | Monthly contracts | Annual contracts |
|---|---|---|
| Losses / starting accounts | 20 / 400 = 5.0% | 2 / 100 = 2.0% |
| Losses / accounts due to renew | 20 / 400 = 5.0% | 2 / 20 = 10.0% |
Percentages in these tables are rounded to one decimal place. Annual contracts look stronger against the full starting base, but weaker among the accounts facing renewal. Neither calculation is wrong; each answers a different question.
The company starting-base customer churn is 22 / 500 = 4.4%. Prove the count by reconciling 500 starting accounts minus 22 losses to 478 retained accounts. New accounts acquired during September belong outside that proof.
The same fictional provider has the following opening recurring revenue and cancellation losses. Both columns use monthly recurring amounts, including for annual contracts.
| Starting contract group | Starting recurring revenue (USD) | Canceled recurring revenue (USD) | Cancellation-related revenue churn |
|---|---|---|---|
| Monthly | 80,000 | 4,000 | 5.0% |
| Annual | 100,000 | 10,000 | 10.0% |
| Total | 180,000 | 14,000 | 7.78% |
The total is 14,000 / 180,000 = 7.78%, rounded to two decimal places. The annual group's few lost accounts carry substantial recurring value, so its low starting-base account churn does not imply low revenue exposure.
Now add downgrades and expansion from the retained starting accounts. New-customer revenue remains excluded.
| Starting-cohort revenue bridge | Recurring amount (USD) |
|---|---|
| Starting recurring revenue | 180,000 |
| Less cancellations | -14,000 |
| Less contraction | -2,000 |
| Plus expansion | 9,000 |
| Ending recurring revenue from the starting cohort | 173,000 |
Gross revenue churn including contraction is (14,000 + 2,000) / 180,000 = 8.89%. Net revenue churn is (14,000 + 2,000 - 9,000) / 180,000 = 3.89%. Both percentages are rounded to two decimal places.
The bridge proves the net loss: $180,000 minus $173,000 equals $7,000, the same amount as cancellations plus contraction minus expansion. Keep these measures labeled; calling all of them revenue churn would conceal the decision each supports.
Finance should own recurring revenue definitions and the opening-to-closing bridge. Revenue operations should maintain account identities, contract terms and renewal dates. Customer success should investigate outcomes among accounts with a renewal opportunity.
For annual customers approaching that opportunity, seat utilization before renewal provides a separate usage comparison. After establishing the loss pattern, review SaaS churn reasons rather than assuming a benchmark gap identifies the cause.
Use the same cohorts across repeated, equal windows. For annual contracts, also inspect completed renewal cycles so a quiet month is not mistaken for durable improvement. A broader industry churn comparison is useful only after these internal definitions are stable.
Covirage is not affiliated with Stripe.
Bring a sample of your own billing, customer status and contract exports to Covirage. Covirage maps the columns, and its tools compute and check the cohort counts and recurring revenue figures; the external AI model explains the result with every figure traced to its rows. Create a free Covirage account, which takes about a minute, then set up your business and bring your file.
See Covirage for SaaS teams for the supporting business context.
A useful target depends on customer size, contract duration, renewal terms and revenue concentration. Compare your own like-for-like cohorts before judging an outside average. A result that looks favorable on account count can still conceal the loss of valuable recurring revenue.
Both periods can be useful if they are labeled clearly. Monthly reporting identifies recent changes, while a full contract cycle captures more renewal opportunities. Do not compare monthly cancellation rates directly with annual cohort losses or renewal-only outcomes.
No. An upgrade by a retained customer does not bring back a lost customer account. Expansion can offset losses in net revenue churn, so report customer churn and gross revenue losses alongside the net measure.
A failed payment is an event to investigate, not automatically a lost account. Apply your approved effective-loss rule and distinguish unresolved balances from terminated service. Keep payment-related losses separate from deliberate cancellations when reviewing the reasons behind churn.