Free SaaS Churn & Revenue-Quality Analyzer

Drop a target's subscription CSV and get the full 5-Risk Buyer-Side report — churn divergence, revenue concentration, annual-plan exposure, zombie MRR, cohort decay and an A–F revenue-quality grade. It runs entirely in your browser: the file is never uploaded.

Nothing leaves this page. The CSV is parsed with the browser's File API and every figure is computed locally. No part of the file, and no number derived from it, is transmitted anywhere — open your network panel and check. A target's customer-level ledger is normally NDA-bound, which is exactly why this tool has no server side.

Drop the subscription CSV here

…or click to choose a file. CSV, TSV or semicolon-delimited. Never uploaded.

How to use it

  1. Get the ledger, not the summary slide. Ask the seller for a per-customer, per-month MRR export from Stripe, Chargebee, Paddle, Recurly or their own database. One row per customer per month. Reported churn and real churn diverge precisely because summary figures hide the customer-level detail.
  2. Drop the file in. Columns are detected automatically; correct the mapping if a guess is wrong. Nothing is uploaded.
  3. Read the six lenses. Each states the figure, the rubric band it lands in, and the question to put to the seller.
  4. Export it into the deal file. A self-contained HTML report, or a Markdown summary for an IC memo.

What the CSV needs to contain

Two layouts are accepted. Long format is richer and preferred:

ColumnRequiredExampleWhat it unlocks
customer_idYesacct_1001Everything. Any stable identifier — id, email, company name.
monthYes*2025-03All churn, retention, cohort and trajectory lenses. Accepts 2025-03, 2025-03-01, 03/2025, Mar 2025.
mrrYes240.00Everything. Currency symbols and thousands separators are tolerated. An arr column is divided by 12.
plan / intervalOptionalannualAnnual-Plan Decay Projection, and observed annual-vs-monthly churn.
last_activeOptional2025-03-28Zombie MRR Detector.
renewal_dateOptional2025-11-01Renewal-cliff timing — how much MRR is up for renewal in the next 3, 6 and 12 months.

* Wide format works too: one row per customer, one column per month (customer_id, plan, 2025-01, 2025-02, …). A single snapshot with no month at all still produces concentration and annual-plan exposure; churn, retention and cohort lenses need at least two months.

The six lenses, and the formula each one uses

1. Churn Divergence Detector

Logo churn and revenue churn are computed separately for every consecutive month pair, then compared. logo churn = customers lost ÷ customers at start. gross revenue churn = (MRR of lost customers + downgrade MRR) ÷ MRR at start. Divergence = revenue churn ÷ logo churn.

A divergence of 1.0 means churn is spread evenly across the book and the seller's headline logo-churn figure is honest. Above roughly 1.2 the churning accounts are larger than average, so the headline understates revenue erosion — the most common way a churn number flatters a target. Below 1.0 the business loses its smallest accounts, which is materially better news than the logo figure suggests.

Because gross revenue churn conventionally includes downgrades, a high divergence has two quite different causes, and the report separates them rather than assuming one. The cancellation and downgrade components are reported individually, and a size skew — average MRR of churned accounts ÷ average MRR of retained ones — isolates whether the departing customers were genuinely larger. Divergence driven by size skew is a concentration-of-loss problem; divergence driven by downgrades is a pricing, packaging or discount problem. They lead to different questions on the management call, so the finding text is conditioned on which one the data actually shows.

2. Concentration Vulnerability Index

Measured on the most recent month: the share of MRR held by the largest 1, 3, 5 and 10 customers, the Herfindahl–Hirschman Index across the customer base (HHI = Σ share² × 10,000), and the number of customers needed to reach half of all MRR. HHI is reported because two books with the same top-5 share can have very different tails.

3. Annual-Plan Decay Projection

The share of MRR sitting on annual or multi-year terms, which is the MRR that cannot churn this month and therefore cannot appear in a monthly churn rate at all. Where a renewal or period-end date is present, MRR falling due in the next 3, 6 and 12 months is bucketed into a renewal cliff. Where enough history exists, the observed churn rate of annual customers is compared against monthly ones.

Two conventions, stated because they change the numbers. The renewal date is read from each customer's most recent row, not the earliest — billing exports carry the current period end on every row, so the earliest one is always in the past. And where an annual customer's recorded period-end has already passed, it is advanced in whole years until it falls after the anchor date, because an annual contract that renewed last year renews again this year. Non-annual rows with a past date are treated as unknown and excluded rather than guessed; the count of both adjustments is reported with the result.

This is reported as exposure, not a prediction. A concentration of renewals shortly after close is a structuring question — holdback, earn-out, escrow — not a forecast.

4. Zombie MRR Detector

Customers still paying whose last recorded activity predates a threshold — 60 days by default, measured from the latest date in the file rather than today, so historical exports are handled correctly. Reported as a share of current MRR. Requires a last-active, last-login or last-seen column; without one the lens is disabled rather than estimated, and its weight is redistributed across the other components.

