6 min readUpdated September 18, 2026

Monthly recurring revenue, defined — and the four cases that break it.

MRR is the monthly value of every active subscription you are billing right now. That is the easy part. The hard part is what happens when the revenue arrives on four platforms, in three currencies, across more than one business — which is where two tools start reporting different numbers for the same company.

Reviewed & approved byStripe logoStripeAmazon logoAmazon
Listed onSentry logoSentry
STAR Level One: Self-AssessmentSecurity Trust Assurance & Risk
Definition

What MRR means.

Monthly recurring revenue (MRR) is the predictable revenue a subscription business bills each month, expressed as a value at a point in time: the sum of the monthly contract value of every active subscription, with annual contracts divided by twelve and discounts subtracted. One-time charges, trials, taxes and processor fees are excluded.

The word doing the work is recurring. MRR is not what landed in the bank this month — that is revenue, and it includes the setup fee and the annual invoice that will not arrive again until next year. MRR is the part that repeats, which is why it is the number a subscription business is valued and planned on.

Formula

The formula.

One line, and then every argument in this field is about what belongs inside the sum.

MRR = Σ (monthly contract value of each active subscription)

An annual plan contributes its price ÷ 12. A discounted plan contributes what is actually charged, not list price. A plan billed quarterly contributes its price ÷ 3.

ARR — annual recurring revenue — is this figure × 12. It is the same subscriptions at a different magnification, smoother month to month, and the one investors tend to quote.

Inclusions

What counts, and what does not.

Most disagreements between two MRR numbers come from this list rather than from arithmetic.

Active subscriptions

The monthly value of every subscription currently billing.

Annual plans, divided by 12

A $1,200/yr contract is $100 of MRR — not $1,200 in the month it was paid.

Expansion and downgrades

A seat added mid-month raises MRR from that moment; a plan downgrade lowers it.

Discounts, subtracted

A 20%-off coupon makes a $100 plan $80 of MRR. The list price was never collected.

One-time charges

Setup fees, overages, consulting. Real revenue, not recurring — counting it makes MRR jump in a month that will not repeat.

Trials

Nobody is being billed yet. Counting trials is how a dashboard shows growth that churns on day 15.

Taxes and processor fees

VAT and Stripe's cut were never yours. Net-of-fees is a separate figure worth tracking — it is not MRR.

Failed and past-due payments

Still owed, not yet collected. Worth its own "MRR at risk" number rather than quietly inflating this one.

Edge cases

The four cases that break MRR.

Each of these produces a number that looks completely ordinary and is wrong, which is the only kind of wrong number that survives long enough to be acted on.

01
Revenue in more than one currency

Click to read.

▾
What goes wrong

A euro subscription and a dollar subscription cannot be added together, and a tool that adds them anyway produces a number that is wrong by whatever the exchange rate happens to be — while looking completely normal.

What to do instead

Either keep the currencies apart and show each, or convert every one of them through a declared rate and say so. What must never happen is a silent sum under a single glyph: €50 rendered as $50 is the failure mode nobody catches, because nothing about it looks broken.

02
Billing on more than one platform

Click to read.

▾
What goes wrong

Stripe excludes one-time charges from its subscription objects. Paddle reports them under the same invoice type by default. Chargebee separates plan MRR from add-on MRR. Three platforms, three definitions, and summing their dashboards gives a fourth number that matches none of them.

What to do instead

Normalise before adding: reduce every platform to the same definition — active subscription × monthly contract value, one-time and trials excluded — and only then sum. The number is then comparable with itself month over month, which is the entire point of tracking it.

03
MRR is a level, not a total

Click to read.

▾
What goes wrong

Revenue is a flow: you can ask what it was over 30 days. MRR is a stock — it has a value right now, the way a bank balance does. "MRR over the last 7 days" is not a question with an answer, and a date filter that appears to answer it is lying.

What to do instead

Show MRR as of a moment, and show its history as a series of those moments. A level at a past date exists only if something recorded it then; it cannot be reconstructed later at any price.

04
More than one business

Click to read.

▾
What goes wrong

Every tool in this category assumes one company with one billing account. Run a SaaS and a membership site and a mobile app and you have three MRR numbers and a spreadsheet, which is a number maintained by hand and therefore wrong by the end of the week.

What to do instead

Roll the businesses up. Each keeps its own MRR; the portfolio holds the combined figure, converted into one reporting currency, recomputed whenever any of them changes.

In practice

One MRR number across 9 billing platforms.

Normalise, then add. Ploxir reduces every platform to the same definition before summing, so the total is comparable with itself month over month — and keeps currencies apart unless you set a reporting currency, in which case every figure is converted with dated rates rather than relabelled.

Stripe logoStripe

Subscriptions, plan changes, refunds — live over webhooks.

Paddle logoPaddle

Merchant of record. Subscription payments normalised to the same MRR definition.

Chargebee logoChargebee

Plan and add-on MRR, plus MRR at risk from past-due invoices.

RevenueCat logoRevenueCat

iOS and Android subscriptions, counted beside web MRR.

Lemon Squeezy logoLemon Squeezy

One-off purchases kept out of MRR, where they belong.

Polar logoPolar

MRR and net revenue after fees.

Whop logoWhop

Membership MRR, net of Whop fees.

Outseta logoOutseta

MRR, MRR at risk, trials and churn.

Memberful logoMemberful

Membership MRR on your own Stripe account.

Run more than one business and each keeps its own MRR, with the portfolio above them holding the combined figure. See the full SaaS metrics dashboard for the rest of the numbers that sit beside it.

FAQ

Frequently asked questions.

What does MRR mean?
MRR stands for monthly recurring revenue: the predictable revenue a subscription business bills every month, as a value right now. It is the monthly value of every active subscription added together — annual contracts divided by twelve, discounts subtracted, one-time charges and trials left out.
What is the MRR formula?
MRR = the sum, over every active subscription, of its monthly contract value. An annual plan contributes its price ÷ 12. A discounted plan contributes what is actually charged, not list price. One-time fees, taxes, processor fees and trialing accounts contribute nothing.
What is the difference between MRR and ARR?
ARR is annual recurring revenue — for most businesses simply MRR × 12. MRR is the more sensitive figure and the one to watch month to month; ARR is smoother and is what investors tend to quote. They describe the same subscriptions at two magnifications.
Should one-time payments count toward MRR?
No. A setup fee, an overage charge or a consulting invoice is real revenue but it is not recurring, and including it makes MRR jump in a month that will not repeat — which is the same as not knowing your MRR. Track one-time revenue as its own figure beside it.
Why do two tools report different MRR for the same business?
Almost always one of four things: annual contracts recognised in full instead of divided by twelve, one-time charges included, trials counted before anyone is billed, or several billing platforms summed without normalising their different definitions first. Mixed currencies added together is the fifth, and the hardest to spot, because the result still looks like a number.
How do you track MRR across several billing platforms?
Normalise first, then add. Each platform defines a subscription slightly differently, so reduce all of them to the same definition before summing — otherwise the total matches none of the dashboards it came from. Ploxir does this across 9 billing platforms and keeps currencies separate unless you set a reporting currency, in which case every figure is converted with dated rates rather than relabelled.
Can I see combined MRR across more than one business?
Yes — that is what Ploxir is for. Each business keeps its own MRR, and the portfolio above them holds the combined figure. Free for 3 businesses.
Track it

See your combined MRR, across every business you run.

Connect your billing platforms and the number is live. Free for 3 businesses, no credit card.