sumwerk

Articles September 21, 2026

MRR in several currencies: why it moves when no customer did

You bill most customers in euros and some in dollars. The board wants one number. The moment you convert, a new source of change enters your MRR that has nothing to do with customers: the exchange rate. If it is not kept apart, a weak dollar looks like contraction and a strong one like expansion, and somebody spends a morning looking for the customers behind it.

Value each customer in the currency they pay in

A customer’s MRR is what they agreed to pay per month, in their currency. A customer on a $499 plan has an MRR of $499 in January and in June, whatever the euro did in between. Their ledger should say so: movements belong to the billing currency. An upgrade from $499 to $799 is an expansion of $300, not of “about €276, depending on the day”.

Only the report converts.

Which rate, on which day

Three choices are defensible. They answer different questions:

Rate MRR of a past month Good for
The rate at each month’s end fixed once the month is over “what was our MRR worth then”: the usual choice, and the one that matches how finance values balances
Today’s rate for every month changes every day, for every month comparing months as if rates never moved; it rewrites history daily
One fixed rate for the year stable, and increasingly wrong plans and budgets, not reporting

sumwerk converts at the European Central Bank’s reference rate of each month’s end (the running month at the latest rate). Weekends and holidays take the last published rate. It is a public, daily, free source, and anybody can check a figure by hand.

Give the rate its own line

With month-end rates, MRR at the end of a month no longer equals last month’s MRR plus the movements, because last month’s dollar customers are now worth a different number of euros. The difference is real, and it is not a movement of any customer. So it gets a line of its own:

  Amount
MRR at the end of May €100,000
New business +€4,000
Expansion +€1,500
Churn and contraction −€2,500
Exchange rates −€600
MRR at the end of June €102,400

Each movement is converted at the rate of its own day, the month ends at their own rates, and what is left over is the effect of exchange rates on customers who did nothing. A tool that has no such line has put the €600 somewhere: usually into expansion or contraction, where it makes your net revenue retention look better or worse than your customers behaved.

What this does to retention

Net revenue retention compares what a cohort pays today with what it paid a year ago. Both sides are in the reporting currency, each at its own month-end rate. A dollar that lost ten percent in a year takes about ten percent off the dollar customers’ side of your NRR, with no churn at all. That is correct, since it is what the revenue is worth to you, but read NRR of a mixed book with the rate in mind, and look at it per currency when it surprises you (in sumwerk: Segments by currency, which shows NRR per row).

Three mistakes to avoid

  1. Converting invoices instead of subscriptions. The rate on the invoice date differs from the rate at month end, and an annual invoice spreads one day’s rate over a year.
  2. Storing converted amounts as the truth. Store what the customer pays, in their currency, and convert when reporting. Otherwise a change of reporting currency means converting a conversion.
  3. Changing the reporting currency quietly. Every past month gets other figures. That is fine, but it is a restatement, and it should say so, once, with the date and the reason.

Free while you build

Connect Stripe in one click and see your revenue, customers and pipeline in a few minutes. Switch on billing management when you want sumwerk to sell your plans in Stripe. Every module is free during early access. Sign-ups go through a waitlist for now: we let companies in one by one.

Join the waitlist