5. Revenue Quality Scorecard

A weighted composite of the other lenses producing an A–F grade. Every band is published in the rubric table below, so the grade can be recomputed by hand from the component figures. Components whose input columns are missing are dropped and the remaining weights renormalised — a grade is never manufactured from absent data.

6. MRR Trajectory Forensics

Three separate readings. A month-by-month decomposition of MRR movement into new, expansion, contraction, churned and reactivated. A cohort retention triangle, where each cohort is the month a customer first appears and each cell is that cohort's retained MRR as a share of its starting MRR. And the trend of MRR from cohorts at least twelve months old, held against the headline trend.

The third reading is the one that catches the pattern a headline number cannot show: flat total MRR produced by new sales replacing decaying older cohorts. The quick ratio(new + expansion) ÷ (churned + contraction) — quantifies how hard the business has to run to stand still.

Scoring rubric (ChurnLens's own, published in full)

These bands are ChurnLens's rubric for buyer-side screening, not an industry standard. They are published so the grade is reproducible and arguable rather than a black box.

ComponentWeight10085654015
Gross revenue retention, annualised30%≥92%88–92%82–88%75–82%<75%
Top-5 customer share of MRR20%≤15%15–25%25–40%40–55%>55%
Churn divergence (rev ÷ logo churn)15%≤0.90.9–1.21.2–1.61.6–2.2>2.2
Net revenue retention, annualised15%≥110%100–110%95–100%88–95%<88%
MRR trend, last 6 months per month12%≥+2%+0.5–2%−0.5–+0.5%−2–−0.5%<−2%
Zombie MRR share8%≤2%2–5%5–10%10–20%>20%

Grade bands: A ≥85, B 75–84, C 65–74, D 55–64, F <55. A further 15-point deduction applies to the trajectory component when cohorts twelve months and older are declining while headline MRR is flat or rising — replacement revenue masking decay. No letter grade is issued at all when less than 45% of the rubric weight is computable from the file — a grade off a fifth of the rubric would read as authoritative and mean very little. Rubric version rq-1.0.

Benchmark context

Where the report cites an outside comparison it uses one sourced figure: median gross revenue retention for private B2B SaaS is around 91%, splitting to roughly 90% below $25K ACV and 93% above it — SaaS Capital, 2023 B2B SaaS Retention Benchmarks. Every other threshold on this page is ChurnLens's own rubric. Deviating from a benchmark is not a verdict; it decides which questions get asked on the management call and how the deal is structured.

Frequently asked questions

Is the subscription CSV uploaded to a server?

No. Parsing and every calculation run in your browser using the File API. No part of the file, and no figure derived from it, is transmitted anywhere. Open your browser's network panel while running an analysis and you will see no request carrying your data. This matters because a target's customer-level revenue ledger is usually NDA-bound.

What CSV format does the analyzer need?

Long format is richest: one row per customer per month with a customer identifier, a month and that month's MRR. Wide format — one row per customer, one column per month — works too. Optional columns unlock further lenses: plan or billing interval enables the Annual-Plan Decay Projection, a last-active date enables the Zombie MRR Detector, a renewal date sharpens renewal-cliff timing. A single snapshot still yields concentration and annual-plan exposure.

What is churn divergence and why does it matter more than the headline churn rate?

Churn divergence is revenue churn divided by logo churn. Lose 5% of customers carrying 5% of MRR and divergence is 1.0 — the headline is honest. Lose 5% of customers carrying 9% of MRR and divergence is 1.8: the seller's logo-churn figure understates revenue erosion by nearly two times. Above roughly 1.2, churn is concentrated in the larger accounts.

How is the A–F grade calculated?

A weighted composite of six components — gross revenue retention 30%, concentration 20%, churn divergence 15%, net revenue retention 15%, MRR trajectory 12%, zombie MRR 8%. Every band is published in the rubric table above, so the grade is reproducible by hand. Missing components are dropped and the remaining weights renormalised, and no grade is issued at all below 45% rubric coverage. The rubric is ChurnLens's own, not an industry standard.

Can I use the results in an investment-committee memo?

Yes. The HTML report and the Markdown summary both carry the period range, row and customer counts and the rubric version, so a reviewer can trace every figure. Treat it as a screening and question-generation instrument, not a quality-of-earnings opinion — it reads exactly the ledger you give it and cannot detect revenue that was never in the export.

Is there a file-size limit?

None imposed. Because the work is local the practical ceiling is your machine's memory; a few hundred thousand rows parse in seconds. Nothing is truncated silently — the row count, customer count and period range actually read are reported back to you.

How does this differ from the paid ChurnLens report?

This tool runs the same six lenses on the ledger you already hold. The paid buyer-side report adds the work a tool cannot do: reconciling the ledger against bank and Stripe payouts, chasing the gaps the export leaves out, checking the cohort story against the CIM's claims, and writing the findings up as diligence questions for a specific deal.

Related ChurnLens tools and reading