Multi-Currency Converter

Convert world currencies at mid-market rates with a bank-fee breakdown. Swap pairs, override the rate manually, and export the result.

This tool runs entirely in your browser. No amount or rate data is sent to any server.

Conversion Parameters

Mid-market rates vs USD · live ECB reference data, with a bundled offline snapshot as fallback

Converted (Mid-Market)
—
Converted (Bank)
—
Bank Fee Hidden in Spread
—
Exchange Rate Used
—

Formula and Rate Data

All cross-currency rates are derived from USD-based snapshots using triangular arbitrage to ensure consistency:

Cross-Rate Derivation
rate(X → Y) = USD→Y ÷ USD→X
Manual Override
converted = amount × customRate
Bank Rate with Markup
bankRate = midMarketRate × (1 + markup/100)
Hidden Fee
fee = amount × (bankRate − midMarketRate)

Embedded Rate Snapshot (per 1 USD)

CurrencyCodeRate vs USD

Real-World Currency Conversion Scenarios

Three everyday situations where knowing the difference between mid-market, bank, and card rates saves money.

Scenario 1: You're an indie developer in Indonesia invoicing in USD

You're based in Jakarta and invoice a US client $3,000/month. How much you actually receive in IDR depends on three choices:

This tool's "Bank vs Mid-Market" comparison is built exactly for this scenario — plug $3,000 in, select USD→IDR, set bank markup to 2.5%, and see your hidden fee instantly.

Scenario 2: Traveling in Brazil with EUR and USD cards

You're a EU expat with a Portuguese bank account (EUR) and a US credit card. Prices in Brazil are in BRL (Reais). Here's what actually happens when you pay:

That's the thing about cross-currency spending: it's not just about fees, it's about cross-rate arbitrage. This calculator shows both — so you can compare EUR→BRL vs USD→BRL rates before every trip.

Scenario 3: Importing products from China to Brazil

You source industrial supplies from Guangzhou, paying in USD. Your customers in Brazil pay in BRL. Every fluctuation in USD/BRL hits your margins. An example:

For importers, this isn't just a calculator — it's a risk-management tool. You can run break-even analysis: "If USD/BRL goes above X, I need to raise prices by Y% to maintain 30% margin."

Mid-Market, Bank, and Card Rates — What's the Difference?

You'll see three numbers here. They're all "correct" — but they answer different questions.

Mid-Market Rate

The mid-market rate is the midpoint between what banks pay to buy a currency and what they charge to sell it. It's the rate you see on Google Finance, XE.com, or your trading app. It's also the rate that Wise, Revolut, and TransferWise base their pricing on (they just add a small transparent fee on top).

Who actually gets this rate? Banks trading with each other (interbank market), currency exchanges at airports with "0% commission" (they build markup elsewhere), and fintech apps that hedge on your behalf. Individuals almost never get the pure mid-market rate.

Bank Rate (with markup)

Banks make currency exchange profitable by adding a spread to the mid-market rate. Typical markups:

ChannelTypical markupNotes
Traditional bank wire2.0 – 4.0%+ fixed incoming/outgoing fees ($15-$50)
PayPal / Stripe international2.5 – 3.5%+ processing fees (3.4% + fixed)
Airport currency exchange3.0 – 8.0%Worst rates in town by far
Wise / Revolut0.4 – 1.2%Uses mid-market + transparent flat fee
Credit card foreign transaction1.0 – 3.0%Visa/Mastercard FX markup + issuer fee

Your Money Doesn't Actually Move — Usually

Here's a secret most banks won't tell you: when you "convert $3,000 to EUR", your money doesn't physically get sent to Europe. Your bank simply:

  1. Debits your USD account $3,000
  2. Credits your EUR account the converted amount
  3. Net-settles with a counterparty bank at their mid-market rate at the end of the day

The markup they charged you (2-4%) is pure profit — because they're hedging at almost zero cost by matching their global books. This is why bank currency conversion is one of the most profitable revenue lines for retail banks.

Our Test Data

Every row below is computed live in your browser from the current rate data:

Test CaseExpectedOur ResultMatch

All cross rates satisfy the documented formula exactly, computed live in your browser on every page load. Bundled fallback snapshot dated 2026-10-15.

When Not To Use This Converter

Frequently Asked Questions

Where do the exchange rates come from?

When you are online, the page loads the latest ECB reference rates from frankfurter.dev (a free, key-less API) and shows the publication date. No personal data is sent — only the rate request itself. If the network is unavailable, it falls back to the snapshot bundled with the page, and you can always override any rate manually to match your bank.

What is the difference between mid-market rate and bank rate?

The mid-market rate is the interbank rate used when currencies are traded globally. Banks and currency services add a markup (typically 0.5%–3%) to this rate, which is the 'bank rate'. This converter shows both so you can compare the hidden fees you may be paying.

Can I enter my own exchange rate?

Yes. Each conversion has a manual rate override field. Enter your bank's quoted rate, a rate you found elsewhere, or a future projected rate to model different scenarios.

Does this converter require internet access?

Only for live rates. The page first tries to fetch the latest ECB reference rates. If that fails — offline, or a blocked network — it uses the bundled snapshot, so every conversion still works with no connection at all.

How accurate are cross-currency conversions (e.g. EUR to BRL)?

Cross rates are derived from USD-based rates using the formula: X→Y rate = (USD→Y rate) ÷ (USD→X rate). This gives consistent triangular arbitrage-free rates. The accuracy depends on the freshness of the rate source: the live ECB date when online, or the bundled snapshot date when offline.

Converting for one specific purchase? Work the trip itself out in the Fuel Cost Calculator and compare shelf prices per gram or per pack with the Unit Price Calculator.

Read next

Advertisement