SaaS Metrics 19 min read

Churn Analysis Template: Monthly Report, Cohort Table & Reason Codes

A complete churn analysis template: monthly churn report structure, cohort table, reason code taxonomy, and a step-by-step methodology for SaaS operators and CS leaders.

Siddharth Gangal

Most SaaS teams do not lack churn data. They lack a structured way to interrogate it. Their monthly report says "churn was 2.3%" and stops there — no cohort breakdown, no reason code distribution, no signal on whether the trend is improving or deteriorating. Decisions get made on gut feel and individual anecdotes from the CS team.

This post provides the complete framework: the exact structure of a monthly churn report, a cohort retention table you can build in a spreadsheet, a reason code taxonomy with sub-categories, a time-to-churn distribution methodology, and a six-step analysis process. The goal is a repeatable system you can run every month and present to leadership with precision.

Why Most Churn Analysis Fails to Drive Action

Churn analysis fails at three recurring failure points. First, it conflates logos with revenue. A company cancelling a $2,400 annual contract and a company cancelling a $240,000 contract both register as one churned customer. Aggregate logo churn rates obscure whether you are bleeding volume or value.

Second, it uses a single reason code per account. In reality, churn is almost always multi-causal. A customer who says "price" typically means the perceived value-to-price ratio failed, not that they found something cheaper. Single-code capture loses the nuance that would have flagged the product gap or onboarding failure underneath.

Third, it measures the present rather than the leading edge. Monthly churn tells you what already happened. Cohort analysis, usage decline curves, and time-to-churn distributions tell you what is about to happen — which is the only version of the data you can act on.

The template structure below addresses all three.

Churn Benchmarks by Segment

Before structuring your analysis, calibrate against industry benchmarks for your segment. Churn rates vary significantly by average contract value, billing model, and customer type.

Segment Typical ACV Monthly Logo Churn Annual Logo Churn Target NRR
SMB < $5,000 3–5% 30–46% 90–100%
Mid-Market $5,000–$50,000 1–2% 11–22% 105–115%
Enterprise > $50,000 < 0.5% < 6% 115–130%

A few calibration notes. SMB churn is structurally elevated — many small businesses fail or freeze software spend during downturns independent of product quality. Benchmark your SMB cohort against companies with a similar ICP, not best-in-class enterprise SaaS. For mid-market products, net revenue retention is the more useful benchmark: median NRR for public SaaS companies at the mid-market tier runs around 110–115%, with top quartile above 120%. Enterprise products with strong expansion motions regularly achieve 125–135% NRR even when gross logo churn runs 4–5%.

Research from Bessemer Venture Partners and OpenView consistently shows that companies with NRR above 120% grow significantly faster and achieve higher exit multiples, regardless of their gross logo churn rate. Revenue retention is the compounding variable; logo churn is the leading indicator to watch.

Monthly Churn Report Template

The monthly churn report is your operating document — the structured view that goes to leadership, informs CS team priorities, and tracks improvement against targets. It has five sections.

Section 1: Headline Metrics Summary

A single table covering the four core numbers for the period, with month-over-month change and year-to-date context:

Metric This Month Prior Month MoM Change YTD Average Target
Gross Logo Churn Rate [X]% [X]% [±X]% [X]% [X]%
Gross MRR Churn Rate [X]% [X]% [±X]% [X]% [X]%
Net MRR Churn Rate [X]% [X]% [±X]% [X]% [X]%
Net Revenue Retention [X]% [X]% [±X]% [X]% [X]%

Gross MRR churn rate is calculated as MRR lost to cancellations divided by MRR at the start of the period. Net MRR churn subtracts expansion MRR from the same denominator. NRR is the trailing 12-month calculation: (Beginning ARR + Expansion ARR − Churned ARR − Contracted ARR) ÷ Beginning ARR.

Section 2: Churned Account Register

A row-level log of every account that churned in the period. Columns include:

