Construction cost (or producer prices), new residential buildings - monthly data - sts_copi_m
Data - Eurostat
Info
Last observation: Monthly: 2026M06 (N = 21)
First observation: Monthly: 1980M01 (N = 4)
Last data update: 23 jul 2026, 23:06. Last compile: 24 jul 2026, 03:50
Structure
Construction Cost Index, New Residential Buildings
Spain, Austria, Portugal, Netherlands
Code
sts_copi_m %>%
filter(geo %in% c("ES", "AT", "PT", "NL"),
indic_bt == "COST",
unit == "I21") %>%
month_to_date %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(color = ifelse(geo == "NL", color2, color)) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
theme_minimal() + scale_color_identity() + add_4flags +
scale_x_date(breaks = as.Date(paste0(seq(1980, 2100, 5), "-01-01")),
labels = date_format("%Y")) +
xlab("") + ylab("Construction cost, new residential buildings (2021 = 100)")
Spain: Costs vs. Producer Prices
Year-on-year Growth
Code
sts_copi_m %>%
filter(geo == "ES",
unit == "PCH_SM") %>%
month_to_date %>%
mutate(values = values/100) %>%
ggplot + geom_line(aes(x = date, y = values, color = Indic_bt)) +
theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1980, 2100, 5), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.2, 0.85),
legend.title = element_blank()) +
xlab("") + ylab("Year-on-year change") +
scale_y_continuous(labels = scales::percent_format(accuracy = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Latest Month by Country
Code
latest_m <- sts_copi_m %>%
filter(geo == "ES",
indic_bt == "COST",
unit == "PCH_SM",
!is.na(values)) %>%
summarise(m = max(time)) %>%
pull(m)
sts_copi_m %>%
filter(unit == "PCH_SM",
time == latest_m) %>%
mutate(values = values/100) %>%
select(Geo, Indic_bt, values) %>%
spread(Indic_bt, values) %>%
arrange(-Costs) %>%
print_table_conditional()| Geo | Costs | Producer prices |
|---|---|---|
| Türkiye | 0.284 | 0.284 |
| Portugal | 0.070 | 0.070 |
| Austria | 0.057 | 0.057 |
| Netherlands | 0.051 | 0.051 |
| Lithuania | 0.044 | 0.044 |
| Norway | 0.044 | 0.044 |
| Spain | 0.027 | 0.027 |
| Finland | 0.020 | 0.020 |
| Ireland | NA | 0.032 |
| Italy | NA | 0.015 |