Daily reference rates
Historical exchange rates by date
Choose your currencies and a past date to see the exchange rate. You can also browse a whole year, compare a date range, and download the daily rates for your spreadsheet.
USD / EUR
2025-01-01 — 2025-12-31 · 255 observations
| Date | 1 USD / EUR | Converted amount (100 USD) | Source |
|---|---|---|---|
| 2025-01-02 | 0.9689 | €96.89 | ECB |
| 2025-01-03 | 0.97097 | €97.10 | ECB |
| 2025-01-06 | 0.95914 | €95.91 | ECB |
| 2025-01-07 | 0.96219 | €96.22 | ECB |
| 2025-01-08 | 0.9722 | €97.22 | ECB |
| 2025-01-09 | 0.9704 | €97.04 | ECB |
| 2025-01-10 | 0.9705 | €97.05 | ECB |
| 2025-01-13 | 0.98058 | €98.06 | ECB |
| 2025-01-14 | 0.97609 | €97.61 | ECB |
| 2025-01-15 | 0.97087 | €97.09 | ECB |
| 2025-01-16 | 0.97352 | €97.35 | ECB |
| 2025-01-17 | 0.97106 | €97.11 | ECB |
| 2025-01-20 | 0.96937 | €96.94 | ECB |
| 2025-01-21 | 0.96553 | €96.55 | ECB |
| 2025-01-22 | 0.95758 | €95.76 | ECB |
| 2025-01-23 | 0.96117 | €96.12 | ECB |
| 2025-01-24 | 0.95493 | €95.49 | ECB |
| 2025-01-27 | 0.94967 | €94.97 | ECB |
| 2025-01-28 | 0.9596 | €95.96 | ECB |
| 2025-01-29 | 0.96191 | €96.19 | ECB |
| 2025-01-30 | 0.96126 | €96.13 | ECB |
| 2025-01-31 | 0.96219 | €96.22 | ECB |
| 2025-02-03 | 0.97333 | €97.33 | ECB |
| 2025-02-04 | 0.96759 | €96.76 | ECB |
| 2025-02-05 | 0.95951 | €95.95 | ECB |
Daily reference rates are indicative. Your bank or payment provider may use a different rate and add fees.
Request these dates through the API
curl "https://api.exchangerate.dev/v1/range?base=USD&symbols=EUR&start_date=2025-01-01&end_date=2025-12-31"How to look up a historical rate
- Choose the two currencies and the amount you want to convert.
- Select one date, a year, or a date range, then choose Show rates.
- Check the observation dates and source before using the result. Downloads include the rate and its source for each row.
What happens on weekends and holidays?
A lookup for one date may use the most recent earlier observation when no new rate was published that day. We label that carried-forward value. A range contains actual publication dates, with no extra weekend rows.
How far back does the data go?
Daily reference history begins in 1999 for many currencies. The available start date varies by pair, and some dates have no observation. A blank period means we have no rate for that selection.
Historical API reference · Download a time series with Python · Rate sources and methodology
Get the same daily rates through the API
Use the dated endpoint for one day, or /v1/range for a series. JSON ranges return pages of up to 366 rows; follow next_cursor while has_more is true. Each request supports up to 1,830 days.