Column Description
Account Name Customer identifier
ACV / MRR Revenue value at point of cancellation
Segment SMB / Mid-Market / Enterprise
Tenure (months) Months from contract start to cancellation date
Cohort Acquisition month (YYYY-MM)
Primary Reason Code Top-level reason (see taxonomy below)
Secondary Reason Code Supporting cause, if identified
Churn Signal Date Date the at-risk signal first appeared in data or CS notes
Winback Eligible Yes / No / In Progress
CS Owner Assigned CSM at time of cancellation

The churn signal date column is frequently omitted but is one of the most valuable fields. It lets you calculate intervention lag — the gap between when the account was flagged as at-risk and when it actually churned. If your median intervention lag is 45 days and most of your churn closes within 30 days of the signal, you have a structural response-time problem, not a retention program problem.

Section 3: Churn by Segment and Cohort

A summary breakdown that distributes churned logos and churned MRR across your segment taxonomy. This reveals whether churn is concentrated in a particular tier, which drives very different responses. SMB churn concentrated in months 1–3 typically points to an onboarding or product-market fit issue. Enterprise churn concentrated in years 2–3 typically points to executive sponsor turnover or a competitive displacement event.

Section 4: Reason Code Distribution

A bar or table view of churned MRR attributed to each top-level reason code, with percentage share. Track this distribution over 3, 6, and 12-month rolling windows. Sudden shifts in the distribution — not the absolute rate — are the signal. A shift from "product missing feature" (predictable, fixable) to "budget / company financial" (macro, uncontrollable) reads very differently and demands a different operational response.

Section 5: Commentary and Actions

A 3–5 bullet narrative covering: (1) what changed versus prior month and why, (2) which cohort or segment is driving the movement, (3) which reason codes are increasing in share, (4) active retention interventions and their status, and (5) the updated forecast for next month's churn rate based on known at-risk accounts.

Cohort Retention Table

The cohort retention table is the single most informative view in churn analysis. It answers the question that aggregate monthly metrics cannot: is the product getting stickier or more fragile for new cohorts over time?

Table Structure

Rows represent acquisition cohorts by month. Columns represent tenure intervals: Month 0 (100% by definition), then Month 3, 6, 9, 12, 18, 24, and 36. Each cell shows the percentage of the original cohort still active (logo retention) or the percentage of the original MRR still billing (revenue retention).

Cohort Starting Accounts Starting MRR M3 M6 M12 M18 M24
2024-01 48 $52,400 88% 79% 65% 58% 54%
2024-04 61 $71,200 90% 83% 70% 64%
2024-07 74 $89,600 92% 85% 71%
2024-10 83 $104,000 91% 84%
2025-01 97 $128,500 94%

In this example, the M3 retention trend is improving (88% → 94%), suggesting onboarding improvements are working. The M12 retention appears stable at 65–71%, but the sample is small enough that you would not draw conclusions until at least three cohorts are visible at the same tenure mark.

Revenue-Weighted Cohort Table

Run the same table using MRR rather than account count. In many SaaS businesses, revenue retention diverges significantly from logo retention — particularly when larger accounts expand over time. A cohort showing 60% logo retention but 95% revenue retention is a very different business than one showing 60% of both. The revenue-weighted table surfaces your actual economic exposure.

Reading the Cohort Table

Four patterns are worth explicit attention. A steepening early curve (M3 retention falling cohort over cohort) signals a product-market fit or onboarding problem with recent acquisition. A flattening at M12 (retention stabilizing after month 12) suggests a long-term sticky core — customers who stay past a year tend to stay for several years. Diverging logo vs. revenue retention after M12 typically indicates expansion in your retained base. And a re-acceleration of churn between M18 and M24 often correlates with contract renewal timing — if your standard initial term is two years, the M24 column is your renewal cohort and deserves its own analysis.

Reason Code Taxonomy

Standardized reason codes are the foundation of actionable churn analysis. Without them, every CSM describes the cancellation differently and no pattern ever accumulates. The taxonomy below covers the eight top-level codes that account for the vast majority of B2B SaaS churn, with two to three sub-reasons each.

