Youth unemployment rate - % of active population aged 15-24 - tipslm80
Data - Eurostat
Info
Last observation: Annual: 2025 (N = 58)
First observation: Annual: 2003 (N = 1)
Last data update: 11 aoû 2026, 22:31. Last compile: 12 aoû 2026, 04:00
Structure
unit
Code
tipslm80 %>%
select_if(~n_distinct(.) > 1) |>
group_by(unit, Unit) |>
summarise(Nobs = n()) |>
arrange(-Nobs) |>
print_table_conditional()| unit | Unit | Nobs |
|---|---|---|
| PC_ACT | Percentage of population in the labour force | 519 |
| PPCH_3Y | Percentage point change (t-(t-3)) | 429 |
Greece, Spain, Italy, Portugal
Code
tipslm80 |>
filter(geo %in% c("EL", "ES", "IT", "PT"),
unit == "PC_ACT") |>
year_to_date() |>
left_join(colors, by = c("Geo" = "country")) |>
mutate(values = values/100) |>
ggplot() + geom_line(aes(x = date, y = values, color = color)) + theme_minimal() +
scale_color_identity() + add_flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
labels = date_format("%Y")) +
xlab("") + ylab("Youth unemployment rate - % of active population aged 15-24") +
scale_y_continuous(labels = scales::percent_format(accuracy = 1))
Latest Year: Cross-Country Snapshot
Code
latest_y_youth <- tipslm80 |>
filter(unit == "PC_ACT",
!is.na(values)) |>
summarise(m = max(time)) |>
pull(m)
tipslm80 |>
filter(unit == "PC_ACT",
time == latest_y_youth,
!geo %in% c("EA20", "EA21", "EU27_2020")) |>
select(Geo, values) |>
rename(`Youth unemployment rate (%)` = values) |>
arrange(-`Youth unemployment rate (%)`) |>
print_table_conditional()| Geo | Youth unemployment rate (%) |
|---|---|
| Romania | 26.1 |
| Spain | 24.9 |
| Sweden | 24.3 |
| Finland | 21.8 |
| Estonia | 20.7 |
| Italy | 20.6 |
| France | 19.8 |
| Portugal | 19.5 |
| Greece | 19.1 |
| Croatia | 18.3 |
| Belgium | 17.4 |
| Slovakia | 15.3 |
| Latvia | 14.8 |
| Lithuania | 14.1 |
| Hungary | 13.9 |
| Denmark | 13.8 |
| Cyprus | 13.5 |
| Bulgaria | 13.1 |
| Poland | 12.2 |
| Slovenia | 12.1 |
| Ireland | 11.8 |
| Austria | 11.5 |
| Czechia | 10.4 |
| Malta | 9.6 |
| Netherlands | 8.8 |
| Germany | 7.1 |
France, Germany, Italy, Spain, Netherlands
Levels
Code
tipslm80 |>
filter(geo %in% c("FR", "DE", "NL", "ES", "IT"),
unit == "PC_ACT") |>
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_flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
labels = date_format("%Y")) +
xlab("") + ylab("Youth unemployment rate - % of active population aged 15-24") +
scale_y_continuous(breaks = 0.01*seq(-300, 2200, 2),
labels = scales::percent_format(accuracy = 1))
Changes
Code
tipslm80 |>
filter(geo %in% c("FR", "DE", "NL", "ES", "IT"),
unit == "PPCH_3Y") |>
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_flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
labels = date_format("%Y")) +
xlab("") + ylab("Youth unemployment rate - % of active population aged 15-24") +
scale_y_continuous(breaks = 0.01*seq(-300, 2200, 2),
labels = scales::percent_format(accuracy = 1)) +
geom_hline(yintercept = 0.02, linetype = "dashed")