uro Area 10Y Yield AAA — Daily CSV Download

ECB Dataset · Interest Rates

Euro Area 10Y Government Bond Yield — AAA (2004–2026)

The risk-free long-term rate for the euro area — derived from AAA-rated sovereign yield curves (Germany, Netherlands, Luxembourg). The European equivalent of the US 10-Year Treasury yield.

Source
ECB
Frequency
Daily
Coverage
2004–Present
Unit
% per annum

The euro area risk-free benchmark

The ECB publishes daily yield curves for euro area government bonds, estimated using the Svensson parametric model. The AAA curve includes only the highest-rated sovereigns — primarily Germany (Bund), the Netherlands, and Luxembourg — making it the closest approximation to a true risk-free rate in the euro area.

This rate serves a similar function to the US 10-Year Treasury yield: it is the discount rate for long-duration European assets, the benchmark for corporate bond pricing, and the reference for pension fund liability valuations. When this rate rises, the present value of all long-duration European assets falls.

AAA vs All-Issuers yield curve

The spread between the all-issuers yield curve and the AAA curve captures the average credit risk premium across euro area sovereigns. During the 2011–2012 sovereign crisis, this spread widened dramatically as Italy, Spain, and Greece diverged from the core. The spread today is narrower but structurally persistent — reflecting permanent differences in fiscal credibility within the monetary union.

CSV Data Dictionary

ColumnTypeDescription
dateYYYY-MM-DDPublication date (TARGET business day)
yield_10y_aaafloatAAA-rated euro area 10Y government bond yield (%, Svensson model)

Python Code Example

import pandas as pd
from io import StringIO
import requests

url = "https://data-api.ecb.europa.eu/service/data/YC/B.U2.EUR.4F.G_N_A.SV_C_YM.SR_10Y"
resp = requests.get(url, params={"format": "csvdata"})
raw = pd.read_csv(StringIO(resp.text))

df = raw[["TIME_PERIOD", "OBS_VALUE"]].copy()
df.columns = ["date", "yield_10y_aaa"]
df["date"] = pd.to_datetime(df["date"])
df = df.sort_values("date").set_index("date")

df.plot(title="Euro Area 10Y AAA Yield", figsize=(12, 5))

Source & Methodology

Source: European Central Bank — Euro Area Yield Curves

Series key: YC/B.U2.EUR.4F.G_N_A.SV_C_YM.SR_10Y

License: ECB open data — free reuse with attribution.

Cite This Dataset