Code Top-Level Reason Sub-Reasons Typical Share
PROD-FIT Product does not meet needs Missing feature; poor UX; workflow mismatch; integration gap 20–30%
PRICE Price / value perception Too expensive for usage level; perceived ROI insufficient; cheaper alternative found 15–25%
COMP Competitive displacement Switched to named competitor; built in-house; consolidated into suite 10–20%
ONBOARD Onboarding / adoption failure Never fully implemented; champion left during onboarding; team did not adopt 10–15%
BUDGET Budget / financial constraints Company cost-cutting; fundraising failed; budget freeze; company shutdown 10–20%
CHAMP Champion / sponsor departure Champion left the company; reorganization; new executive with different vendor preference 8–15%
SUPPORT Support / service failure Repeated unresolved issues; slow response times; data quality problem; reliability incident 5–10%
STRAT Strategic / business change Company acquired; product sunset; pivot away from use case; M&A consolidation 3–8%

Tagging Protocol

The reason code is only as reliable as the tagging discipline behind it. Three rules prevent taxonomy drift. First, the primary reason code is tagged by the CSM who ran the cancellation call — not the account manager, not the billing team, and not inferred from the cancellation survey alone. Direct conversation context is irreplaceable. Second, if two reasons are approximately equal in weight, tag both — but require the CSM to designate one as primary. Third, the tag is locked at the time of cancellation and never retroactively changed to fit a narrative. Historical integrity matters more than any individual quarter's optics.

Require CSMs to add a 1–2 sentence verbatim quote from the cancellation conversation alongside the reason code. This is the qualitative layer that turns a distribution chart into actionable product or CS guidance.

Time-to-Churn Distribution

Time-to-churn analysis asks: at what tenure mark does churn actually happen? The distribution shapes where you invest in prevention.

How to Build the Distribution

Take your full population of churned accounts over a trailing 24-month window. For each account, calculate tenure at churn: the number of months between contract start date and cancellation date. Group into buckets: 0–3 months, 4–6, 7–12, 13–18, 19–24, and 25+ months. Plot the count and the MRR value of churned accounts in each bucket.

A typical mid-market SaaS distribution looks approximately like this:

Tenure at Churn % of Churned Logos % of Churned MRR Primary Reason Codes
0–3 months 18% 11% ONBOARD, PROD-FIT
4–6 months 22% 17% PROD-FIT, PRICE
7–12 months 28% 25% PRICE, COMP, PROD-FIT
13–18 months 18% 23% COMP, CHAMP, BUDGET
19–24 months 9% 14% CHAMP, STRAT, BUDGET
25+ months 5% 10% STRAT, COMP

In this example, 40% of churned logos leave within the first six months. That is an onboarding and early-value problem, not a renewal problem. Allocating significant CS capacity to 12-month QBRs while neglecting the first 90-day experience is a misallocation of retention investment.

Survival Curve Interpretation

The survival curve version of this data — showing the cumulative percentage of a cohort still active at each time point — reveals the characteristic shape of your retention problem. A steep drop in months 1–3 followed by a flat curve indicates a filtering dynamic: customers who survive early churn are strong fits and stay. A gradually declining curve with no clear inflection indicates diffuse product-value attrition — the product is slowly losing relevance for a broad population rather than sharply failing a specific subset.

Step-by-Step Analysis Methodology

The template sections above are only useful if they feed a consistent analytical process. Here is the six-step methodology for running your monthly churn analysis.

1

Pull and validate the raw cancellation data

Export every subscription cancellation event for the period from your billing system (Stripe, Chargebee, Recurly). Match each cancellation to its CRM account record to retrieve segment, tenure, and CSM. Flag any accounts with missing fields — reason codes, tenure, or MRR — as requiring manual lookup before the report closes. Data quality issues are the most common source of misleading churn analysis.

2

Calculate and verify the four headline metrics

Gross logo churn = cancelled accounts ÷ active accounts at period start. Gross MRR churn = cancelled MRR ÷ MRR at period start. Net MRR churn = (cancelled MRR − expansion MRR) ÷ MRR at period start. NRR = trailing 12-month calculation. Cross-check gross MRR churn against your billing reconciliation — if they diverge by more than 0.2%, there is a timing or definition mismatch that needs resolution before publishing.

