Strictness of employment protection – individual and collective dismissals (regular contracts)

Data - OECD

Info

source dataset Title Updated
oecd EPL_OV Strictness of employment protection – individual and collective dismissals (regular contracts) 2026-08-02

Data on employment

source dataset Title Updated
bls jt NA NA
bls la NA NA
bls ln NA NA
eurostat nama_10_a10_e Employment by A*10 industry breakdowns 2026-08-13
eurostat nama_10_a64_e National accounts employment data by industry (up to NACE A*64) 2026-08-13
eurostat namq_10_a10_e Employment A*10 industry breakdowns 2026-08-13
eurostat une_rt_m Unemployment by sex and age – monthly data 2026-08-13
oecd ALFS_EMP Employment by activities and status (ALFS) 2026-08-02
oecd EPL_T Strictness of employment protection – temporary contracts 2026-08-02
oecd LFS_SEXAGE_I_R LFS by sex and age - indicators 2026-08-02
oecd STLABOUR Short-Term Labour Market Statistics 2026-08-02

LAST_DOWNLOAD

Code
tibble(LAST_DOWNLOAD = as.Date(file.info("~/iCloud/website/data/oecd/EPL_OV.RData")$mtime)) |>
  print_table_conditional()
LAST_DOWNLOAD
NA

LAST_COMPILE

LAST_COMPILE
2026-08-15

Last

obsTime Nobs
2019 172

SERIES

Code
EPL_OV |>
  left_join(EPL_OV_var$SERIES, by = "SERIES") |>
  group_by(SERIES, Series) |>
  summarise(Nobs = n()) |>
  arrange(-Nobs) %>%
  {if (is_html_output()) print_table(.) else .}
SERIES Series Nobs
EPRC_V1 Version 1 (1985-2019) 1129
EPRC_V2 Version 2 (1998-2019) 806
EPRC_V3 Version 3 (2008-2019) 526
EPRC_V4 Version 4 (2013-2019) 293

COUNTRY

Code
EPL_OV |>
  left_join(EPL_OV_var$COUNTRY, by = "COUNTRY") |>
  group_by(COUNTRY, Country) |>
  summarise(Nobs = n()) |>
  arrange(-Nobs) |>
  mutate(Flag = gsub(" ", "-", str_to_lower(gsub(" ", "-", Country))),
         Flag = paste0('<img src="../../icon/flag/vsmall/', Flag, '.png" alt="Flag">')) |>
  select(Flag, everything()) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F, escape = F) else .}

France, Germany, Italy

Code
EPL_OV |>
  filter(SERIES == "EPRC_V1",
         COUNTRY %in% c("FRA", "ITA", "DEU")) |>
  left_join(EPL_OV_var$COUNTRY, by = "COUNTRY") |>
  year_to_date() |>
  left_join(colors, by = c("Country" = "country")) |>
  rename(Location = Country) |>
  ggplot() + geom_line(aes(x = date, y = obsValue, color = color)) + 
  scale_color_identity() + add_3flags + theme_minimal() +
  xlab("") + ylab("Strictness of employment protection") +
  scale_x_date(breaks = seq(1920, 2100, 2) |> paste0("-01-01") |> as.Date(),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = seq(0, 6, .1))

Australia, United Kingdom, United States

Code
EPL_OV |>
  filter(SERIES == "EPRC_V1",
         COUNTRY %in% c("AUS", "GBR", "USA")) |>
  left_join(EPL_OV_var$COUNTRY, by = "COUNTRY") |>
  year_to_date() |>
  left_join(colors, by = c("Country" = "country")) |>
  rename(Location = Country) |>
  ggplot() + geom_line(aes(x = date, y = obsValue, color = color)) + 
  scale_color_identity() + add_3flags + theme_minimal() +
  xlab("") + ylab("Strictness of employment protection") +
  scale_x_date(breaks = seq(1920, 2100, 2) |> paste0("-01-01") |> as.Date(),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = seq(0, 5, 0.2))

Australia, United Kingdom, United States, France, Germany, Italy, Spain

Code
EPL_OV |>
  filter(SERIES == "EPRC_V1",
         COUNTRY %in% c("AUS", "GBR", "USA", "FRA", "ITA", "DEU", "ESP")) |>
  left_join(EPL_OV_var$COUNTRY, by = "COUNTRY") |>
  year_to_date() |>
  left_join(colors, by = c("Country" = "country")) |>
  rename(Location = Country) |>
  ggplot() + geom_line(aes(x = date, y = obsValue, color = color)) + 
  scale_color_identity() + add_7flags + theme_minimal() +
  xlab("") + ylab("Strictness of employment protection") +
  scale_x_date(breaks = seq(1920, 2100, 5) |> paste0("-01-01") |> as.Date(),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = seq(0, 5, 0.2))