ECB exchange rates: the daily reference standard
The European Central Bank publishes one set of mid-market rates every business day. Most EU accounting teams treat them as the source of truth. Here's where they come from, when they update, and how to plug them into anything.
What ECB reference rates are
Daily mid-market quotes for around 30 currencies against the euro, set by the European Central Bank through a concertation procedure with EU national central banks at 14:15 CET. They're published as informational rates, not for transaction execution — but they're the rate the European Commission, most EU tax authorities, and most EU finance teams use for revaluation.
Publication schedule
- When: ~16:00 CET, every TARGET business day.
- Where: ECB website (XML and CSV), Bundesbank, and via redistributors like Frankfurter.
- Holidays: No publication on weekends or TARGET closing days (Jan 1, Good Friday, Easter Monday, May 1, Dec 25, Dec 26). The previous business day's rate carries over.
Currencies covered
EUR base versus AUD, BGN, BRL, CAD, CHF, CNY, CZK, DKK, GBP, HKD, HUF, IDR, ILS, INR, ISK, JPY, KRW, MXN, MYR, NOK, NZD, PHP, PLN, RON, SEK, SGD, THB, TRY, USD, ZAR. Cross rates (e.g. USD/GBP) derive from EUR-quoted pairs.
Free programmatic access
The ECB publishes raw XML at ecb.europa.eu. For most apps the open-source Frankfurter API is easier:
GET https://api.frankfurter.dev/v1/latest?from=EUR&to=USD,GBP,JPYNo API key, full history back to 1999, daily snapshot endpoint, and a time-series endpoint. Currency Grid runs on Frankfurter so the rates you see match what's in your accounting system.
Using ECB rates for pricing
Best practice: store the ECB rate that was active on the day the row was created alongside the row. When the row is finalised, you can value it at either (a) the locked entry rate, (b) the rate at close, or (c) the latest rate — but you have all three. Most live spreadsheet formulas store only one and silently mutate it. See currency converter spreadsheet for the pattern.
Frequently asked questions
- What are ECB exchange rates?
- The European Central Bank publishes daily euro foreign exchange reference rates — mid-market quotes for ~30 currencies against the euro. They're computed from a concertation procedure between central banks at 14:15 CET and published shortly after 16:00 CET on TARGET working days.
- How often do ECB exchange rates update?
- Once per business day, around 16:00 CET. No update on weekends, ECB holidays, or TARGET non-working days. The same rate applies from publication until the next business day.
- Are ECB reference rates the same as interbank rates?
- Close but not identical. ECB rates are a concertation-procedure mid-market snapshot at a single moment (~14:15 CET). Interbank rates move every second. For accounting, invoicing, and reporting the ECB rate is the de facto European standard.
- How can I get ECB rates in my app or spreadsheet for free?
- The European Central Bank publishes them as XML at ecb.europa.eu. The open-source Frankfurter API (frankfurter.dev) wraps the same dataset in a developer-friendly JSON API with no key required and full history back to 1999. Currency Grid uses Frankfurter.
- Why do ECB rates matter for finance teams?
- Most EU finance teams convert non-EUR revenue to EUR using the ECB rate on the day of invoice. If your tools convert using a different rate, your reported revenue will not match your accounting system.
Try the live grid
Currency Grid is a spreadsheet-style multi-currency converter. Type amounts in any currency and see live conversions across rows and columns, totaled in your home currency using daily ECB reference rates.
Open Currency GridRelated
- Excel currency converter
Pull ECB rates into Excel via Power Query.
- Google Sheets currency converter
IMPORTDATA + Frankfurter for ECB rates.
- FX glossary
Mid-market rate, reference rate, spot rate.
- Currency Grid
A grid that uses ECB rates by default.