3

Update the cohort retention table

Add the new month's data to each active cohort row. Any cohort that has now reached a tenure milestone (M3, M6, M12) gets its retention percentage locked. Flag any cohort showing an unexpected retention drop at a milestone — a cohort at 85% at M6 falling to 72% at M9 rather than the expected 79% warrants immediate investigation before the next reporting cycle.

4

Aggregate and analyze reason codes

Calculate the reason code distribution for the current month, the rolling 3-month average, and the rolling 12-month average. Look for codes that are increasing in share relative to their 12-month baseline. A code that was 12% of churn six months ago and is now 22% is a leading indicator of a systemic problem, even if the absolute churn rate has not moved significantly. Cross-tabulate reason codes by segment and tenure bucket to identify whether the problem is broad or concentrated.

5

Run the qualitative review

For every churned account above your MRR materiality threshold (typically top 20% by value), read the CSM notes and the verbatim cancellation quote. Identify patterns that the reason code taxonomy may not have captured. This is where you find emerging competitive threats, product gaps not yet in the taxonomy, and onboarding failure modes that are too specific to have surfaced statistically. Document new patterns and evaluate whether the taxonomy needs a new sub-reason code.

6

Forecast next month and assign actions

Query your at-risk account list from the CRM — accounts with red health scores, logged cancellation intent, overdue QBRs, or usage below your churn signal threshold. Sum the MRR at risk to produce a conservative and a base-case churn forecast for next month. For each at-risk account above your MRR threshold, confirm there is a named CSM owner, an active save play in progress, and a next touch date within five business days.

The Six Most Common Churn Drivers

Research across B2B SaaS consistently surfaces the same underlying causes, even when companies describe them differently. Understanding the mechanism behind each driver is necessary to assign the right fix.

1. Onboarding Failure — Time-to-Value Not Achieved

The most controllable churn driver. A customer who does not reach their first meaningful outcome within 30–45 days of sign-up has a materially higher churn probability by month 6. The mechanism is expectation decay: the original problem that motivated the purchase remains unsolved, and competing priorities erode attention. The fix is a defined activation milestone — a specific, measurable outcome the customer achieves in the product — with a CS playbook triggered if the account misses it.

2. Champion Departure

Champion departure churns accounts at 2–3x the base rate in most B2B SaaS products. When the internal advocate who drove the buying decision leaves, the new stakeholder inherits a tool they did not choose, often without the context of why it was purchased. Champion departure churn is not fully preventable, but it is detectable. A LinkedIn job-change alert on every account contact with an admin role, combined with an automated CS outreach sequence to the new stakeholder within two weeks of detection, reduces the churn conversion rate of champion departures by roughly 30–40%.

3. Feature Gaps Compounding Over Time

Individual missing features rarely churn accounts. A pattern of accumulated gaps — where each quarter brings one more workaround, one more thing the product does not do — erodes perceived value steadily. The signature of this driver in your data is PROD-FIT churn concentrated in the 7–18 month tenure bucket, often from your most sophisticated and demanding customers. Those accounts' reason code verbatims should go directly to product leadership every month.

4. Usage Decline as a Leading Indicator

Usage collapse precedes churn by a median of 60–90 days in most SaaS products. An account whose weekly active users drop from 12 to 3 over a six-week period has likely already made the decision to churn — they are in wind-down mode, not disengagement mode. The distinction matters: a CS intervention at the usage-collapse signal is a save play. An intervention after the drop has persisted for six weeks is frequently a damage-limitation exercise. Instrument your product to surface this signal and set a threshold that triggers a CS alert automatically.

5. Pricing Model Misalignment

This is distinct from the customer finding the product too expensive. Pricing model misalignment occurs when the unit on which you charge does not track with the value the customer receives. A company billed per seat that primarily uses your product for a single power user will feel the price is wrong even if the absolute dollar amount is modest. Over time, the perception hardens into a cancellation rationale. These accounts almost always describe their reason as PRICE, which obscures the actual problem. The verbatim note is the diagnostic: "we only use it for one person" or "we're paying for 10 seats but only 3 people actually use it" points to a pricing model problem, not a cost sensitivity problem.

