FOUNDATIONS

MRR vs cash collected: what SaaS founders should report

Separate recurring run rate from cash collected, annual prepayments and lifetime deals, using a worked SaaS example and a simple reporting contract.

A subscription metric is not a bank balance

Monthly recurring revenue, or MRR, is a normalized monthly measure of eligible recurring subscription value. Cash collected measures payments actually received during a period. They answer different questions: “What is the recurring run rate?” and “What did customers pay?” Neither, on its own, is profit.

A founder can have a strong cash month without much MRR growth by selling annual plans or one-time access. Another can grow MRR while collections lag because invoices remain unpaid. A useful report displays these measures separately instead of choosing whichever produces the more impressive screenshot.

An original example with monthly, annual and lifetime sales

The following example is synthetic. Assume ten active monthly subscribers at USD 20 each, two annual subscribers at USD 180 each, and three lifetime buyers at USD 159 each. All payments succeed this month, taxes and fees are excluded from this simplified example, and there are no discounts or refunds.

Under the stated recurring-value definition, monthly subscribers contribute USD 200 MRR and annual subscribers contribute USD 30 MRR after dividing USD 360 by twelve. Lifetime purchases add no MRR because there is no recurring charge. Total MRR is USD 230. The month’s gross cash receipts are USD 1,037, not USD 230.

Synthetic example, USD only
10 monthly x 20            = 200 cash | 200 MRR
 2 annual  x 180           = 360 cash |  30 MRR
 3 lifetime x 159          = 477 cash |   0 MRR
------------------------------------------------
This month                = 1,037 cash | 230 MRR
Next month cash is unknown; MRR is a run rate, not a guarantee.

Why dividing this month’s payments by twelve fails

An annual payment can be normalized for MRR because it purchases a defined recurring subscription period. Dividing every receipt by twelve would also turn monthly payments and one-time sales into fictional recurring value. Likewise, multiplying a launch month containing lifetime sales by twelve does not establish annual recurring revenue.

If you publish an annualized run rate, state the formula and its basis. A simple MRR multiplied by twelve view is a snapshot projection, not proof that the next twelve months will collect that amount. Renewals, cancellations, price changes and failed collections can all change the result.

Define discounts, delinquency and cancellation timing

MRR is not completely standardized across tools. Decide whether recurring discounts reduce it, how one-time discounts are handled, which subscription states qualify, and when an unpaid subscription is removed. Then use the same rules across comparisons.

Stripe’s Billing analytics provides recurring-revenue reports and configurable metric definitions. Its documentation distinguishes subscription analytics from payment records. Before reconciling your own MRR with Stripe, inspect the settings and underlying subscription changes rather than assuming that a different total is necessarily a bug.

Cancellation scheduled for the end of an already-paid term is also not the same event as access ending today. A clear report can show scheduled cancellations as an early warning while keeping active recurring value under its documented policy. Do not report both an immediate churn and a later end-of-term churn for the same loss.

Refunds change the money story without a universal MRR rule

Add a fictional USD 20 successful refund to the earlier example. Net cash receipts, under a payments-minus-successful-refunds definition, become USD 1,017. Whether MRR changes depends on what happened to the subscription: a goodwill refund with continuing service is different from termination.

Refund requests, pending refunds and successful refunds are not interchangeable. Record the state and decide whether your cash report groups a refund by its own date or revises the original payment cohort. Both views can help, but they must not share an unexplained label.

Payment processor fees, tax, disputes and currency conversion are additional boundaries. A marketing report labeled “net receipts” should say exactly what it subtracts. Do not call that number profit or accounting revenue unless it follows the corresponding financial definition.

Keep currency and time definitions visible

USD 100 plus EUR 100 is not 200 in a meaningful single currency. Show separate currency totals or disclose an explicit conversion source, rate date and rounding policy. Stripe’s API currency units also have special cases; assuming every integer amount means cents can corrupt your report.

Use a named reporting timezone and a half-open interval such as start inclusive, end exclusive. Distinguish a month-end MRR snapshot from payments throughout that month. Record when each source was last refreshed, because a delayed payment or subscription update can otherwise resemble a sudden business change.

A founder’s weekly scorecard

Keep a compact scorecard with end-of-period MRR, the change from the comparable prior snapshot, successful new-customer payments, renewal payments, one-time purchases, refunds, and net receipts by currency. Add a separate count of subscriptions scheduled to end. This is an original reporting template, not a claim that every analytics product supplies every field.

For each metric, retain a drill-down or export that explains the total. If MRR rises but cash falls, inspect annual renewals, collection failures and the dates before changing acquisition spend. If cash spikes but MRR is flat, inspect the mix of one-time and recurring purchases before announcing recurring growth.

Connect acquisition only after the totals make sense

Once you can reconcile receipts, compare how acquisition sources contribute to first purchases and later renewals. Keep the question explicit: a source that acquires new buyers is not automatically responsible for every renewal forever. That is an attribution policy, not a fact delivered by the payment processor.

The related reconciliation guide focuses on authoritative payments; the revenue-attribution guide covers the marketing join. Reading them together helps you avoid the common shortcut of treating website conversion events, subscription run rate and actual money as the same thing.

References

Educational guidance. Worked examples are illustrative, not customer results or a promise of traffic, revenue or search visibility. Check the cited sources and your own implementation.
Explore the synthetic demo →