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: 11 November 2019

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.1041 USD
1€=120.29 JPY
1€=1.9558 BGN
1€=25.510 CZK
1€=7.4722 DKK
1€=0.85743 GBP
1€=334.35 HUF
1€=4.2737 PLN
1€=4.7643 RON
1€=10.7085 SEK
1€=1.0972 CHF
1€=137.70 ISK
1€=10.0910 NOK
1€=7.4391 HRK
1€=70.5319 RUB
1€=6.3722 TRY
1€=1.6105 AUD
1€=4.5949 BRL
1€=1.4607 CAD
1€=7.7404 CNY
1€=8.6422 HKD
1€=15540.68 IDR
1€=3.8591 ILS
1€=78.9905 INR
1€=1288.00 KRW
1€=21.1057 MXN
1€=4.5749 MYR
1€=1.7348 NZD
1€=56.138 PHP
1€=1.5025 SGD
1€=33.493 THB
1€=16.4150 ZAR

Framework for the euro foreign exchange reference rates:

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