Historical Exchange Rates
Past ECB exchange rates for any day since 1999, with averages, highs, lows and CSV.
How this rate is worked out
Daily rate
Hover or tap the line, or focus the chart and use the arrow keys, to read each day. The table below has every value.
Daily rates
Results are estimates for general information and planning, not financial advice. Banks and institutions may calculate differently (rounding, fees, rate changes). Confirm figures with your lender or a qualified adviser before deciding.
About the Historical Exchange Rates
Find the European Central Bank’s euro foreign exchange reference rate for any working day since 4 January 1999, or every rate in a period of up to 10 years. Choose any two of 45 currencies — the euro, the 29 other currencies the ECB publishes today, former currencies such as the Croatian kuna, and the ECB’s indicative rates for currencies such as the Argentine peso — and the page works out the cross rate, for example US dollar to Indian rupee, from the two euro rates.
For one date you get that day’s rate in both directions, the ECB euro rates it comes from, and the rates before and after it; for a weekend or holiday the last rate before applies. For a period you get the average, low, high and change, a chart, daily, monthly and yearly tables, and a CSV download.
The ECB publishes these rates for information only. They are reference rates: a bank, card or money changer uses its own rate and usually adds a margin or fees.
How to use it
- Choose the two currencies: From is the currency you have, To the one you want. The swap button reverses them.
- Pick One date and a day, or A period with a start and an end date — or a quick period such as 1 year or Last Apr–Mar.
- Optionally type an amount to convert it at that day’s rate or at the period’s average, then press Get ECB rates.
- Read the result, switch the table between Daily, Monthly and Yearly, and copy the table or download it as CSV.
Examples
USD → INR on 31 Mar 2026
1 USD = 93.82397 INR · 1 INR = 0.01065826 USD
That day the ECB published 1 EUR = 1.1498 USD and 1 EUR = 107.8788 INR; 107.8788 ÷ 1.1498 = 93.82397.
USD → INR on Sat, 16 Mar 2024
82.86724 INR — the ECB rate of Fri, 15 Mar 2024 (90.2590 ÷ 1.0892)
USD → INR, 1 Apr 2025 – 31 Mar 2026
Average 88.38507 over 255 ECB working days · low 84.29472 (5 May 2025) · high 94.81158 (27 Mar 2026) · +9.56% first to last
Calculated from the ECB’s daily euro rates.
Common uses
- Checking what a past payment, invoice or salary in another currency was worth on the day.
- Getting the average rate of a month, a calendar year or an April–March year for a report or a budget comparison.
- Seeing how far a currency moved over months or years, with the low and the high marked.
- Downloading a clean daily table for a spreadsheet, with the ECB source noted in the file.
Where the rates come from
The ECB euro foreign exchange reference rates come from a daily concertation between central banks across Europe at around 14:10 CET and are published at about 16:00 CET on every working day except TARGET closing days. The ECB lists those closing days as New Year’s Day, Good Friday, Easter Monday, Labour Day (1 May), Christmas Day and 26 December (ECB holidays); weekends have no rates either.
MySmartCoPilot’s server asks the ECB Data Portal for the daily series of dataset EXR (D.<currency>.EUR.SP00.A, units of the currency per euro), splits long periods into calendar years and keeps each year for a while, so repeat lookups are fast. When the Data Portal does not answer, recent dates fall back to the ECB’s own 90-day reference-rate file, which carries the same published values.
The ECB’s disclaimer and copyright terms allow free use of information from its website when the ECB is cited as the source and any change to it is stated, and say that the ECB accepts no liability for losses from acting on its exchange reference rates. That is why the page and the CSV name the ECB and say that cross rates, inverses and averages are calculated by MySmartCoPilot.
How cross rates and averages are worked out
Every ECB rate says how many units of a currency one euro buys. For two other currencies the page divides one euro rate by the other:
- Rate A → B = (B per euro) ÷ (A per euro). On 31 March 2026: 107.8788 INR ÷ 1.1498 USD = 93.82397 INR per US dollar.
- Average = the simple mean of the daily rates on ECB working days in the period. Weekends and holidays are not filled in, so each published day counts once.
- Monthly and yearly tables apply the same to each calendar month or year of the period (the first and last can be partial); Last rate is the rate of its last ECB working day within the period.
- Change compares the first and the last rate of the period; in the daily table it is the change from the previous ECB working day.
Rates are shown with up to 7 significant digits, and every calculation uses the unrounded ECB values. The ECB publishes only the euro rates: cross rates, inverses and averages are calculated by MySmartCoPilot, as the CSV also states.
Which currencies and dates are covered
- Published today (29): US dollar, Japanese yen, pound sterling, Swiss franc, the Australian, Canadian, New Zealand, Hong Kong and Singapore dollars, Chinese yuan renminbi, Indian rupee, Indonesian rupiah, South Korean won, Malaysian ringgit, Philippine peso, Thai baht, Israeli shekel, Turkish lira, Brazilian real, Mexican peso, South African rand, and the Czech, Danish, Hungarian, Icelandic, Norwegian, Polish, Romanian and Swedish currencies.
- Replaced by the euro: Greek drachma (to 2000), Slovenian tolar (to 2006), Cyprus pound and Maltese lira (to 2007), Slovak koruna (to 2008), Estonian kroon (to 2010), Latvian lats (to 2013), Lithuanian litas (to 2014), Croatian kuna (to 30 December 2022) and Bulgarian lev (to 31 December 2025).
- Suspended: the ECB stopped publishing the Russian rouble rate; the last one is from 1 March 2022. The ECB published no Icelandic krona reference rates from 10 December 2008 to 31 January 2018 (the Data Portal has none from 4 December 2008); the chart leaves such long gaps empty.
- Indicative only: Argentine peso, Algerian dinar, Moroccan dirham and New Taiwan dollar, from January 2000 to October 2020.
Some currencies have Data Portal values from before they joined the ECB’s daily reference-rate list — the Indian rupee from 13 January 2000 although it was added on 2 January 2009; the Chinese yuan, Indonesian rupiah, Malaysian ringgit, Philippine peso, Thai baht, Croatian kuna and Russian rouble were added on 1 April 2005, the Brazilian real and Mexican peso on 2 January 2008, and the Israeli shekel on 3 January 2011. Those earlier days are marked † in the table, the chart and the CSV. Turkish lira rates before 2005 and Romanian leu rates before July 2005 are the ECB’s rates for the old lira and the old leu, expressed in today’s units (1 TRY = 1,000,000 TRL; 1 RON = 10,000 ROL).
Using reference rates in accounts and tax returns
Tax authorities, auditors and contracts often say which exchange rate to use — a particular central bank’s or bank’s rate, the rate of the transaction day, or a month-end or average rate. The ECB rate may or may not be the one that applies to you, so check the rule first. Keep the CSV: it records the dates, the ECB’s euro rates and how the cross rates were calculated.
Limitations
- Reference rates are a once-a-day snapshot for information. They are not live market rates and not the rate your bank, card or remittance service will apply.
- Up to 10 years per lookup. For a longer history, look up one period at a time and download each table.
- Only currencies in the ECB’s data are available — not, for example, the UAE dirham, Saudi riyal or Nepalese rupee.
- The ECB Data Portal is sometimes slow; MySmartCoPilot retries automatically, but a long lookup can still fail. Trying again a little later usually works.
- Days before a currency joined the ECB’s reference-rate list (marked †) come from the ECB’s statistical series, partly published by the ECB as indicative rates.
Privacy
Only the currencies and dates you choose are sent to MySmartCoPilot’s server, which asks the ECB Data Portal for the rates and caches them. The amount you type never leaves your browser. Nothing about you is saved: the hourly limit on lookups uses a temporary, anonymised counter in the server’s memory.
Frequently asked questions
What is the exchange rate on a weekend or holiday?
The ECB publishes no reference rates on Saturdays, Sundays and TARGET closing days (New Year’s Day, Good Friday, Easter Monday, 1 May, 25 and 26 December). The page tells you why there is no rate and shows the last rate before that day, plus the next one after it.
Why is my bank’s rate different from the ECB rate?
The ECB says its reference rates are published for information purposes only. Banks, cards and money changers set their own buying and selling rates, add a margin or fees, and rates move during the day. Use the ECB rate as a neutral reference, not as a quote.
How is the average exchange rate for a year worked out?
It is the simple mean of the daily ECB rates on working days in that year. For two non-euro currencies (such as USD to INR) the page first calculates each day’s cross rate and then averages those. Weekends and holidays are not counted.
Can I get exchange rates from before 1999?
No. The ECB’s euro reference rates start on 4 January 1999, the first working day after the euro was introduced on 1 January 1999. Older rates for national currencies such as the Deutsche Mark are not part of this data.
Can I use these rates for my tax return or accounts?
Only if the rules that apply to you allow ECB reference rates. Many tax and accounting rules name a specific source or day, so check with your tax authority, auditor or adviser. This page is for information and is not financial or tax advice.
What does the † mark mean?
It marks days before the currency joined the ECB’s daily euro reference rates (for example the Indian rupee before 2 January 2009), and the ECB’s indicative-only currencies. Those values come from the ECB’s statistical series rather than its reference-rate publication.
Why are there no Russian rouble rates after March 2022?
The ECB suspended its euro reference rate for the rouble until further notice; the last one it published is from 1 March 2022.