Survival analysis for subscription churn.

Two channels, both at 37% churn. Nothing else about them is the same.

One loses them in the first five weeks. The other looks flawless for five months and then falls off a cliff. A churn percentage cannot tell those apart, and it counts the customer who signed up on Tuesday as retained.

No spam. One email when it is ready to try.

Same churn percentagePaid search 37.4% · Partner referral 37.8%1,000 subscribers, 624 still active
Two-proportion test
p = 0.90
what a churn table can say
Log-rank test
p = 6.3e-51
these cohorts are not alike
Retained at day 30
64.5% / 99.4%
paid search / partner referral
Danger window
wk 2-5 / mo 6-11
where each channel actually loses people

Two real acquisition channels with known lifetime distributions and genuine right-censoring. Every curve, hazard, and p-value computed in your browser.

The problem

A churn percentage answers neither question you actually have.

You want to know when in the lifecycle people leave, because that is what decides whether you fix onboarding or fix month six. And you want to know whether two cohorts genuinely differ, because that is what decides where the next dollar of acquisition goes. A percentage answers neither. It collapses the entire lifecycle into one number, and it treats everyone who has not churned yet as retained, which is not a fact about them but a fact about how long you have been watching. That second one biases every comparison toward whichever cohort is younger, and the youngest cohort is always the one you are trying to evaluate.

0.90 → 1e-50
Two channels, 37.4% and 37.8% cancelled to date. A two-proportion test on those percentages gives p = 0.90. The log-rank test on the same subscribers gives p below 1e-50.
Computed in the demo from the per-subscriber data, not typed in here
23 pts
Gap between the retained percentages of two cohorts drawn from an identical lifetime distribution. The only thing that differs is when they signed up. Kaplan-Meier puts them just over 3 points apart.
Arithmetic on the demo data. Reproduce it in the browser
1958
Kaplan and Meier published the estimator that handles this correctly. It is standard equipment in every clinical trial and almost entirely absent from growth tooling.
Kaplan & Meier, Journal of the American Statistical Association, 1958

The insight

Churn is a time-to-event problem, and it was solved before SaaS existed.

Biostatistics has spent seventy years on exactly this question, because a drug trial has the same two problems: patients leave at different times, and the study ends while some of them are still alive. Kaplan-Meier handles the censoring instead of guessing at it. The hazard rate per period shows where in the lifecycle people actually leave, which is the number that tells you what to build. The log-rank test compares two cohorts using the timing of every event rather than two summary percentages, so it finds differences a percentage comparison cannot see. None of this is new or contested. It simply never crossed over from medicine into growth tooling, so the entire industry reports a number that was known to be the wrong one before the industry existed.

Method

Kaplan-Meier product-limit estimator with Greenwood standard errors and 95% intervals on the curve. Hazard decomposed by lifecycle period, weekly early and monthly later, to locate the danger window. Log-rank test for cohort comparison, which weights every event by who was still at risk when it happened. Every subscriber still active at the observation date is right-censored at their current tenure, so someone who signed up eight days ago contributes eight days of evidence rather than a retained checkmark.

How it works

Four steps, no data science team

01
Point it at the subscription table you already have

Start date, cancel date if there is one, and whatever you want to slice by. That is the whole schema. No events, no tracking plan, no SDK.

02
It fits the curve and names the window

Survival curve with intervals, hazard by lifecycle period, median lifetime where one exists. The output is a specific range of days, not a rate.

03
Compare cohorts with a test instead of eyeballing percentages

Log-rank across channel, plan, region, or onboarding variant, with the censoring handled. It says whether the difference is real and which direction it runs.

04
Watch the window, not the rate

The danger window becomes the thing you monitor. When the hazard in weeks two through five moves, you hear about it while the aggregate churn rate is still flat, because the aggregate lags by a quarter.

Who it is for

Head of growth or retention, and the analyst who owns the churn dashboard

Subscription businesses past the point where the aggregate churn number stopped being actionable. Usually the ones who have already tried to explain why last month was 4.1% and could not.

Pricing

Free
$0
Upload a CSV, get the curve
  • Survival curve and hazard profile
  • Log-rank between two cohorts
  • No account, runs in the browser
Most common
Team
$400/mo
Up to 25,000 subscribers
  • Warehouse or Stripe sync
  • Danger window monitoring with alerts
  • Cohort comparison across any dimension
  • Weekly retention brief
Scale
$1,500/mo
Unlimited subscribers
  • Self-hosted or VPC
  • Covariate models for multi-way cohorts
  • SSO and audit log
  • Review with a statistician

Competition

What exists, and what it does not do

WhoWhat they doThe gap
ChartMogul, Baremetrics, ProfitWellSubscription analytics. Churn rate, MRR movement, cohort retention grids.The grid is the closest anyone gets, and it is still a wall of point estimates with no interval and no test. Nothing in the product will tell you that two channels differ, or where in the lifecycle they differ.
Amplitude, MixpanelN-day retention curves per cohort.Gets the shape roughly right for one cohort. No censoring model, no confidence band, no comparison test, and cohorts of different ages sit on the same grid to be compared by eye.
Churn prediction scoresPer-account risk models sold into customer success.Answers who, which is a different question from when. Needs labelled history and someone to maintain the model, and a score does not tell you which week of the lifecycle to fix.
A data scientist with lifelinesExactly the right answer, and the real substitute at companies that have one.Does not scale below the companies that can staff it, and the notebook gets run once and never again. The durable product is the monitoring, not the first chart.
How this fails

The honest risk is that this is a report and not a workflow. A team runs it, learns that their danger window is week three, fixes onboarding, and has no reason to open it again for a year. Analytics products that get used once do not renew. The counter has to be that the danger window becomes a monitored surface rather than a chart: hazard in a specific window is a leading indicator that moves a full quarter before the aggregate churn rate does, and a team that has been burned once by finding out late will pay to not find out late again. If that monitoring loop does not stick, this is a consulting engagement wearing a subscription.

Market

Attached to the subscription analytics line, which every recurring-revenue company already funds

ChartMogul and Baremetrics sit at $100 to $1,000 a month and are bought by tens of thousands of subscription businesses. This is a peer line item sold to the same buyer, and the free curve reaches every growth analyst who has ever been asked why churn moved. Four thousand accounts at the Team tier is $19M ARR.

Get early access

No spam. One email when it is ready to try.

Or just go look at the demo first →