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: 19 September 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.1067 USD
1€=119.46 JPY
1€=1.9558 BGN
1€=25.892 CZK
1€=7.4672 DKK
1€=0.88735 GBP
1€=332.77 HUF
1€=4.3386 PLN
1€=4.7448 RON
1€=10.7223 SEK
1€=1.0970 CHF
1€=137.00 ISK
1€=9.8905 NOK
1€=7.4010 HRK
1€=70.6938 RUB
1€=6.3023 TRY
1€=1.6291 AUD
1€=4.5738 BRL
1€=1.4686 CAD
1€=7.8518 CNY
1€=8.6649 HKD
1€=15560.20 IDR
1€=3.8889 ILS
1€=78.9335 INR
1€=1321.64 KRW
1€=21.4426 MXN
1€=4.6385 MYR
1€=1.7536 NZD
1€=57.803 PHP
1€=1.5243 SGD
1€=33.782 THB
1€=16.2351 ZAR

Framework for the euro foreign exchange reference rates:

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