ARR / MRR Reporting
The recurring process that normalizes every subscription contract into a monthly and annual recurring revenue figure, classifies the period's movements, and publishes an ARR walk that reconciles to the prior period and to the books.
Key facts
- In one sentence
- The recurring process that normalizes every subscription contract into a monthly and annual recurring revenue figure, classifies the period's movements, and publishes an ARR walk that reconciles to the prior period and to the books.
- Primary owner
- CFO
- Workflow
- 10 steps, from “Write and approve the recurring revenue policy” to “Govern definition changes and review exceptions”
- North-star metric
- MRR (Monthly Recurring Revenue)
What is arr / mrr reporting?
ARR/MRR reporting is the recurring process by which a subscription business converts its active contracts into a single normalized recurring revenue number — monthly recurring revenue (MRR) and its annualized equivalent, annual recurring revenue (ARR) — classifies every change since the last period into new, expansion, contraction, churn, and reactivation, and publishes the result as an ARR walk that ties the opening balance to the closing balance. It is the reporting layer that turns a billing system full of heterogeneous contracts, terms, discounts, and billing frequencies into the handful of numbers a board, an investor, and an operating team actually run the company on.
ARR is not revenue. GAAP revenue is what was earned in a period under ASC 606; ARR is a forward-looking snapshot of the annualized value of recurring contracts in force at a point in time. Nor is ARR the same as bookings (the contract value signed in a period, including non-recurring elements and future start dates) or billings (what was invoiced). A company can book a large multi-year deal, bill it entirely up front, and recognize a twelfth of it in revenue that month — three different numbers describing the same contract. Conflating them is the single most common failure mode in SaaS reporting, and it is why the recurring revenue definition has to be written down before any number is published.
The process exists because recurring revenue is the operating metric of a subscription business and almost nothing derives it automatically. Contracts are monthly, annual, and multi-year; some include one-time implementation fees, professional services, and usage overages that may or may not count; discounts, ramps, and free periods distort the naive contract value; and a customer who downgrades and one who cancels look identical in a billing export unless someone classifies them. Without a defined policy and a repeatable process, ARR becomes whatever the last person to build the spreadsheet decided it was — and the history quietly changes every time it is rebuilt.
A mature ARR/MRR reporting process produces three things: a point-in-time balance that can be recomputed identically months later, a movement walk that explains the change without a plug, and a set of derived retention metrics (gross revenue retention, net revenue retention, logo retention) that are consistent with that walk. Those outputs feed board reporting, forecasting, valuation and diligence, sales capacity planning, and customer success prioritization.
When to implement
Any company with recurring contracts needs ARR/MRR reporting from its first paying customers; what changes with scale is rigor and automation. Pre-seed and seed companies typically run it from a billing export into a spreadsheet each month. Once contract structures diversify — multi-year terms, ramps, usage components, multi-entity or multi-currency — the calculation needs to move to a modeled data set in a warehouse with versioned snapshots. Prerequisites: a single system of record for subscriptions, a written recurring revenue policy defining what counts, and a defined monthly cadence tied to the close calendar. Companies with predominantly usage-based or consumption pricing should adapt the model rather than adopt it wholesale — see the FAQ on usage-based revenue.
Step-by-step workflow
- 1
Write and approve the recurring revenue policy
Owner: CFO + Controller
Before any number is produced, document what counts as recurring revenue and what does not. This policy is the definition every downstream report inherits, and changing it later forces a restatement of history — so it is worth the argument up front.
- Define what is included: subscription fees, committed platform fees, recurring support tiers
- Define what is excluded: implementation and setup fees, professional services, hardware, pass-through costs, one-time overages
- Set the treatment of usage-based and consumption revenue (excluded, committed-minimum only, or trailing-average)
- Set the annualization convention (MRR × 12) and the point-in-time snapshot date
- Define when a contract enters ARR: signature, start date, or first invoice — and apply it consistently
- 2
Establish the subscription source of truth
Owner: RevOps
Designate one system as authoritative for contract terms — typically the billing or subscription management platform, with the CRM as the origination record — and ensure every active contract exists there with the fields the calculation needs: start and end dates, term length, billing frequency, list and net price, quantity, discount, and ramp schedule.
- Map required fields and enforce them at contract creation via deal desk or order form validation
- Reconcile CRM closed-won opportunities against billing subscriptions to catch contracts that never got provisioned
- Backfill or correct historical records before the first published snapshot
- 3
Normalize every contract to monthly recurring value
Owner: Finance analyst / RevOps
Convert each active subscription to a common monthly figure regardless of how it is billed. An annual contract billed up front is its annual net value divided by twelve, not a spike in the month invoiced. Multi-year and ramped deals use the rate in effect on the snapshot date, not the average or the final-year rate.
- Divide annual and multi-year contract values by their term months to get the in-force monthly rate
- Apply the contracted rate effective on the snapshot date for ramped deals
- Net discounts and credits into the recurring rate; exclude free trial and $0 pilot periods
- Convert foreign-currency contracts at the policy-defined rate (typically a fixed budget rate or period-end spot rate, applied consistently)
- 4
Take and version the period snapshot
Owner: Finance analyst / Analytics engineer
Capture the full customer-level MRR set as of the period-end date and store it immutably. Versioned snapshots are what make history reproducible — without them, every rebuild of the model silently restates prior periods and the board sees numbers that changed without explanation.
- Snapshot at a consistent point (typically the last calendar day of the month) after the billing subledger cutoff
- Store customer-level detail, not just the total, so any movement can be traced to an account
- Never overwrite a published snapshot; corrections are recorded as an explicit, documented restatement
- 5
Classify movements against the prior snapshot
Owner: Finance analyst / RevOps
Join the current snapshot to the prior one at the customer level and assign every difference to exactly one movement category. Each dollar of change must land in one bucket and only one — this mutual exclusivity is what makes the walk tie.
- New: customers with MRR this period and none in any prior period
- Expansion: existing customers whose MRR increased (upsell, cross-sell, seat growth, price increase)
- Contraction: existing customers whose MRR decreased but remains above zero (downgrade, seat reduction)
- Churn: customers whose MRR went to zero
- Reactivation: previously churned customers returning to non-zero MRR
- Handle account merges, splits, and re-papering with an explicit rule so they don't surface as simultaneous churn and new
- 6
Build the ARR walk and prove it ties
Owner: Finance analyst
Assemble the bridge: opening MRR + new + expansion + reactivation − contraction − churn = closing MRR. The walk must reconcile exactly to the independently computed closing snapshot with no balancing plug. A plug means a classification rule is wrong, not that the number is close enough.
- Compute closing MRR independently from the snapshot, not as the sum of the movements
- Reconcile the two figures to zero variance before publishing
- Investigate any residual at the customer level and correct the classification rule, not the total
- 7
Reconcile to GAAP revenue and billings
Owner: Controller
Tie the recurring revenue picture back to the books. Recognized subscription revenue for the period should be explainable from the MRR base plus mid-month starts and stops, and any material gap should have a named cause — a large implementation fee, a services engagement, a mid-period start — rather than being written off as a timing difference.
- Bridge closing MRR to recognized subscription revenue for the period
- Identify and quantify the non-recurring components excluded from ARR
- Escalate unexplained variances above the materiality threshold to the Controller before publication
- 8
Calculate derived retention and efficiency metrics
Owner: FP&A
From the same walk, compute gross revenue retention, net revenue retention, logo retention, ARPA, and the SaaS quick ratio. Deriving them from the published walk rather than a separate query guarantees the retention numbers and the ARR numbers cannot disagree.
- Define the cohort basis (trailing twelve months against the same set of customers) and state it on the report
- Compute GRR excluding expansion; compute NRR including it
- Segment by cohort, plan tier, segment, and region where volume supports it
- 9
Publish the reporting pack and archive the inputs
Owner: FP&A + CFO
Distribute the ARR walk, retention metrics, and segmentation on the agreed cadence alongside the month-end financial statements, with definitions restated on the report itself. Archive the snapshot and the classification output so any figure can be reproduced on request during diligence or an audit.
- Publish alongside close outputs so finance and operating numbers land together
- Include the definition footnotes on the report, not in a separate document nobody opens
- Archive snapshot, movement detail, and the report version together
- 10
Govern definition changes and review exceptions
Owner: CFO
Treat the recurring revenue definition as controlled: changes require explicit approval, a documented rationale, and a restated history so trends remain comparable. Review recurring exceptions — accounts repeatedly requiring manual classification — and fix the underlying contract data rather than the spreadsheet.
- Log every definition change with effective date and rationale
- Restate and republish prior periods when a change is material to the trend
- Route recurring manual overrides back to deal desk or RevOps as data-quality fixes
Roles & responsibilities
| Role | Responsibility |
|---|---|
| CFO | Owns the recurring revenue definition, approves changes and restatements, and presents ARR and retention to the board and investors. |
| Controller | Reconciles ARR to GAAP revenue and billings, and ensures the reporting cadence aligns with the close calendar. |
| FP&A | Builds the walk, derives retention and efficiency metrics, produces the reporting pack, and ties ARR into forecast and plan. |
| RevOps | Owns contract data quality in the CRM and billing system, and the classification logic that turns raw subscriptions into movements. |
| Analytics engineer / Data team | Models subscription data in the warehouse, maintains versioned snapshots, and makes the calculation reproducible rather than spreadsheet-bound. |
| Deal desk | Ensures non-standard contracts — ramps, multi-year, usage components, mid-term amendments — are structured and recorded so they can be classified without manual interpretation. |
| Sales and CS leadership | Consume the segmented walk; accountable for the new, expansion, contraction, and churn lines respectively. |
Tool stack
Subscription billing / revenue management
Stripe Billing · Chargebee · Maxio · Zuora — system of record for contract terms and the primary input to the calculation
CRM
Salesforce · HubSpot — origination record for bookings; reconciled against billing to catch unprovisioned contracts
Data warehouse
Snowflake · BigQuery · Databricks — where versioned snapshots and movement classification live once spreadsheets stop scaling
BI / reporting
Looker · Tableau · Omni — publishes the walk and retention metrics with consistent definitions
SaaS metrics / FP&A platform
Mosaic · Pigment · Causal — packaged ARR walks and retention reporting for teams not building it in-house
Spreadsheet
Excel · Google Sheets — entirely sufficient below a few hundred contracts, provided snapshots are archived and not overwritten
Key metrics
| Metric | Definition | Formula | Typical target |
|---|---|---|---|
| MRR (Monthly Recurring Revenue) | Normalized recurring subscription value in force for a single month, at a point in time. | Σ (contracted recurring value ÷ term months) across active subscriptions | — |
| ARR (Annual Recurring Revenue) | The annualized value of recurring contracts in force on the snapshot date. | MRR × 12 | — |
| Net New MRR | The total period change in recurring revenue across all movement categories. | New + Expansion + Reactivation − Contraction − Churn | — |
| Gross Revenue Retention (GRR) | Share of recurring revenue retained from an existing cohort, excluding expansion — measures pure leakage. | (Opening MRR − Contraction − Churn) ÷ Opening MRR | typical range: 85–95% for mid-market and enterprise SaaS; lower for SMB |
| Net Revenue Retention (NRR) | Share of recurring revenue retained from an existing cohort including expansion, measured against the same customers a year prior. | (Opening MRR + Expansion − Contraction − Churn) ÷ Opening MRR | typical benchmark: above 100%; 110–120%+ for strong enterprise expansion motions |
| Logo retention | Share of customers retained over the period, unweighted by revenue. | Customers at period end from the opening cohort ÷ customers at period start | typical range: 80–90% annually, varying sharply by segment |
| ARPA (Average Revenue Per Account) | Mean recurring revenue per active customer, used to detect mix shift up- or down-market. | MRR ÷ active customer count | — |
| SaaS quick ratio | Growth efficiency: recurring revenue added relative to recurring revenue lost in the period. | (New + Expansion) ÷ (Contraction + Churn) | typical benchmark: above 4 for efficient growth |
Common failure points
| Failure | Symptom | Fix |
|---|---|---|
| Bookings reported as ARR | A multi-year contract signed in the period inflates ARR by its total contract value; the number drops inexplicably next month. | Report ARR as the annualized in-force rate on the snapshot date; report total contract value separately as bookings. |
| One-time fees included in recurring revenue | ARR jumps in months with heavy implementation or services activity, then contracts with no customer having churned. | Exclude setup, implementation, services, and hardware from ARR per written policy; report them as non-recurring revenue. |
| The walk doesn't tie and gets a plug | An 'other' or 'adjustment' line absorbs the difference between the movements and the closing balance. | Trace the residual to individual customers; the cause is almost always overlapping classification rules or unhandled account merges, both of which are fixable. |
| Snapshots overwritten instead of versioned | Prior-period ARR changes every time the model is rebuilt; board decks from different quarters disagree. | Store immutable customer-level snapshots per period; treat any change to a published figure as an explicit, documented restatement. |
| Annual prepayment counted in the month billed | MRR spikes in renewal-heavy months and collapses afterward, tracking cash rather than the subscription base. | Normalize every contract to its monthly in-force rate regardless of billing frequency; track cash collection separately. |
| Definitions drift between teams | Finance, sales, and the board deck each show a different ARR for the same month. | Publish one definition, derive every report from the same snapshot and walk, and restate the definitions on the report itself. |
| Downgrades classified as churn | Gross retention looks worse than reality and expansion motions are undercounted; churn analysis chases the wrong customers. | Classify a reduction to non-zero MRR as contraction and only a reduction to zero as churn; apply the rule in code, not by judgment. |
| Volatile usage revenue folded into ARR | ARR moves with seasonal consumption and forecasts built on it miss badly. | Include only committed minimums in ARR, or report usage revenue as a clearly labeled separate line with its own trailing-average treatment. |
| ARR recognized at signature for contracts that haven't started | Reported ARR exceeds what any month's billing could support; diligence surfaces the gap. | Pick one entry point — typically the contract start date — write it into the policy, and apply it to every contract without exception. |
Frequently asked questions
- What is the difference between MRR and ARR?
They are the same measurement at different scales: MRR is normalized recurring revenue for one month, and ARR is that figure annualized, conventionally MRR × 12. Companies with predominantly monthly contracts and SMB customers tend to report MRR; those with annual and multi-year enterprise contracts tend to report ARR. Some enterprise businesses compute ARR directly from annual contract values instead of multiplying MRR — either is defensible, but mixing the two conventions within one report is not.
- Is ARR the same as revenue?
No. ARR is a point-in-time snapshot of the annualized value of recurring contracts in force; GAAP revenue is what was actually earned in a period under ASC 606. They diverge for structural reasons: ARR excludes services and one-time fees that revenue includes, ARR counts a full month for a contract that started mid-month, and revenue reflects recognition timing that ARR ignores entirely. ARR is an operating metric, not an accounting one, which is exactly why it should be reconciled to the books each period rather than reported in isolation.
- How should usage-based revenue be handled in ARR?
There are three defensible treatments. Include only the committed minimum or platform fee, which is the most conservative and the most common in hybrid pricing. Include a trailing-twelve-month average of actual usage, which better reflects economics for consumption-heavy businesses but introduces volatility. Or exclude usage entirely and report it as a separate revenue line. What matters is picking one, writing it into the policy, and labeling it on the report — investors will accept any of the three and will not accept an undisclosed mix.
- What is the difference between gross and net revenue retention?
Gross revenue retention measures only what was lost — churn and contraction against an opening cohort — and is capped at 100%. Net revenue retention adds expansion from that same cohort and can exceed 100% when existing customers grow more than others shrink. GRR shows how leaky the bucket is; NRR shows whether the remaining customers are growing fast enough to compensate. A high NRR paired with a weak GRR is a warning sign: a few large expansions are masking broad-based churn.
- Who should own ARR reporting?
Finance should own the definition and the published number, since ARR feeds board reporting and diligence and must reconcile to the books. RevOps typically owns the contract data quality and the classification logic that produces it. The failure mode to avoid is sales or CS maintaining a separate ARR figure for their own reporting — one number, one owner, with segmented views for each team.
- How often should the ARR walk be produced?
Monthly, aligned with the month-end close so operating and financial numbers are published together and reconcile to the same period. Some companies additionally track a live in-month view for pipeline and renewal management, but that view should be clearly labeled as unaudited and never used in board reporting in place of the closed snapshot.
- How do you handle a customer who churns and comes back?
Classify the departure as churn in the period it occurred and the return as reactivation, not as new. Counting a returning customer as new overstates new-business performance and understates the churn problem, and it makes cohort retention analysis meaningless. Define the reactivation window in the policy — most companies treat any previously churned account as reactivation regardless of how long it was gone.
- Should ARR include contracts that are signed but haven't started?
Under the most common convention, no — ARR reflects contracts in force on the snapshot date, so a contract with a future start date is bookings, not ARR, until it starts. Some companies report committed ARR (cARR), which does include signed contracts pending start, precisely to close that gap. Either is acceptable if labeled: reporting cARR as ARR without saying so is the version that gets caught in diligence.
Download the SOP
The standard operating procedure for this process — purpose, roles, step-by-step procedure with checklists, metrics, and failure modes — is available as a Markdown file you can drop into Notion, Confluence, or any wiki and adapt.
↓ ARR / MRR Reporting SOP (.md)Related processes
- Month-End CloseThe recurring accounting process that reconciles, adjusts, and finalizes a company's books each month so financial statements are accurate and ready for reporting.
- Quote-to-Cash (QTC)The end-to-end revenue pipeline from configuring a quote through contracting, order management, billing, collections, and revenue recognition — where deals become dollars.
- RevOps ReportingThe system of record for go-to-market performance: one metric dictionary, one funnel, and a reporting cadence that gives leadership numbers they can trust and act on.
- Renewal ManagementThe process of securing a customer's continued contract before it expires — tracking renewal dates, assessing risk early, building the value case, and closing the commercial terms.
Cite this page
“ARR / MRR Reporting: definition, workflow, roles, metrics & SOP.” b2bprocess.com, updated 2026-08-09. https://b2bprocess.com/arr-mrr-reporting