Activity rate - % of total population aged 15-64 - tipslm60

Data - Eurostat

Info

Last observation: Annual: 2025 (N = 60)

First observation: Annual: 2003 (N = 1)

Last data update: 23 jul 2026, 22:19. Last compile: 24 jul 2026, 04:05

Structure

unit

Code
tipslm60 %>%
  select_if(~n_distinct(.) > 1) %>%
  
  group_by(unit, Unit) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  print_table_conditional()
unit Unit Nobs
PC_POP Percentage of total population 520
PPCH_3Y Percentage point change (t-(t-3)) 430

France, Germany, Italy, Spain, Netherlands

Levels

Code
tipslm60 %>%
  filter(geo %in% c("FR", "DE", "NL", "ES", "IT"),
         unit == "PC_POP") %>%
  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("Activity rate - % of total population aged 15-64") +
  scale_y_continuous(breaks = 0.01*seq(-300, 2200, 2),
                     labels = scales::percent_format(accuracy = 1))

Changes

Code
tipslm60 %>%
  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_5flags +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
               labels = date_format("%Y")) +
  xlab("") + ylab("Activity rate - % of total population aged 15-64") +
  scale_y_continuous(breaks = 0.01*seq(-300, 2200, 1),
                     labels = scales::percent_format(accuracy = 1)) +
  geom_hline(yintercept = -0.002, linetype = "dashed")

Sweden, Denmark, Austria

Levels

Code
tipslm60 %>%
  filter(geo %in% c("SE", "DK", "AT"),
         unit == "PC_POP") %>%
  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_3flags +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
               labels = date_format("%Y")) +
  xlab("") + ylab("Activity rate - % of total population aged 15-64") +
  scale_y_continuous(breaks = 0.01*seq(-300, 2200, 2),
                     labels = scales::percent_format(accuracy = 1))

Latest Year: All Countries

Code
latest_y <- tipslm60 %>%
  filter(unit == "PC_POP", !is.na(values)) %>%
  summarise(m = max(time)) %>%
  pull(m)

tipslm60 %>%
  filter(time == latest_y,
         unit == "PC_POP") %>%
  mutate(values = round(values, 1)) %>%
  select(Geo, values) %>%
  arrange(-values) %>%
  rename(!!paste0("Activity rate, % (", latest_y, ")") := values) %>%
  print_table_conditional()
Geo Activity rate, % (2025)
Netherlands 85.6
Sweden 84.0
Malta 82.6
Denmark 82.3
Estonia 81.7
Cyprus 80.4
Germany 80.3
Finland 79.7
Lithuania 79.7
Austria 78.9
Portugal 78.8
Hungary 78.6
Ireland 78.4
Czechia 78.0
Latvia 77.6
Slovakia 76.5
Slovenia 75.8
Euro area – 20 countries (2023-2025) 75.7
Euro area – 21 countries (from 2026) 75.6
European Union - 27 countries (from 2020) 75.6
Poland 75.2
France 75.1
Spain 74.9
Luxembourg 74.3
Bulgaria 73.5
Croatia 72.4
Belgium 71.9
Greece 70.9
Romania 67.1
Italy 66.7