Why cross-product MRR is harder than it looks
For a single product on a single Stripe account, MRR is close to a solved problem: the dashboard shows it, and it is usually right. The moment you add a second product — especially on its own account or a different provider — three things break at once.
First, the number lives in more than one place, each with its own login and its own date range. Second, each product may define revenue slightly differently: one is pure subscriptions, another mixes in one-off sales, a third bills annually. Third, currencies and fees creep in, so total MRR becomes a figure you have to construct rather than read.
None of this is hard math. It is bookkeeping discipline applied across systems that were never designed to talk to each other. The goal of this guide is to give you a method that stays honest as the number of products grows.
First, agree on what MRR actually means
Before you add anything up, pin down the definition, because a portfolio total is only meaningful if every product feeds it the same kind of number.
MRR — monthly recurring revenue — should count only recurring subscription revenue, normalized to a monthly figure. An annual plan at $120 contributes $10 of MRR, not $120 in the month it was charged. A one-time $49 template sale is not MRR at all; it is one-off revenue. Refunds and failed charges reduce it; taxes and processing fees are usually excluded from the top-line MRR figure but matter for net revenue.
For a portfolio, write this definition down once and apply it everywhere. The most common way cross-product MRR goes wrong is that one product's number secretly includes one-off sales or gross-of-refunds figures while another does not, so the total compares unlike things.
Method 1: The spreadsheet
The honest starting point for most founders is a spreadsheet, and there is nothing wrong with that at two or three products. One row per product, columns for new, expansion, contraction, and churned MRR, and a formula that rolls them into a monthly total.
The strengths are real: it is free, it is flexible, and building it forces you to actually understand your own numbers. The weakness is equally real: it is manual. Every month you log into each provider, pull the figures, convert currencies, and type them in — and every month there is a small chance you fat-finger a number or copy last month's by accident.
A spreadsheet scales with your discipline, not with your business. It works right up to the point where the monthly update becomes a chore you dread, at which point it quietly stops getting done — the worst outcome, because a stale MRR number is more dangerous than no number at all.
Method 2: Native provider dashboards
Every serious provider — Stripe, Paddle, Lemon Squeezy — has some built-in revenue reporting. For a single product this is often enough. Across products it falls down for a structural reason: each dashboard only knows about its own account.
You can get each product's MRR from its native dashboard, but you cannot get a portfolio total without exporting and combining them yourself — which is really Method 1 with extra steps. Native dashboards are also inconsistent about definitions: what one calls MRR another calls net volume or billing, and the date ranges and timezone handling differ.
Use native dashboards as the source of truth for each individual product, but do not expect them to give you a cross-product view. That is not what they are for.
Method 3: A metrics or analytics tool
Tools like ChartMogul, Baremetrics, and NoNoiseMetrics exist precisely to turn raw payment data into clean subscription metrics — MRR, churn, LTV, cohorts — and several of them can connect more than one account.
If your products are subscription businesses and you want depth, this is the right category. You get consistent definitions, movement breakdowns, and trends without maintaining a spreadsheet. The cost is, well, cost: most price by your MRR, so a portfolio of products can get expensive, and the depth can be more than you need if your real question is simply which product is worth my time.
This method is excellent when the analytics themselves drive your decisions. It is heavier than necessary when you mostly want a consolidated view and a keep-or-kill read.
Method 4: A multi-account portfolio tool
A newer category focuses specifically on the multi-product case: connect several accounts, normalize them into one view, and rank products side by side. VerifiedMRR is built for this — you connect each product's payment account with a read-only key, and it shows net revenue, refunds, fees, and trend for every product in one private dashboard, then puts a Keep, Watch, or Kill label on each.
The tradeoff is the mirror image of Method 3: less analytical depth (no cohorts or LTV), more focus on the portfolio-level decision. If your question is how is the whole thing doing, and what should I cut? rather than what is my net revenue retention by cohort?, this shape fits better — and a flat or one-time price avoids MRR-based billing across a portfolio.
Whichever tool you choose, the win over a spreadsheet is the same: the number updates itself, so it does not rot.
The currency trap
The single most common way a portfolio MRR number becomes fiction is currency. If one product earns in USD and another in EUR, you cannot just add the raw figures — and if you convert them, the total shifts every month with the exchange rate even when nothing about the business changed.
There are two honest options. Either report MRR per currency and never blend (cleanest, but you carry several numbers), or convert everything to a single reporting currency at a consistent rate and be explicit that the total moves with FX. What you must not do is silently add a EUR figure to a USD figure as if they were the same unit, which is the mistake spreadsheets make most often.
A good tool keeps each account in its native currency and shows portfolio totals per currency, so you are never handed one blended number that quietly lies about the exchange rate.
One-time and usage revenue: MRR vs net revenue
Many portfolios are not pure subscriptions. You might have a SaaS on monthly plans, a template shop selling one-off downloads, and a tool with usage-based billing. Forcing all of that into MRR distorts the picture, because one-off and usage revenue are not recurring by definition.
The cleaner approach is to track two numbers. MRR captures the recurring subscription base — the predictable floor. Net revenue captures everything that actually landed in the month, recurring or not, after refunds and disputes. For deciding which product to keep, net revenue and its trend is often the more honest signal than MRR alone, because it reflects the money the product really made.
Whatever you do, be consistent: decide how each product's revenue maps to MRR versus net revenue, and apply it the same way every month.
How to compute portfolio MRR honestly
Putting it together, a defensible portfolio MRR process looks like this. For each product, take recurring subscription revenue, normalize annual plans to monthly, subtract churn and contraction, and exclude one-off and usage revenue (track those separately as net revenue). Keep each product in its native currency.
Then present the portfolio as a small set of honest numbers rather than one hero figure: recurring MRR per currency, total net revenue for the month, and each product's trend. Resist the urge to mash it all into a single blended number — that number is the one most likely to be wrong and the least useful for decisions.
Finally, sanity-check against the money that actually hit your accounts. If your computed figures drift from real payouts, something in the pipeline — a missed refund, a currency slip, a double-counted one-off — is off.
A worked example: three products, one picture
Say you run three things. Product A is a SaaS on monthly and annual plans, billing in USD. Product B is a template shop selling one-off downloads, also USD. Product C is a small tool on monthly subscriptions, billing in EUR.
For MRR, only A and C contribute — B is one-off revenue, so it belongs in net revenue, not MRR. Normalize A's annual plans to monthly: an annual seat at $240 is $20 of MRR, not $240 in the renewal month. Sum A's recurring lines to, say, $1,800 MRR. C's subscriptions come to €600 of MRR — and you keep that in euros rather than folding it into the dollar figure.
So the honest portfolio picture is not one number but a small set: $1,800 MRR in USD plus €600 MRR in EUR recurring, with Product B's one-off sales reported as net revenue on top. Trying to compress that into a single total MRR would force a currency conversion and quietly absorb non-recurring revenue — both of which make the number less true, not more.
Common mistakes that corrupt the number
A few errors show up again and again once you are tracking more than one product. Counting gross instead of net — ignoring refunds and disputes — inflates every product and flatters the worst performers most. Mixing one-off and usage revenue into MRR makes a spiky month look like recurring growth that will not repeat.
Blending currencies at a floating rate makes the total wobble with FX, so you cannot tell a real change from an exchange-rate move. Double-counting is subtle: an annual renewal booked as both a $240 charge and $20 of ongoing MRR, or a transfer between your own accounts counted as revenue. And timezone or date-boundary mismatches between providers can shove a sale into the wrong month, making month-over-month comparisons lie.
None of these are exotic. They are the routine ways a hand-built portfolio number drifts from reality — and the reason a consistent definition, applied the same way every month, matters more than any single tool.
Automate the collection, not the thinking
Whatever method you land on, separate two jobs that founders tend to conflate: collecting the numbers and interpreting them. Collection — logging in, exporting, converting, summing — is pure overhead and the first thing worth automating, because it is where errors and procrastination live. Interpretation — deciding what a trend means and what to do about it — is the part that actually needs you.
The trap with spreadsheets is that they make you do the boring half by hand forever, which slowly starves the useful half of attention. The point of any tool here is not to think for you; it is to hand you a current, trustworthy set of numbers so the time you spend goes into the decision, not the data entry.
When to stop doing it by hand
A spreadsheet is the right tool until it is not. The signal to switch is behavioral, not numerical: when the monthly update starts slipping, when you no longer trust the total, or when you catch yourself avoiding the reconciliation because it is tedious, the manual method has stopped serving you.
At that point a tool earns its keep — not because it computes anything you could not, but because it removes the discipline tax. The number stays current on its own, so it is there when you need to make a decision instead of something you reconstruct after the fact.
If your products are subscription-heavy and you want depth, reach for a metrics tool. If you run several products and mostly want a consolidated view with a keep-or-kill read, a portfolio tool like VerifiedMRR is the lighter fit — connect each account read-only, and let the number keep itself honest.