Euro foreign exchange reference rates

The reference rates are usually updated around 16:00 CET on every working day, except on TARGET closing days. They are based on a regular daily concertation procedure between central banks across Europe, which normally takes place at 14:15 CET.

TARGET closing days

Euro foreign exchange reference rates: 3 April 2020

Downloads

Current reference rates

Historical reference rates

Between 16:00 CET on 28 November 2018 and 16:00 CET on 24 January 2019, some historical reference rate PDFs contained rates that were incorrect. All other formats (HTML, CSV, XML) contained the correct reference rates.

Historical reference rate PDFs for the following dates were affected: 28 May 2018, 29 May 2018, 30 May 2018, 4 June 2018, 5 June 2018, 6 June 2018, 14 June 2018, 12 November 2018, 19 November 2018, and 21 November 2018.

Time series

To import CSV files into your spreadsheet, choose a setting that uses a dot "." as decimal separator (such as UK or US format).

Related information

For developers

How to parse the data in PHP

Regular expression example


<?php
  
//This is a PHP(4/5) script example on how eurofxref-daily.xml can be parsed
  //Read eurofxref-daily.xml file in memory 
  //For this command you will need the config 
  //option allow_url_fopen=On (default)
  
$XMLContent=file("http://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml");
  
//the file is updated at around 16:00 CET
            
  
foreach($XMLContent as $line){
    if(
preg_match("/currency='([[:alpha:]]+)'/",$line,$currencyCode)){
      if(
preg_match("/rate='([[:graph:]]+)'/",$line,$rate)){
        
//Output the value of 1EUR for a currency code
        
echo'1&euro;='.$rate[1].' '.$currencyCode[1].'<br/>';
        
//--------------------------------------------------
        //Here you can add your code for inserting
        //$rate[1] and $currencyCode[1] into your database
        //--------------------------------------------------
      
}
    }
  }
?>

XML parser example


<?php
  
function StartElement($parser$name$attrs) { 
    if (!empty(
$attrs['RATE'])) {
      echo 
"1&euro;=".$attrs['RATE']." ".$attrs['CURRENCY']."<br />"
    }
  }
    
$xml_parserxml_parser_create();
    
xml_set_element_handler($xml_parser"StartElement""");
    
// for the following command you will need file_get_contents (PHP >= 4.3.0) 
    // and the config option allow_url_fopen=On (default)
    
xml_parse($xml_parserfile_get_contents ("http://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml"));
    
xml_parser_free($xml_parser);
?>

Example

SimpleXML.php


<?php
  
//This is aPHP(5)script example on how eurofxref-daily.xml can be parsed
  //Read eurofxref-daily.xml file in memory
  //For the next command you will need the config 
  //option allow_url_fopen=On (default)
  
$XML=simplexml_load_file("http://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml");
  
//the file is updated at around 16:00 CET
            
  
foreach($XML->Cube->Cube->Cube as $rate){
    
//Output the value of 1EUR for a currency code
    
echo '1&euro;='.$rate["rate"].' '.$rate["currency"].'<br/>';
    
//--------------------------------------------------
    //Here you can add your code for inserting
    //$rate["rate"] and $rate["currency"] into your database
    //--------------------------------------------------
  
}
?>

Output of the code above

1€=1.0785 USD
1€=117.10 JPY
1€=1.9558 BGN
1€=27.539 CZK
1€=7.4689 DKK
1€=0.87850 GBP
1€=365.15 HUF
1€=4.5765 PLN
1€=4.8307 RON
1€=10.9520 SEK
1€=1.0547 CHF
1€=155.70 ISK
1€=11.2628 NOK
1€=7.6300 HRK
1€=82.8075 RUB
1€=7.2296 TRY
1€=1.8004 AUD
1€=5.6893 BRL
1€=1.5299 CAD
1€=7.6476 CNY
1€=8.3625 HKD
1€=17918.68 IDR
1€=3.9267 ILS
1€=82.2160 INR
1€=1332.82 KRW
1€=26.5470 MXN
1€=4.7006 MYR
1€=1.8423 NZD
1€=54.805 PHP
1€=1.5489 SGD
1€=35.601 THB
1€=20.2642 ZAR

Framework for the euro foreign exchange reference rates:

ECB introduces changes to euro foreign exchange reference rates, 7 December 2015