Mid-Market and ECB Reference Rates Explained
Updated: 2026-06-28
On 2 March 2026, the ECB reference for USD → EUR was 0.8549 — about €854.85 for every $1,000 at that benchmark. The same week, a customer might have received only €838 from their bank after spread and fees, roughly 0.838 on the receipt.
Both numbers are real. They answer different questions:
- €838 — what actually landed in the account.
- €854.85 — where the official daily reference sat before the bank's markup.
FX Comparison is built for comparisons across time on a consistent benchmark. When you care what you personally received, log your rate and still use today's reference on the other side of the line.
What "mid-market" means
The mid-market exchange rate is the midpoint between institutional buy and sell prices. News tickers and central-bank references point at that centre. Your bureau, card network, or wire service quotes you on one side of it plus their margin.
Common retail markups:
- Spread baked into the quoted rate
- Card FX fees on foreign-currency charges
- Flat wire fees unrelated to the rate but decisive on small transfers
The mid-market level ignores those extras. It is a consistent ruler for measuring movement, not a price you can necessarily trade at.
What FX Comparison actually plots
We use European Central Bank (ECB) reference exchange rates — daily indicative values published on ECB business days, served via the Frankfurter data feed. In everyday terms they play the same role as "mid-market" language: a neutral daily benchmark without your provider's markup.
What matters in the app:
- One snapshot per business day — not intraday tick data.
- Euro-anchored official references — cross-rates such as USD/EUR are derived consistently from the published set.
- Weekends and holidays — no new publish; the prior business day still applies.
If you pick Saturday, 7 June 2026 in Compare dates, the rate is from Friday, 5 June 2026 (0.8591 USD → EUR). That is correct behaviour, not a bug. Trend charts can look flat over long weekends for the same reason.
A mistake worth avoiding
People open a comparison tool, see that today's reference beat an old bank receipt, and think: I picked the wrong day.
Often the gap is mostly markup, not timing. Comparing a 0.838 receipt to a 0.855 reference without logging 0.838 blames the calendar when the story is really channel (bank vs benchmark).
Better workflow:
- Log date, amount, and rate received when you have it.
- Run Compare to today to see reference drift since that day.
- Use Compare dates when both moments are in the past and you want timing only at the reference.
Worked example: wire worse than the reference
Situation: $1,000 USD → EUR on 29 May 2026. Bank confirmation: €843 (effective 0.8430). ECB that day: 0.8588 (€858.81 at benchmark).
Markup on the exchange day: €858.81 − €843 = €15.81 — spread and fees, not "bad luck on Friday."
Reference movement (Compare dates): 2 Mar 2026 (0.8549) vs 1 Jun 2026 (0.8587) on $1,000:
| Date | ECB USD → EUR | € at reference |
|---|---|---|
| 2 Mar 2026 | 0.8549 | €854.85 |
| 1 Jun 2026 | 0.8587 | €858.66 |
Timing difference: about +€3.81 (+0.45%) — small compared with the €15.81 markup on the actual wire.
Log 0.8430 as custom rate on the home page when analysing your trade. Use Compare dates when isolating calendar movement without mixing in bank spread.
When this comparison is genuinely useful
- Would $1,000 have bought more euros on 2 March or 1 June at the reference? → Compare dates.
- How does my March wire look against today's benchmark on the same notional? → Compare to today (with custom rate if needed).
- I send $800 monthly — did March's reference differ much from April's before fees? → Compare dates, then subtract wire fees yourself.
A 0.3% friendlier reference can be wiped out by a $15 wire fee on a small send. The app quantifies the reference; you supply urgency and all-in costs.
How this maps to FX Comparison
| Your question | Where to go |
|---|---|
| Past trade vs today's reference | Home — Compare to today |
| Two past dates, same amount | Compare dates |
| Track real trades on this device | Save to My Exchanges |
Neither flow executes trades. They show how indicative reference levels shifted.
Limits
- Not executable prices — confirm live quotes before you exchange.
- Daily, not live — references do not capture every intraday move.
- Supported pairs only — see the app's currency list.
Past movement does not predict the next month.
Try it
- Compare dates: USD → EUR, $1,000, 2026-03-02 vs 2026-06-01 — confirm ≈ +€3.81 at reference.
- Home page: log a past wire with your actual rate, then Compare to today.
Next: How to Compare Two Dates for a full walkthrough, or How to Read Your Results once you have a card on screen.
Try it in FX Comparison