Your churn dashboard says 3.2% a month and it has said roughly that for a year. You want it lower, and someone has suggested a win-back email sequence with a discount ladder. Before you build anything, pull every subscription that ended in the last two quarters and tag each one as a cancellation or a failed payment. That single split decides where your next month goes.
Consider a hypothetical flat 3.2%. It looks calm, but a blended percentage cannot tell you what to do next. It sums at least four unrelated failures: a card that expired, a buyer who never reached the thing they paid for, a team that consolidated onto a competitor's platform, and a customer you should not have sold to in the first place. Averaged together they drift inside the range you expect, and then you pick a cure for a disease nobody identified.
What should a SaaS churn analysis tell you?
A SaaS churn analysis should split one aggregate loss number into separately fixable causes, each with a mechanism and an owner, because every cause responds to a different intervention.
That is the whole job. It is not forecasting, and it is not benchmarking yourself against a peer set. A good analysis ends in a ranked list of losses, and the discount ladder either survives that list or gets deleted.
The benchmark backdrop makes this urgent. The 2026 Aleph and Benchmarkit SaaS and AI Performance Benchmarks, covering full-year 2025 with 226 of 342 companies reporting the metric, put median B2B SaaS gross revenue retention at 84%, down from 88% a year earlier. Top quartile sat at 91% and bottom quartile at 76%. The summary notes the drop hit every quartile, which Aleph reads as a market-level shift rather than an execution failure.
I would read that as context, not permission to sit still. If your retention softened last year and you have been treating it as a team failure, part of what you see is the whole distribution moving. It raises the bar on the diagnosis, because you now have to separate your problem from everybody's problem before you act on either.
Why does your blended churn rate average two different businesses?
Segment before you measure, because a portfolio number can hold steady while one half of the customer base improves and the other half falls apart. The H1 2026 SaaS retention report from Causo, published in June 2026, names three deteriorating segments: prosumer subscriptions at $10-30 a month, SMB SaaS in single-workflow categories, and EU mid-market in DACH, the Nordics and the UK. Enterprise platforms are described as strengthening.
The report's mechanism for the SMB segment is that AI copilots inside tools like Notion, ChatGPT and Linear have collapsed the one-trick-tool position. If your product does one job and that job now ships as a feature inside something your customer already pays for, you have a positioning problem, and onboarding email does not touch it.
Aleph's cuts say a related thing. Median GRR was 88% for sales-led companies, 80% for hybrid and 79% for product-led. By contract size, accounts of $50K-$100K held 91% and sub-$5K accounts held 80%. Self-serve, small-ticket customers churn harder. The useful part is the size of the gap, because it shows how much of your blended number is customer mix rather than product.
Why should you fix failed payments before anything else?
Failed payments are the cheapest churn to recover, because 20-40% of total SaaS churn is involuntary and none of those customers decided to leave.
RetentionLens's State of Involuntary Churn 2026, published in May 2026, cites Recurly benchmarks of a 3.27% overall subscription churn rate split into 2.41% voluntary and 0.86% involuntary. That puts roughly a quarter of typical churn on failed payments. The same report gives a recovery curve that is steep in both directions:
| Dunning approach | Recovery rate | What it takes to build |
|---|---|---|
| No retries at all | ~0-10% | Nothing. This is the default if you never wire up the webhook. |
| Fixed-interval retries | ~20-40% | Processor-side retry configuration |
| Industry median | ~47.6% | Retries plus a generic payment-failed email |
| Smart retries, card updater, email | ~70-85% | Webhook handling, a grace state in your data model, a scheduled lifecycle job |
The report also puts credit card failures near 15% against 3-5% for ACH and direct debit, so the same product sold on cards rather than direct debit produces different involuntary churn from identical customers.
On Callidus, the multi-tenant clinic platform I built on React, Firebase and Stripe Connect, this is the part of the system that got the most careful treatment. According to the case study, twenty Stripe webhook events are handled end to end, including invoice.payment_action_required, which triggers a 3D Secure escalation and emails the clinic owner a hosted invoice URL instead of failing quietly. None of that is clever. It is plumbing, and it is what keeps a clinic with an expired card a customer.
How does silent churn show up before cancellation?
Nobody cancels the tool they opened yesterday. An account that goes quiet in week six is already gone, and the cancellation in week fourteen is paperwork. If your only churn signal is a subscription status flag, you are reading the death certificate. Track the last meaningful action per account and the same data gives you weeks of warning instead of none.
Why do cancellation surveys keep saying "too expensive"?
Cancellation surveys default to price because the question is usually multiple choice and price is the answer that costs the respondent nothing to give.
Paddle makes the same point in its guide to customer exit surveys: a multiple choice question produces an even distribution across answers, which is not helpful, and a survey that is too long gets skipped. The instrument creates the flat result founders then read as signal.
Price genuinely is the reason sometimes, so do not throw out the channel. The fix is narrower. Ask one open question, keep the survey to three questions, and cross-check every stated reason against usage in the ninety days before cancellation. A customer who says "too expensive" and logged in twice in three months probably did not have a pricing objection. This suggests an activation failure that surfaced as a pricing objection at renewal.
Be equally strict about your own numbers. Churn statistics circulate widely without sources behind them, so check that every figure in your board deck can be traced to one.
How do you run a SaaS churn analysis in a week?
Run five ordered passes: split involuntary from voluntary, cohort by signup month, cut by segment, overlay activation, then read the exit text. Stop at the first pass that explains more than a third of your losses.
- Split voluntary from involuntary. Pull every subscription that ended in the last two quarters and tag each as a cancellation or a payment failure. If involuntary clears 25% of the total, pause the analysis and fix dunning first.
- Run a SaaS cohort analysis by signup month, not cancellation month. Cancellation-month charts tell you when people left, which is the least actionable framing. Signup-month cohorts show whether customers acquired in June behave worse than those acquired in January, which separates a product problem from a funnel problem.
- Cut by segment before interpreting anything: plan tier, acquisition channel, company size, self-serve versus sales-assisted. This is usually where one flat blended line breaks into two visibly different curves.
- Overlay activation. For each cohort, mark the share of accounts that reached your core action inside fourteen days. If early retention tracks activation almost exactly, you have an onboarding problem wearing a retention label, and no save motion will move it.
- Read the exit text last. Open-ended answers are good for naming what you already found in the data and risky as a primary source. Rank reasons by revenue lost rather than frequency, or you will spend a quarter serving your loudest small accounts.
How do you match the cure to the diagnosis?
The passes point at different fixes, and they are not interchangeable. Involuntary churn is an engineering ticket. Activation-driven churn is an onboarding rebuild, which for an early product usually means removing steps between signup and first value rather than adding a product tour. In a property-management product like BookBed, the analogous event to track would be an owner creating their first bookable unit. That is my suggestion for what to instrument, not a measured result.
Segment-driven churn is a pricing or positioning decision, and founders resist it longest because the honest answer is often that a tier should not exist. Competitive churn in a B2B SaaS market where an incumbent just shipped your headline feature is a roadmap decision, and discounting works against you there.
If you are early enough to have no cohorts yet, build the events before you need them. A minimum viable product with three well-chosen analytics events beats one with a full analytics suite and no idea which action predicts week-four retention. The SaaS MVP stack I build on is where I would wire that instrumentation in from the first week. That is a recommendation, not a benchmark.
So open your subscription table, tag the last two quarters as voluntary or involuntary, and see which side the weight falls on. If more than a quarter turns out to be failed cards, what is your win-back discount actually for?