6. Competitive Displacement at Renewal

Competitive churn is most common at contract renewal milestones, when customers run a formal evaluation as part of budget review. The accounts most susceptible are those that have not experienced measurable ROI, whose champion has changed, or whose industry is being targeted by a new entrant with aggressive pricing. Tracking competitive displacement by named competitor in your COMP sub-reason data surfaces emerging threats early — typically 2–4 quarters before they appear in win/loss analysis, since CS hears about it in retention conversations before sales encounters it in new business.

Frequently asked questions

What is a good monthly churn rate for SaaS? +

Benchmark churn varies sharply by segment. SMB-focused SaaS typically sees monthly logo churn of 3–5% (roughly 31–46% annualized), which is structurally elevated because smaller businesses fail or cut tools frequently. Mid-market products target 1–2% monthly logo churn. Enterprise-focused SaaS should aim for monthly churn below 0.5%, translating to under 6% annually. Net Revenue Retention is the more actionable metric: best-in-class SaaS companies achieve NRR above 120%, meaning expansion revenue more than offsets any churn.

What is the difference between logo churn and revenue churn? +

Logo churn counts the percentage of accounts that cancelled in a period, regardless of contract size. Revenue churn measures the percentage of recurring revenue lost. A single enterprise cancellation can move revenue churn 5–10 percentage points while barely registering on logo churn. Operators should track both, but weight strategic decisions toward net revenue retention since it captures expansion as well as churn and gives the clearest view of revenue trajectory.

How many churn reason codes should a CS team use? +

Between six and twelve top-level reason codes. Fewer than six forces consolidation that hides actionable signal — "product" and "price" belong in separate buckets. More than twelve creates tagging inconsistency and dilutes each category below statistical significance. The most effective taxonomies have 8–10 top-level codes, each with 2–3 sub-reasons tracked separately. Sub-reasons matter for root-cause work but should not appear in executive reporting — roll them up to their parent for board-level summaries.

What is cohort churn analysis and why does it matter? +

Cohort churn analysis groups customers by the period they signed and tracks what fraction of each cohort remains active at subsequent time intervals (month 3, 6, 12, 18, 24). It matters because aggregate monthly churn rates hide deterioration. A company could show flat 2% monthly churn while its newest cohorts are churning at 4% by month 6 — a trend that will only surface in aggregate metrics six to twelve months later when the damage is much harder to reverse. Cohort tables make that signal visible in near real-time.

What data do you need to run a complete churn analysis? +

Six data sets cover most churn analyses: subscription lifecycle events with MRR values; product usage data (DAU/WAU/MAU, feature adoption flags, last-active dates); support ticket history per account; customer firmographics (segment, industry, ARR tier); churn exit surveys or CS notes tagged to a reason code taxonomy; and NPS/CSAT scores with timestamps. The most commonly missing data set is reliable product usage linked to the CRM account ID — that gap alone eliminates most leading-indicator analysis.

When should you run a time-to-churn distribution? +

Run a time-to-churn distribution whenever you are trying to set early warning thresholds, design onboarding milestones, or evaluate the ROI of a customer success intervention. The distribution shows what proportion of churned customers left at each tenure mark. If 45% of churned accounts cancel before month 4, your highest-leverage intervention is in the first 90 days — not a 12-month QBR program. Time-to-churn data should directly inform where CS capacity is allocated and where product onboarding investment is prioritized.

How often should a churn analysis report be updated? +

Monthly is the minimum cadence for the standard churn report. Weekly updates are appropriate for the at-risk dashboard and the churn reason code tracker during active remediation campaigns. Cohort tables typically update monthly, since cohort behavior does not change meaningfully week to week in companies with monthly or annual billing. The exception is a high-velocity SMB product with monthly billing cycles, where weekly cohort updates can catch deterioration in newly acquired cohorts before it compounds.