Private sector debt, consolidated - % of GDP - tipspd20
Data - Eurostat
Info
Last observation: Annual: 2025 (N = 60)
First observation: Annual: 1995 (N = 56)
Last data update: 23 jul 2026, 22:14. Last compile: 24 jul 2026, 04:06
Structure
unit
Code
tipspd20 %>%
select_if(~n_distinct(.) > 1) %>%
group_by(unit, Unit) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
print_table_conditional()| unit | Unit | Nobs |
|---|---|---|
| MIO_NAC | Million units of national currency | 928 |
| PC_GDP | Percentage of gross domestic product (GDP) | 928 |
France, Germany, Italy, Spain, Netherlands
Percent
Code
tipspd20 %>%
filter(geo %in% c("FR", "DE", "NL", "ES", "IT"),
unit == "PC_GDP") %>%
year_to_date %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/100) %>%
mutate(color = ifelse(geo == "NL", color2, color)) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) + theme_minimal() +
scale_color_identity() + add_5flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
labels = date_format("%Y")) +
xlab("") + ylab("Private sector credit flow, consolidated - % GDP") +
scale_y_continuous(breaks = 0.01*seq(-300, 600, 20),
labels = scales::percent_format(accuracy = 1)) +
geom_hline(yintercept = 1.33, linetype = "dashed")
Level (Bn, national currency)
Code
tipspd20 %>%
filter(geo %in% c("FR", "DE", "NL", "ES", "IT"),
unit == "MIO_NAC") %>%
year_to_date %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(color = ifelse(geo == "NL", color2, color)) %>%
ggplot + geom_line(aes(x = date, y = values/1000, color = color)) + theme_minimal() +
scale_color_identity() + add_5flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
labels = date_format("%Y")) +
xlab("") + ylab("Private sector debt, consolidated (Bn)")
Latest Year: Private Sector Debt by Country
Code
latest_yr <- tipspd20 %>%
filter(unit == "PC_GDP", !is.na(values)) %>%
summarise(m = max(time)) %>%
pull(m)
tipspd20 %>%
filter(unit == "PC_GDP", time == latest_yr) %>%
select(geo, Geo, `Private sector debt (% GDP)` = values) %>%
arrange(desc(`Private sector debt (% GDP)`)) %>%
print_table_conditional()| geo | Geo | Private sector debt (% GDP) |
|---|---|---|
| LU | Luxembourg | 311.5 |
| NL | Netherlands | 199.8 |
| DK | Denmark | 199.5 |
| SE | Sweden | 190.9 |
| CY | Cyprus | 161.6 |
| FR | France | 151.1 |
| BE | Belgium | 146.5 |
| FI | Finland | 139.7 |
| EA20 | Euro area – 20 countries (2023-2025) | 122.4 |
| EA21 | Euro area – 21 countries (from 2026) | 122.1 |
| EU27_2020 | European Union - 27 countries (from 2020) | 119.6 |
| PT | Portugal | 118.8 |
| MT | Malta | 110.4 |
| DE | Germany | 108.0 |
| AT | Austria | 107.5 |
| ES | Spain | 105.4 |
| IE | Ireland | 97.6 |
| EL | Greece | 96.6 |
| EE | Estonia | 96.1 |
| IT | Italy | 91.1 |
| SK | Slovakia | 84.3 |
| CZ | Czechia | 76.8 |
| BG | Bulgaria | 73.0 |
| HR | Croatia | 72.3 |
| HU | Hungary | 70.8 |
| LV | Latvia | 57.5 |
| SI | Slovenia | 57.2 |
| LT | Lithuania | 55.0 |
| PL | Poland | 52.8 |
| RO | Romania | 39.8 |