How to handle multi-currency MRR
Last updated: July 23, 2026
From the SoleOS answers series — written about our own product space; grounded in published definitions and documented behavior, never invented numbers.
If you charge customers in more than one currency, your raw revenue numbers can't be added together as-is — €1, $1, and £1 are not the same amount of value, and the gap between them moves every day. The fix is to convert every charge into a single reporting currency using a consistent exchange-rate convention, then track that converted total over time. Which convention you pick matters less than picking one and never quietly switching it, because an inconsistent conversion is what makes MRR look like it grew or shrank when nothing about the business actually changed.
SoleOS published this guide — it's portfolio intelligence for solo founders that normalizes multi-currency revenue to USD automatically, though the reasoning below applies whatever tool, or spreadsheet, you use.
The core problem: currencies aren't interchangeable units
Say you run a SaaS product with subscribers paying in three currencies:
- 40 customers at $10/month (USD) = $400
- 30 customers at €10/month (EUR)
- 20 customers at £10/month (GBP)
You cannot report "$400 + €300 + £200 = 900" as MRR — that isn't a currency, it's three incompatible units mashed together. To get one MRR figure, convert €300 and £200 into USD at some rate. At roughly 1.08 USD/EUR and 1.27 USD/GBP, that's $324 and $254, for a converted MRR of $978. Nudge the rate even by a cent and the total changes — even though not one customer's price moved.
This is the part that trips people up: the moment you have non-USD (or non-whatever-your-reporting-currency-is) customers, your MRR is partly a measure of your business and partly a measure of the currency market. Separating those two is the whole exercise.
Picking a rate convention: fixed period rate vs. live spot rate
There are two common ways to assign an exchange rate to a charge, and each has a real trade-off.
A fixed or period rate. You pick one rate per period — say, the rate on the first of the month, or a monthly average — and apply it to every charge in that currency for the whole period. This makes month-over-month comparisons cleaner: if MRR moves, it's because customer counts or prices moved, not because the euro had a volatile month. The trade-off is that it doesn't reflect what actually landed in your bank account on any given day — if the EUR/USD rate drifted a few percent during the month, your converted MRR and your actual USD-equivalent cash received will diverge slightly.
The live spot rate at each charge. You convert each transaction at the exchange rate in effect the moment it was charged. This is more accurate to actual cash value and matches what accountants often want when reconciling against bank deposits. The trade-off is that your MRR trend now bakes in currency-market noise — a strong-dollar month makes your non-USD revenue look like it shrank even if you added customers, and a weak-dollar month flatters you even if you lost some.
Neither convention is "correct." Accountants, banks, and reporting tools all make different reasonable choices here. What matters for tracking a metric like MRR over time is that you don't mix conventions between periods — comparing a January figure computed with a period-average rate against a February figure computed with spot rates on each transaction date isn't a real comparison, even though both numbers are technically "in USD."
Why FX movement can fake your growth number
This is the practical consequence worth internalizing: if you don't isolate currency effects, a stable or even shrinking multi-currency business can show rising MRR, and a genuinely growing one can show flat or falling MRR, purely from exchange-rate movement.
Take the earlier example. Say nothing changes about your customer base month to month — same 30 EUR customers at €10, same 20 GBP customers at £10 — but EUR/USD moves from 1.08 to 1.12 while GBP/USD holds steady. Your EUR revenue in USD terms goes from $324 to $336 for zero product reason. Spread that kind of drift across a full portfolio of currencies and it's easy to convince yourself you're "growing" in a month where you didn't sign a single new customer, or to worry about a "decline" that's really just the dollar strengthening.
The way to catch this is to separate the two effects: hold customer counts and local-currency prices constant and re-run last month's numbers at this month's rates (or vice versa). Whatever's left over is FX movement, not business movement — the same logic behind the constant-currency reporting public companies use, scaled down to something a solo founder can do in a spreadsheet. See this guide on tracking revenue as a solo founder for how that fits into a broader monthly reporting habit, and this comparison of ARR and MRR for small SaaS businesses if you're also deciding which metric to report — the same conversion-consistency rule applies to either one.
A practical approach that doesn't require a finance background
For a solo founder, you don't need a treasury department to get this right — you need three decisions made once and then left alone:
- Pick one reporting currency. USD is the default for most SaaS founders because it's what investors, benchmarks, and most tools expect, but it should be whichever currency you actually think in day to day.
- Apply one consistent rate per period. A daily rate applied to each day's charges, or a single monthly rate applied to the whole month, both work. The point isn't which one — it's using the same rule every month so this month's number is comparable to last month's.
- Don't change the convention once you've started. If you switch from spot-rate to period-average rate, or change your rate source, partway through the year, your trend line will show a jump that has nothing to do with your business. If you must change it, note the date so anyone reading your numbers later knows not to over-read that one transition.
Everything else — historical rate lookups, applying the rate consistently across every transaction, keeping FX movement visible separately from real growth — is bookkeeping. It's tedious by hand every month, which is exactly the kind of task that's easy to get subtly wrong without anyone noticing.
How this gets automated
Tools built for tracking a multi-currency portfolio handle this by storing a consistent rate convention once, applying it to every incoming charge automatically, and keeping the converted totals next to the metrics that matter — MRR, growth rate, churn — so you're never manually reconciling currency by currency. SoleOS does this by normalizing every connected revenue source to USD with a consistent rate across the portfolio, which is one reason the SoleOS metrics dashboard shows a single MRR number instead of a pile of per-currency subtotals you'd otherwise add up yourself.
That said, if you only charge in one currency, or your non-primary-currency revenue is small enough that FX drift wouldn't change any decision you'd make, you genuinely don't need a tool for this — a spreadsheet with one exchange-rate column, updated monthly, gets you the same answer. Automating it only pays off once you're juggling enough currencies, or enough charge volume, that doing the conversion by hand becomes error-prone. For more on the mechanics once multi-currency data is flowing, the SoleOS guide library covers connecting revenue sources and reading the resulting metrics.
Frequently asked questions
Should I use the exchange rate from the day of the charge or a monthly average?
Either is defensible — the day-of-charge rate matches your actual bank deposits more closely, while a monthly average smooths out day-to-day volatility so your trend is easier to read. Pick based on whether you care more about reconciling to the cent against your bank statements (use the daily or spot rate) or about a readable growth trend (use a period average). The important part is using the same choice every month.
Which reporting currency should I use if I don't have any USD customers?
Use whichever currency you and anyone you report to — investors, a co-founder, yourself — think in most naturally. USD is common because it's the default in most SaaS benchmarks and tooling, but a business with zero USD customers has no obligation to report in USD. Just be explicit about the choice so nobody assumes otherwise later.
How do I know if my MRR change is real growth or just FX movement?
Recompute last period's revenue using this period's exchange rates (or the reverse) while holding customer counts and local-currency prices fixed. The difference between that recalculated figure and your originally reported figure is the FX component; whatever's left is the part driven by actual customer and pricing changes.
Do I need to convert currencies for ARR too, or just MRR?
The same rule applies to ARR — it's typically MRR times twelve, so if your MRR is already converted consistently, ARR built from it inherits that consistency. The risk is converting inputs at inconsistent rates before annualizing them, which compounds any FX distortion across the multiplier.
What if exchange rates move a lot between when I take payment and when I report?
Nothing breaks, but it's worth noting which rate convention you used if the gap is unusually large — a sudden currency shock, for instance — so a reader of your numbers doesn't mistake a one-time rate swing for a change in the underlying business. Keeping a short note of the convention and any exceptions is usually enough.