Business tool

MRR and ARR movement calculator

Reconcile new, expanded, contracted and churned recurring revenue.

Your inputs

Monthly-normalized recurring revenue from first-time customers.
Upgrades or additional recurring usage from existing customers.
Enter downgrade losses as a positive amount.
Enter recurring revenue removed by cancellations as a positive amount.
Leave blank to skip reconciliation. Use an unformatted number, such as 11450.

Your results

Ready when you are
Add your inputs or try an example.
Your results will appear here.

Compare two scenarios.

Run the tool, then save A or B to compare headline results and entered values. Keep currencies, periods and assumptions consistent.

Saved scenarios stay in this browser until you clear them. Reset clears the working result; it keeps saved scenarios. Use Clear saved scenarios on a shared device.

Run the tool to save your first scenario.

How it works

Reconcile a subscription business’s recurring revenue from the beginning to the end of a reporting period. The movement bridge separates first-time sales, upgrades, returning customers, downgrades and cancellations, then converts the ending monthly run rate to ARR. Optionally compare the calculated closing balance with your billing report to identify missing or double-counted events.

Ending MRR = starting MRR + new MRR + expansion MRR + reactivation MRR − contraction MRR − churn MRR. Net movement = ending MRR − starting MRR. Annualized ARR = ending MRR × 12. Reconciliation difference = observed ending MRR − calculated ending MRR.
Read the source reference ↗

A few things to know

Run-rate arithmetic, not recognized revenue, cash collections or a forecast. Normalize annual plans and partial-period charges before entering them. Usage-based billing, delinquency, currency conversion and reactivation definitions can differ between reporting systems. This tool does not import billing records or check customer-level event sequences. Losses cannot exceed starting revenue plus entered additions. All values use one currency and one consistent reporting policy.

Results use your inputs. Keep all money amounts in the same currency.

A little context

When to use this tool

A closing MRR number tells you the size of your subscription run rate; a movement bridge tells you why it changed. This calculator separates new subscriptions, expansion, returning customers, downgrades and cancellations, then checks the calculated closing balance against an optional observed figure. Use it to explain recurring growth and investigate a billing report that does not reconcile.

  • Prepare a monthly founder or finance update with a clear recurring-revenue bridge.
  • Find missing cancellation, upgrade or reactivation movements when two MRR reports disagree.
  • Convert ending monthly recurring revenue into an annualized run rate without confusing it with annual cash receipts.

How to use mrr and arr movement calculator

  1. Set the opening run rate

    Enter starting MRR and normalize every plan to a monthly recurring amount. A 1,200 annual recurring subscription contributes 100 of MRR under that simple normalization, not 1,200 in the payment month.

  2. Classify each movement once

    Enter positive amounts in new, expansion and reactivation. Enter losses as positive numbers in contraction and churn; the calculator subtracts them. Keep one-off setup charges outside these recurring buckets.

  3. Reconcile the closing balance

    Optionally enter observed ending MRR as an unformatted number. Review the observed-minus-calculated difference and export the bridge. Leave the optional field blank when you only want a scenario.

Try the numbers

Growth with cancellations and downgrades

Inputs

Starting MRR 10,000; new 2,000; expansion 500; reactivation 250; contraction 300; churn 1,000; observed ending MRR 11,450.

Result

Calculated ending MRR is 11,450. Net movement is 1,450, a 14.5% increase. Annualized ending ARR is 137,400. The reconciliation difference is 0.

What it means

New and existing-customer additions outweighed the 1,300 of losses. The annualized result describes the closing run rate multiplied by 12; it does not assert that the business collected 137,400 during the year.

Common mistakes to avoid

Entering cancellation losses as negative numbers

The churn and contraction fields expect positive loss amounts. The tool applies the subtraction, so entering negative values would invert their effect and is rejected.

Counting an upgrade twice

An upgrade belongs in expansion, not both new customer MRR and expansion. Keep reactivation separate from a customer’s first subscription. Document your event classification before comparing systems.

Using invoice totals as MRR

Cash payments, partial-period credits, taxes and nonrecurring fees can differ from a normalized subscription run rate. Reconcile the same metric rather than forcing a cash report to match MRR.

Useful answers

Frequently asked questions

Definitions, edge cases, and practical next steps for this tool. Search all tool FAQs ↗

What is the MRR movement formula?

Start with opening MRR, add new, expansion and reactivation MRR, then subtract contraction and churn MRR. The result is ending MRR. Net movement is ending minus starting MRR. All entered amounts must already be normalized to the same monthly recurring basis.

How does the calculator convert MRR to ARR?

It multiplies calculated ending MRR by 12. For 11,450 of ending MRR, the annualized run rate is 137,400. This is a snapshot-based metric. It does not sum invoices across the last 12 months or predict the effects of future growth, renewals or churn.

What is the difference between expansion and new MRR?

New MRR comes from first-time paying customers. Expansion is additional recurring revenue from an existing customer, such as a higher plan, more seats or a recurring add-on. Classifying them separately lets you see whether growth depends on acquisition or increased value from the customer base.

Where do returning customers belong?

Use reactivation for previously churned customers who resume paying under your chosen reporting policy. Do not also count the same amount as new MRR. Different billing tools can use different reactivation definitions, so retain that policy when comparing months or reconciling an external report.

What does a nonzero reconciliation difference mean?

The difference is observed ending MRR minus calculated ending MRR. A positive result means the observed report is higher; a negative result means it is lower. Check missing events, duplicate buckets, discount changes, currency handling and reporting cutoffs. The difference identifies a gap but does not diagnose its cause.

Can starting MRR be zero?

Yes. A new business can enter zero opening MRR and add its first subscriptions. Ending MRR and ARR still calculate normally, but percentage growth is undefined because there is no positive starting denominator. The calculator shows that distinction rather than describing first sales as infinite growth.

Why are large loss amounts rejected?

The entered contraction and churn cannot exceed starting MRR plus the additions in this bridge, because that would create a negative recurring balance. Review overlapping losses and event ordering. When a customer upgrades and later cancels, your report must classify the movements consistently without subtracting the same revenue twice.

Should I use this bridge to calculate retention?

Use the retention calculator for that task. This bridge includes new customers and reactivations and explains total recurring revenue movement. NRR and GRR examine a defined existing customer cohort. Adding new-customer revenue to retention can hide losses among the customers you began the period with.

Explore the topic in the blog

Sources and method

Use the references below to check definitions and platform guidance. The model’s scope and limits are explained above. Read our editorial standards.

Help

How can we help?

Find instructions, report a problem, or leave a message.

Read this tool’s FAQs ↗

Guides for this tool

Growth and retention need different bridges.
Common questions

Where do I start? Try an example, then replace its values with yours.

Why did my upload fail? Check the field error, accepted format and file-size limit. Start with a small sanitized sample.

Where are my results? Review the result panel, then use its copy or download controls. If a calculation fails, check the error beside the input.

Message us

Chat opens Tawk.to. It processes your messages and connection data. Do not paste private inputs or file contents. Availability and response times vary.