By MCP Analytics Team | Published , updated
One row per customer is a different problem from one row per customer per month. The shape of the file narrows which methods can apply to it.
The analyses filed under this data shape. Each card opens the analysis page, where you can run it on a file. Cards marked Coming soon are still being built.
How many customers churn and which plans or regions separate the ones who leave, with time to churn counting those still active.
How many customers come back after they first arrive, cohort by cohort, and whether newer cohorts retain better than older ones.
Did the change cause the difference?
How much of the lift was actually incremental?
Where did actuals diverge from budget?
CausalImpact-style counterfactual from donor series; did the intervention move the metric.
Churn is filed under this shape because it follows each subscriber over time. Its sample file keeps that history in columns, one row per account with the months it was watched, rather than one row per account per month.
The data. standard_churn_v2.csv, the published sample file for Churn: 1,500 rows; columns Account ID, Signup Date, Cancel Date, Status, Tenure Months, Plan, Support Tickets, Monthly Charge, and more. Sample data, not a customer's.
The calculation. Python, standard library only. This exact code ran against the file when this page was built, and printed the output below it.
import csv
rows = list(csv.DictReader(open("standard_churn_v2.csv")))
plan = {}
for r in rows:
p = plan.setdefault(r["Plan"], [0, 0, 0.0])
p[0] += 1
p[1] += r["Status"] == "Cancelled"
p[2] += float(r["Tenure Months"]) # months each account was watched
for k, (n, gone, months) in sorted(plan.items()):
print(k, n, "accounts,", gone, "cancelled,",
f"{gone / months:.3f} cancellations per account-month")
Annual 615 accounts, 154 cancelled, 0.025 cancellations per account-month
Monthly 885 accounts, 505 cancelled, 0.082 cancellations per account-month
What it says. Dividing cancellations by the months each account was observed, not by the number of accounts, puts long-lived and new accounts on the same footing. Per month watched, monthly subscribers cancel about 3.3 times as often as annual ones in this file.
What it does not say. Customers choose their plan, so the gap mixes the plan's effect with the kind of customer who picks it. A constant monthly rate is a simplification; the library analysis draws a Kaplan-Meier curve and runs log-rank tests by attributes such as plan.
Run Churn on this file or your own, or open its stored sample report.
Further reading on the method in the worked example. Each reference was looked up and its authors, title, year and venue confirmed on 27 October 2026.
The stored sample report for Churn. Each analysis has its own report layout; open its page to see what it returns.
Tell us what went wrong, in your own words. We capture the page you're on automatically, so no need to describe where you are.