How to calculate and interpret monthly recurring revenue
How the MRR calculator works
Monthly recurring revenue is the normalized monthly value of active recurring subscriptions. This calculator starts with the prior period's MRR, adds new and expansion MRR, then subtracts contraction and churned MRR to produce ending MRR.
Revenue from a newly booked annual subscription is divided by 12 before it enters the waterfall. Ending annual recurring revenue is the ending MRR run rate multiplied by 12. Neither metric is the same as cash collected or recognized accounting revenue.
- New MRR comes from customers starting a recurring subscription during the period.
- Expansion MRR comes from upgrades, added seats, or other increases from existing customers.
- Contraction MRR comes from downgrades while churned MRR comes from canceled recurring subscriptions.
- One-time setup, services, and usage fees should not enter MRR unless they are contractually recurring.
Read growth, gross retention, and NRR together
Monthly growth divides net new MRR by starting MRR. Gross revenue retention measures how much starting MRR remained after contraction and churn, without allowing expansion to hide losses. Net revenue retention adds expansion back to show whether the existing customer base grew or shrank in aggregate.
A growing ending balance can still conceal weak retention when new acquisition replaces heavy churn. Keep the waterfall visible so acquisition, expansion, contraction, and churn remain separate operating questions.
Choose consistent MRR rules before reporting
Document how you treat discounts, credits, paused plans, currency conversion, usage-based commitments, taxes, and delinquent accounts. The most useful recurring-revenue report is consistent from one period to the next and can be reconciled to customer-level subscription records.
Use the same period boundaries for every movement. A cancellation and reactivation inside one month should not be classified differently merely because it makes growth look better. Save the summary with the source data and record any change in policy.