Residential Property Price Indices (RPPIs) and related housing indicators - HOUSING
Data - OECD
Last observation: Q4 2019 (N = 408) · déc. 2019 (N = 408) · 2019 (N = 431)
First observation: Q2 1914 (N = 1) · 1915 (N = 1) · janv. 1948 (N = 1)
Last data update: 02 août 2026, 08:59
Last compile: 05 sept. 2026, 03:35
Structure
France, United States, Germany, Japan
CPI: 04.1 - Actual rentals for housing - CP040100
Code
HOUSING |>
filter(LOCATION %in% c("FRA", "USA", "DEU", "JPN"),
SUBJECT == "CP040100",
FREQUENCY == "Q",
MEASURE == "IXOB") |>
quarter_to_enddate() |>
left_join(HOUSING_var$LOCATION |>
setNames(c("LOCATION", "Location")), by = "LOCATION") |>
ggplot() + geom_line() +
aes(x = date, y = obsValue, color = Location, linetype = Location) +
theme_minimal() + xlab("") + ylab("CPI: 04.1 - Actual rentals") +
scale_x_date(breaks = seq(1960, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10)) +
scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.position = c(0.8, 0.20),
legend.title = element_blank())
CPI: 04.2 - Imputed rentals for housing - CP040200
Code
HOUSING |>
filter(LOCATION %in% c("FRA", "USA", "DEU", "JPN"),
SUBJECT == "CP040200",
FREQUENCY == "Q",
MEASURE == "IXOB") |>
quarter_to_enddate() |>
left_join(HOUSING_var$LOCATION |>
setNames(c("LOCATION", "Location")), by = "LOCATION") |>
ggplot() + geom_line() +
aes(x = date, y = obsValue, color = Location, linetype = Location) +
theme_minimal() + xlab("") + ylab("CPI: 04.2 - Imputed rentals") +
scale_x_date(breaks = seq(1960, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10)) +
scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.position = c(0.8, 0.20),
legend.title = element_blank())
CPI: Housing (04.1, 04.2, 04.3) - CPGRHO01
Code
HOUSING |>
filter(LOCATION %in% c("FRA", "USA", "DEU", "JPN"),
SUBJECT == "CPGRHO01",
FREQUENCY == "Q",
MEASURE == "IXOB") |>
quarter_to_enddate() |>
left_join(HOUSING_var$LOCATION |>
setNames(c("LOCATION", "Location")), by = "LOCATION") |>
ggplot() + geom_line() +
aes(x = date, y = obsValue, color = Location, linetype = Location) +
theme_minimal() + xlab("") + ylab("CPI: Housing (04.1, 04.2, 04.3)") +
scale_x_date(breaks = seq(1960, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10)) +
scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.position = c(0.8, 0.20),
legend.title = element_blank())
CPI: Housing excluding imputed rentals for housing (04.1, 04.3) - CPGRHO02
Code
HOUSING |>
filter(LOCATION %in% c("FRA", "USA", "DEU", "JPN"),
SUBJECT == "CPGRHO02",
FREQUENCY == "Q",
MEASURE == "IXOB") |>
quarter_to_enddate() |>
left_join(HOUSING_var$LOCATION |>
setNames(c("LOCATION", "Location")), by = "LOCATION") |>
ggplot() + geom_line() +
aes(x = date, y = obsValue, color = Location, linetype = Location) +
theme_minimal() + xlab("") + ylab("CPI: Housing (04.1, 04.2, 04.3)") +
scale_x_date(breaks = seq(1960, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10)) +
scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.position = c(0.8, 0.20),
legend.title = element_blank())
Canada, United Kingdom, Norway, Denmark
CPI: 04.1 - Actual rentals for housing - CP040100
Code
HOUSING |>
filter(LOCATION %in% c("CAN", "GBR", "DNK", "NOR"),
SUBJECT == "CP040100",
FREQUENCY == "Q",
MEASURE == "IXOB") |>
quarter_to_enddate() |>
left_join(HOUSING_var$LOCATION |>
setNames(c("LOCATION", "Location")), by = "LOCATION") |>
ggplot() + geom_line() +
aes(x = date, y = obsValue, color = Location, linetype = Location) +
theme_minimal() + xlab("") + ylab("CPI: 04.1 - Actual rentals") +
scale_x_date(breaks = seq(1960, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10)) +
scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.position = c(0.8, 0.20),
legend.title = element_blank())
CPI: 04.2 - Imputed rentals for housing - CP040200
Code
HOUSING |>
filter(LOCATION %in% c("CAN", "GBR", "DNK", "NOR"),
SUBJECT == "CP040200",
FREQUENCY == "Q",
MEASURE == "IXOB") |>
quarter_to_enddate() |>
left_join(HOUSING_var$LOCATION |>
setNames(c("LOCATION", "Location")), by = "LOCATION") |>
ggplot() + geom_line() +
aes(x = date, y = obsValue, color = Location, linetype = Location) +
theme_minimal() + xlab("") + ylab("CPI: 04.2 - Imputed rentals") +
scale_x_date(breaks = seq(1960, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10)) +
scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.position = c(0.8, 0.20),
legend.title = element_blank())
CPI: Housing (04.1, 04.2, 04.3) - CPGRHO01
Code
HOUSING |>
filter(LOCATION %in% c("CAN", "GBR", "DNK", "NOR"),
SUBJECT == "CPGRHO01",
FREQUENCY == "Q",
MEASURE == "IXOB") |>
quarter_to_enddate() |>
left_join(HOUSING_var$LOCATION |>
setNames(c("LOCATION", "Location")), by = "LOCATION") |>
ggplot() + geom_line() +
aes(x = date, y = obsValue, color = Location, linetype = Location) +
theme_minimal() + xlab("") + ylab("CPI: Housing (04.1, 04.2, 04.3)") +
scale_x_date(breaks = seq(1960, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10)) +
scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.position = c(0.8, 0.20),
legend.title = element_blank())
CPI: Housing excluding imputed rentals for housing (04.1, 04.3) - CPGRHO02
Code
HOUSING |>
filter(LOCATION %in% c("CAN", "GBR", "DNK", "NOR"),
SUBJECT == "CPGRHO02",
FREQUENCY == "Q",
MEASURE == "IXOB") |>
quarter_to_enddate() |>
left_join(HOUSING_var$LOCATION |>
setNames(c("LOCATION", "Location")), by = "LOCATION") |>
ggplot() + geom_line() +
aes(x = date, y = obsValue, color = Location, linetype = Location) +
theme_minimal() + xlab("") + ylab("CPI: Housing (04.1, 04.2, 04.3)") +
scale_x_date(breaks = seq(1960, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10)) +
scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.position = c(0.8, 0.20),
legend.title = element_blank())





