Skip to main content

Methodology

Recurring Revenue MRR and ARR Planner methodology

Reconcile an MRR movement bridge, annualise the closing run rate and inspect GRR and NRR without mixing in new revenue.

Educational only: Business decision support, not accounting, tax or legal advice.

Privacy: Calculations run locally; Margin101 does not receive your commercial inputs.

Update policy: Reviewed when formulas or official dependencies change.

Scope: Market-neutral small-business planning using your own assumptions.

1. Formulas and units

Closing MRR
closingMrr = opening + new + expansion − contraction − churn

Where

openingMrr
Opening MRR (currency units on one consistent period basis)Source: Business record
newMrr
New MRR (currency units on one consistent period basis)Source: Business record
expansionMrr
Expansion MRR (currency units on one consistent period basis)Source: Business record
contractionMrr
Contraction MRR (currency units on one consistent period basis)Source: Business record
closingMrr
Closing MRR (money)Source: Calculated output
Closing ARR
arr = closing MRR × 12

Where

closingMrr
Closing MRR (money)Source: Calculated output
arr
Closing ARR (money)Source: Calculated output
Gross revenue retention (GRR)
grr = (opening − contraction − churn) ÷ opening

Where

grr
Gross revenue retention (GRR) (percent)Source: Calculated output
Net revenue retention (NRR)
nrr = (opening − contraction − churn + expansion) ÷ opening

Where

nrr
Net revenue retention (NRR) (percent)Source: Calculated output
Bridge reconciliation
bridgeReconciliation = closing MRR − recomposed bridge

Where

closingMrr
Closing MRR (money)Source: Calculated output
bridgeReconciliation
Bridge reconciliation (money)Source: Calculated output
Opening MRR signed movement
bridgeMovements.opening = opening MRR

Where

openingMrr
Opening MRR (currency units on one consistent period basis)Source: Business record
bridgeMovements.opening
Opening MRR signed movement (signed currency units)Source: Calculated output
New MRR signed movement
bridgeMovements.new = new MRR

Where

newMrr
New MRR (currency units on one consistent period basis)Source: Business record
bridgeMovements.new
New MRR signed movement (signed currency units)Source: Calculated output
Expansion MRR signed movement
bridgeMovements.expansion = expansion MRR

Where

expansionMrr
Expansion MRR (currency units on one consistent period basis)Source: Business record
bridgeMovements.expansion
Expansion MRR signed movement (signed currency units)Source: Calculated output
Contraction MRR signed movement
bridgeMovements.contraction = −contraction MRR

Where

contractionMrr
Contraction MRR (currency units on one consistent period basis)Source: Business record
bridgeMovements.contraction
Contraction MRR signed movement (signed currency units)Source: Calculated output
Churned MRR signed movement
bridgeMovements.churn = −churned MRR

Where

churnedMrr
Churned MRR (currency units on one consistent period basis)Source: Business record
bridgeMovements.churn
Churned MRR signed movement (signed currency units)Source: Calculated output
Convert MRR to ARR
converterArr = converterRecurringRevenue × 12

Where

arr
Closing ARR (money)Source: Calculated output
converterRecurringRevenue
Entered MRR or ARR run-rate (currency run-rate)Source: Business record
converterArr
Converted ARR (annual currency run-rate)Source: Calculated output
Convert ARR to MRR
converterMrr = converterRecurringRevenue ÷ 12

Where

converterRecurringRevenue
Entered MRR or ARR run-rate (currency run-rate)Source: Business record
converterMrr
Converted MRR (monthly currency run-rate)Source: Calculated output

Money inputs and outputs use the currency selected in the scenario without changing the canonical methodology. Rates, margins, utilisation and buffers are entered as percentages and converted to decimal values for calculation.

2. Worked example

Input assumptions

Worked values below come from the same registered engine and visible default assumptions.

Calculation and outputs

Example

Worked values below come from the same registered engine and visible default assumptions.

Closing MRR
110.00 currency units
Closing ARR
1,320.00 currency units
Gross revenue retention (GRR)
80%
Net revenue retention (NRR)
90%
Bridge reconciliation
0.00 currency units
Opening MRR signed movement
100.00 currency units
New MRR signed movement
20.00 currency units
Expansion MRR signed movement
10.00 currency units
Contraction MRR signed movement
-5.00 currency units
Churned MRR signed movement
-15.00 currency units
Converter entered MRR
1,000.00 currency units
Converter resulting ARR
12,000.00 currency units

The exact engine-derived outputs are shown in the labelled rows below.

Interpretation

Use the reconciled bridge to explain recurring-revenue movement; treat GRR and NRR as cohort diagnostics rather than forecasts.

3. Validation and boundary checks

  • All five movements must be finite and non-negative; contraction plus churn cannot exceed opening MRR.
  • Closing MRR must reconcile exactly to opening plus new and expansion less contraction and churn.
  • Opening MRR of zero returns unavailable GRR and NRR instead of Infinity or a fabricated rate.
  • GRR excludes both expansion and new MRR; NRR includes expansion but excludes new MRR.
  • The embedded converter accepts exactly one monthly or annual basis and preserves MRR × 12 = ARR in both directions.
  • Zero recurring revenue remains a valid zero run-rate; invalid or non-finite values fail closed.

4. Assumptions and source classification

  • All movements use the same monthly recurring-revenue definition and currency basis.
  • MRR and ARR are run-rate planning measures, not recognised-revenue measures.
  • No provider benchmark, market default, country rule or policy constant is embedded.
  • The embedded converter uses the same currency and recurring-revenue definition as the owner bridge.

This planner has no current policy-data dependency. Its commercial assumptions are user supplied. Registered family-level regression suites exercise the shared business-logic engine and worked-result reconciliation.

5. Limitations

  • The bridge does not forecast future revenue or imply revenue-recognition treatment.
  • The retention modules do not diagnose the causes of contraction, churn or expansion.
  • The converter changes cadence only; it does not forecast growth, cash timing or revenue recognition.
  • It does not replace financial, accounting, tax or legal advice.

This is educational decision support, not tax, accounting, legal or financial advice. Check the treatment of your actual transactions under the rules that apply to your business and seek qualified advice where appropriate.

6. Update and evidence policy

Registered family-level suites test formula invariants and example reconciliation; the release ledger records that coverage without claiming a separate oracle for every line of public copy. There is no official threshold or benchmark to refresh for this planner. Commercial inputs remain user-supplied because they vary by business and contract.

Change history

  1. : Initial public release of the planner and methodology after pre-launch calculation, content, source and interaction review.

Guides to interpret the decision and its assumptions.

Return to the planner