An MRR waterfall that reconciles
New, expansion, contraction and churned MRR by month, summed from subscription events and the price book. The total matches the invoices because both come from the same rows.
Demo data for SaaS
MRR that compounds, churn that front-loads, cards that decline and recover, usage that fades before the cancel. All derived from an operational billing schema you can download.
Your audience runs a SaaS business, or sells to one. They know MRR does not grow in a straight line and that churn is not uniform across a customer’s life. They know a failed card is a different event from a customer leaving. Random-row generators give you accounts that all behave alike and a churn rate that is a coin flip. A CSV of “SaaS metrics” gives you the answers with no rows behind them. When someone asks to see the invoices behind a churned account, the demo ends.
Quenchly is a mid-market team-workflow SaaS on per-seat plans, run
forward by hose from a fixed seed. Its tables are accounts, users,
plans, subscriptions, subscription_events, invoices,
payments and app_events, with no rollups among them. Trials open a 14-day window and
about one in five converts. Subscriptions bill monthly or annually,
expand seats, change tiers, and cancel either on request or after a
retry ladder fails. Every user emits product events on weekdays, and
those events thin out before a voluntary cancel.
The company has a history, too. Acquisition drifts month to month instead of hugging a formula, the outbound channel grows from a sideline into a real source of larger accounts, and in year three the price book gains new rows and renewals migrate to them.
Download the SQLite file or the CSV bundle from the dataset page and query it as is. Point Metabase or Power BI at the same file for a dashboard in an afternoon. The hosted Postgres stream, which keeps writing new invoices while you present, is in early access.
What you can build
New, expansion, contraction and churned MRR by month, summed from subscription events and the price book. The total matches the invoices because both come from the same rows.
Net and gross revenue retention by activation month. Annual cohorts hold above 100% on expansion while monthly cohorts do not, and the gap is visible without cherry-picking.
First-attempt failures, retries on the day-1, 3, 5, 7 ladder, recoveries and write-offs. Recent invoices still sit in dunning, because the data is right-censored the way live billing data is.
Weekly product events for accounts that later cancel, aligned to the cancel date. The decline starts weeks earlier. This is the chart every customer-success demo needs and no random generator produces.
The claims
The dataset