Multi-currency and exchange rates


If you have customers paying in different currencies, understanding how GrowPanel handles exchange rates is essential. This article explains the approach in detail—why your MRR can change even without customer activity, how to read FX impact in your reports, and when to use the "Fix FX" feature.


The core concept

GrowPanel stores all amounts in their original currency. When you view reports, amounts are converted to your reporting currency on demand, using historical daily exchange rates.

This is different from most other tools, which convert to a single currency when data is imported and never update it.

Why this matters

GrowPanel's approach:

  • You can switch reporting currency instantly
  • Historical reports are recalculated with accurate rates for each day
  • You see true currency exposure and FX impact

Other tools' approach:

  • Currency is locked at import time (or at each payment)
  • Switching reporting currency requires re-importing data
  • FX changes only appear when customers pay again

How it works in practice

Step 1: Original currency is stored

When a customer pays, GrowPanel stores the exact amount in the original currency.

Example:

  • Customer pays $100 USD on January 1st, 2025
  • GrowPanel stores: $100 USD

Step 2: Conversion happens on demand

When you view a report with EUR as your reporting currency, GrowPanel looks up the USD→EUR exchange rate for that specific date.

Example:

  • January 1st, 2025: USD→EUR rate is 0.96
  • Displayed MRR: $100 × 0.96 = €96

Step 3: Rates are updated daily

GrowPanel maintains daily exchange rates for 150+ currencies. As rates change, so does the converted value—even for the same underlying subscription.

Example (same customer, later date):

  • June 1st, 2025: USD→EUR rate has dropped to 0.85
  • Displayed MRR: $100 × 0.85 = €85

The customer hasn't changed anything. They're still paying $100 USD. But when viewed in EUR, their MRR has decreased by €11 due to exchange rate movement.


FX impact in reports

Because exchange rates change daily, your MRR in the reporting currency can change even without any customer activity. GrowPanel shows this separately as FX Impact.

In the MRR table

The breakdown table shows FX Impact as a separate row:

RowDescription
NewMRR from new customers
ExpansionMRR increases from existing customers
ContractionMRR decreases from existing customers
ChurnMRR lost from cancelled customers
ReactivationMRR from returning customers
MRR changeNet change from real customer activity
FX ImpactChange due to exchange rate fluctuations
MRRTotal MRR at end of period (includes FX)

FX Impact row in MRR table

In charts

Bar charts show FX Impact as a separate segment. You can show or hide any segment by clicking it in the legend.

FX Impact segment in bar chart

When FX Impact appears

The FX Impact row only appears if:

  • You have customers paying in currencies other than your reporting currency
  • Exchange rates have changed between periods

If all your customers pay in your reporting currency, you won't see FX Impact.


A complete example

Let's walk through a realistic scenario to show how FX affects your reports.

The situation

  • Your reporting currency is EUR
  • You have two customers:
    • Customer A: $1,000 USD/month
    • Customer B: €500 EUR/month
  • You're looking at January through March 2025

January 1st

CustomerOriginal amountUSD→EUR rateMRR in EUR
A$1,000 USD0.96€960
B€500 EUR1.00€500
Total€1,460

February 1st (USD weakens)

CustomerOriginal amountUSD→EUR rateMRR in EUR
A$1,000 USD0.92€920
B€500 EUR1.00€500
Total€1,420

What the report shows:

  • MRR change from customers: €0 (no one upgraded, downgraded, or churned)
  • FX Impact: -€40 (Customer A's USD is now worth less in EUR)
  • Net MRR change: -€40

March 1st (USD recovers slightly)

CustomerOriginal amountUSD→EUR rateMRR in EUR
A$1,000 USD0.94€940
B€500 EUR1.00€500
Total€1,440

What the report shows:

  • MRR change from customers: €0
  • FX Impact: +€20
  • Net MRR change: +€20

The key insight

Your total MRR went from €1,460 → €1,420 → €1,440 over three months, even though:

  • No customers churned
  • No customers upgraded or downgraded
  • Both customers are still paying the exact same amount in their original currency

This is entirely due to USD/EUR exchange rate fluctuations. GrowPanel makes this visible so you understand what's driving your numbers.


The Fix FX feature

Sometimes you want to analyze growth without FX noise. The Fix FX feature freezes exchange rates at a specific point in time.

How to use it

  1. Open any report with a date range
  2. Find the Fix FX checkbox (near the currency selector)
  3. Enable it

When enabled, all exchange rates are frozen at the start date of your selected period.

Fix FX toggle in report header

Example

You're viewing "Year to date" (January 1 – today) with EUR as reporting currency:

Without Fix FX:

  • Each day uses that day's exchange rate
  • FX Impact row shows currency fluctuation effects
  • MRR changes reflect both customer activity AND exchange rates

With Fix FX:

  • All amounts use the January 1st exchange rate
  • FX Impact row shows €0 (or is hidden)
  • MRR changes reflect ONLY customer activity

When to use Fix FX

ScenarioUse Fix FX?
Analyzing real business growthYes — removes FX noise
Reporting to investors in a specific currencyYes — shows operational performance
Understanding currency exposureNo — you need to see FX impact
Comparing to bank depositsNo — actual received amounts vary with FX
Year-over-year comparisonConsider it — makes comparison fairer

Why growth looks different in different currencies

A common question: "My MRR grew 20% in USD but only 12% in EUR. Which is correct?"

Both are correct. They're measuring different things.

Example

Starting point (January):

  • Total MRR: $10,000 USD
  • At 0.96 USD→EUR: €9,600 EUR

Ending point (December):

  • Total MRR: $12,000 USD (grew $2,000)
  • But USD→EUR rate is now 0.90
  • At 0.90: €10,800 EUR (grew only €1,200)

In USD: 20% growth ($2,000 ÷ $10,000) In EUR: 12.5% growth (€1,200 ÷ €9,600)

The difference isn't a bug—it's currency math. If the USD weakened against the EUR during the year, your USD growth is partially offset when viewed in EUR.

Which should you report?

AudienceRecommendation
US investorsReport in USD
European investorsReport in EUR, consider Fix FX
Internal operationsReport in your functional currency
Board meetingsPick one and be consistent

Switching reporting currency

You can change your reporting currency instantly:

  1. Use the currency dropdown in any report
  2. Or change the default in Settings → Reporting → Default reporting currency

When you switch:

  • All amounts are recalculated immediately
  • Historical data uses historical rates for each period
  • No data re-import is needed

This is one of GrowPanel's strengths—you can view your business through different currency lenses without any setup.


Exchange rate sources and accuracy

GrowPanel uses daily exchange rates from trusted financial data providers, covering 150+ currencies.

Rate timing

  • Rates are captured at end-of-day (UTC)
  • Each day's transactions use that day's rate
  • Rates are updated automatically

Supported currencies

All major currencies are supported, including:

  • USD, EUR, GBP, JPY, CHF, CAD, AUD
  • Emerging market currencies
  • Cryptocurrencies are not supported (due to volatility)

Rate accuracy

The rates used match major financial data sources. Small differences from your bank's rates are normal because:

  • Banks add margin to exchange rates
  • Exact timing of rate capture varies
  • Interbank rates differ from consumer rates

Common questions

"My MRR dropped but I didn't lose any customers"

This is likely FX Impact. Check:

  1. Look at the FX Impact row in the MRR table
  2. Compare MRR in the customer's original currency vs. your reporting currency
  3. Consider using Fix FX if you want to see only customer-driven changes

"FX Impact is huge this month"

Large FX swings happen during currency volatility (economic events, interest rate changes, etc.). This is real—your revenue in the reporting currency did change. If you want to filter it out for analysis, use Fix FX.

"Why can't I just see everything in the original currency?"

You can! Filter by currency to see only customers in a specific currency, or use Fix FX to neutralize exchange effects. But for a complete business view, you typically need a single reporting currency.

"My annual report looks worse in EUR than USD"

This happens when your customer base is USD-heavy and the USD weakened during the year. Your USD growth was real, but it's offset by unfavorable exchange rates when viewed in EUR. Use Fix FX for an apples-to-apples comparison.

"When does GrowPanel update exchange rates?"

Daily. Each day's amounts use that day's closing rate. Historical data doesn't change retroactively—rates are locked for past dates.


Summary

  • GrowPanel stores amounts in original currencies and converts on demand
  • Daily exchange rates for 150+ currencies ensure accurate conversions
  • FX Impact appears as a separate row/segment showing currency fluctuation effects
  • Use Fix FX to freeze rates and see only customer-driven changes
  • Growth percentages differ by currency—this is correct currency math
  • You can switch reporting currency instantly without re-importing data

Understanding FX handling helps you interpret your reports correctly and explain changes to stakeholders—especially when currency markets are volatile.