source | dataset | Title | .html | .rData |
---|---|---|---|---|
insee | INDICES_LOYERS | Indices des loyers - Base 2019 | 2025-10-10 | 2025-10-09 |
Indices des loyers - Base 2019
Data - INSEE
Info
Données sur l’inflation en France
source | dataset | Title | .html | .rData |
---|---|---|---|---|
insee | ILC-ILAT-ICC | Indices pour la révision d’un bail commercial ou professionnel | 2025-10-10 | 2025-10-09 |
insee | INDICES_LOYERS | Indices des loyers - Base 2019 | 2025-10-10 | 2025-10-09 |
insee | IPC-1970-1980 | Indice des prix à la consommation - Base 1970, 1980 | 2025-10-10 | 2025-10-09 |
insee | IPC-1990 | Indices des prix à la consommation - Base 1990 | 2025-10-10 | 2025-10-09 |
insee | IPC-2015 | Indice des prix à la consommation - Base 2015 | 2025-10-10 | 2025-10-10 |
insee | IPC-PM-2015 | Prix moyens de vente de détail | 2025-10-10 | 2025-10-09 |
insee | IPCH-2015 | Indices des prix à la consommation harmonisés | 2025-10-10 | 2025-10-09 |
insee | IPCH-IPC-2015-ensemble | Indices des prix à la consommation harmonisés | 2025-10-10 | 2025-10-10 |
insee | IPGD-2015 | Indice des prix dans la grande distribution | 2025-10-10 | 2025-05-24 |
insee | IPLA-IPLNA-2015 | Indices des prix des logements neufs et Indices Notaires-Insee des prix des logements anciens | 2025-10-10 | 2025-10-09 |
insee | IPPI-2015 | Indices de prix de production et d'importation dans l'industrie | 2025-10-10 | 2025-10-10 |
insee | IRL | Indice pour la révision d’un loyer d’habitation | 2025-10-10 | 2025-10-09 |
insee | SERIES_LOYERS | Variation des loyers | 2025-10-10 | 2025-10-10 |
insee | T_CONSO_EFF_FONCTION | Consommation effective des ménages par fonction | 2025-10-10 | 2024-07-18 |
insee | bdf2017 | Budget de famille 2017 | 2025-10-10 | 2023-11-21 |
insee | echantillon-agglomerations-IPC-2024 | Échantillon d’agglomérations enquêtées de l’IPC en 2024 | 2025-10-10 | 2025-04-02 |
insee | liste-varietes-IPC-2024 | Liste des variétés pour la mesure de l'IPC en 2024 | 2025-10-10 | 2025-04-02 |
insee | ponderations-elementaires-IPC-2024 | Pondérations élémentaires 2024 intervenant dans le calcul de l’IPC | 2025-10-10 | 2025-04-02 |
Données sur l’immobilier
source | dataset | Title | .html | .rData |
---|---|---|---|---|
acpr | as151 | Enquête annuelle du SGACPR sur le financement de l'habitat 2022 | 2025-08-24 | 2024-04-05 |
acpr | as160 | Enquête annuelle du SGACPR sur le financement de l'habitat 2023 | 2025-08-24 | 2024-09-26 |
acpr | as174 | Enquête annuelle du SGACPR sur le financement de l'habitat 2024 | 2025-09-29 | 2025-09-29 |
bdf | BSI1 | Agrégats monétaires - France | 2025-08-28 | 2025-08-24 |
bdf | CPP | Prix immobilier commercial | 2025-08-28 | 2024-07-01 |
bdf | FM | Marché financier, taux | 2025-08-28 | 2025-08-28 |
bdf | MIR | Taux d'intérêt - Zone euro | 2025-08-28 | 2025-08-04 |
bdf | MIR1 | Taux d'intérêt - France | 2025-08-28 | 2025-08-04 |
bdf | RPP | Prix de l'immobilier | 2025-08-28 | 2025-08-24 |
bdf | immobilier | Immobilier en France | 2025-08-28 | 2025-08-28 |
cgedd | nombre-vente-maison-appartement-ancien | Nombre de ventes de logements anciens cumulé sur 12 mois | 2024-09-26 | 2024-09-26 |
insee | CONSTRUCTION-LOGEMENTS | Construction de logements | 2025-10-10 | 2025-10-09 |
insee | ENQ-CONJ-ART-BAT | Conjoncture dans l'artisanat du bâtiment | 2025-10-10 | 2025-10-09 |
insee | ENQ-CONJ-IND-BAT | Conjoncture dans l'industrie du bâtiment - ENQ-CONJ-IND-BAT | 2025-10-10 | 2025-10-09 |
insee | ENQ-CONJ-PROMO-IMMO | Conjoncture dans la promotion immobilière | 2025-10-10 | 2025-10-09 |
insee | ENQ-CONJ-TP | Conjoncture dans les travaux publics | 2025-10-10 | 2025-10-09 |
insee | ILC-ILAT-ICC | Indices pour la révision d’un bail commercial ou professionnel | 2025-10-10 | 2025-10-09 |
insee | INDICES_LOYERS | Indices des loyers - Base 2019 | 2025-10-10 | 2025-10-09 |
insee | IPLA-IPLNA-2015 | Indices des prix des logements neufs et Indices Notaires-Insee des prix des logements anciens | 2025-10-10 | 2025-10-09 |
insee | IRL | Indice pour la révision d’un loyer d’habitation | 2025-10-10 | 2025-10-09 |
insee | PARC-LOGEMENTS | Estimations annuelles du parc de logements (EAPL) | 2025-10-10 | 2023-12-03 |
insee | SERIES_LOYERS | Variation des loyers | 2025-10-10 | 2025-10-10 |
insee | t_dpe_val | Dépenses de consommation des ménages pré-engagées | 2025-10-10 | 2025-08-29 |
notaires | arrdt | Prix au m^2 par arrondissement - arrdt | 2025-09-29 | 2025-09-29 |
notaires | dep | Prix au m^2 par département | 2025-09-29 | 2025-09-29 |
Info
Indices des loyers d’habitation (ILH). html
Enquête Loyers et charges. html
Questionnaire de l’enquête. pdf
Qualité de l’enquête relative à l’exercice 2018. pdf
Les données sont calculées à partir des résultats de l’enquête Loyers et charges et de celle sur les loyers auprès des bailleurs sociaux (ELBS). Le champ recouvre l’ensemble des résidences principales, louées vides, dont l’usage principal est l’habitation. L’indice est calculé selon la formule de Laspeyres appliquée à des loyers au mètre carré. On mesure une évolution à qualité constante, en rapportant les loyers du parc observés au trimestre T aux loyers du parc observés au trimestre T-1. Ces indices sont ensuite chaînés, du 1er mois d’un trimestre au 1er mois du trimestre précédent.
Ces données diffèrent de l’indice de référence des loyers (IRL), qui constitue la référence pour la révision des loyers en cours de bail dans le parc locatif privé, car l’évolution des loyers présentée ici est celle effectivement constatée. Si la variation réelle des loyers est corrélée à l’évolution de l’IRL, les deux indices ne sont cependant pas identiques.
LAST_UPDATE
- LAST_UPDATE
Code
`INDICES_LOYERS` %>%
group_by(LAST_UPDATE) %>%
summarise(Nobs = n()) %>%
arrange(desc(LAST_UPDATE)) %>%
print_table_conditional()
LAST_UPDATE | Nobs |
---|---|
2025-09-16 | 5248 |
SECTEURS_LOYERS
Code
%>%
INDICES_LOYERS left_join(SECTEURS_LOYERS, by = "SECTEURS_LOYERS") %>%
group_by(SECTEURS_LOYERS, Secteurs_loyers) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
if (is_html_output()) print_table(.) else .} {
SECTEURS_LOYERS | Secteurs_loyers | Nobs |
---|---|---|
TOUS_SECTEURS | Tous secteurs | 1797 |
SECTEUR_SOCIAL | Secteur social | 1730 |
SECTEUR_LIBRE | Secteur libre | 1721 |
NATURE
Code
%>%
INDICES_LOYERS left_join(NATURE, by = "NATURE") %>%
group_by(NATURE, Nature) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
if (is_html_output()) print_table(.) else .} {
NATURE | Nature | Nobs |
---|---|---|
INDICE | Indice | 1773 |
GLISSEMENT_TRIMESTRIEL | Glissement trimestriel | 1763 |
GLISSEMENT_ANNUEL | Glissement annuel | 1712 |
REF_AREA
Code
%>%
INDICES_LOYERS left_join(REF_AREA, by = "REF_AREA") %>%
group_by(REF_AREA, Ref_area) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
if (is_html_output()) print_table(.) else .} {
REF_AREA | Ref_area | Nobs |
---|---|---|
FM | France métropolitaine | 1383 |
AGGLO_PARIS | Agglomération parisienne | 1287 |
PR | Reste de la France métropolitaine | 1287 |
D971 | Guadeloupe | 522 |
D972 | Martinique | 231 |
D974 | La Réunion | 231 |
FR-D976 | France (hors Mayotte) | 231 |
D973 | Guyane | 76 |
OBS_STATUS
Code
%>%
INDICES_LOYERS left_join(OBS_STATUS, by = "OBS_STATUS") %>%
group_by(OBS_STATUS, Obs_status) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
if (is_html_output()) print_table(.) else .} {
OBS_STATUS | Obs_status | Nobs |
---|---|---|
A | Valeur normale | 4888 |
U | Valeur atypique | 360 |
TITLE_FR
Code
%>%
INDICES_LOYERS group_by(IDBANK, TITLE_FR) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
if (is_html_output()) datatable(., filter = 'top', rownames = F) else .} {
Par Type
Tous Secteurs
Code
%>%
INDICES_LOYERS filter(SECTEURS_LOYERS == "TOUS_SECTEURS",
== "INDICE",
NATURE %in% c("FM", "AGGLO_PARIS", "PR")) %>%
REF_AREA left_join(SECTEURS_LOYERS, by = "SECTEURS_LOYERS") %>%
left_join(REF_AREA, by = "REF_AREA") %>%
%>%
quarter_to_date ggplot() + ylab("Indice des loyers") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Ref_area)) +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.75, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 400, 10),
labels = dollar_format(accuracy = 1, prefix = ""))
Secteur libre
Code
%>%
INDICES_LOYERS filter(SECTEURS_LOYERS == "SECTEUR_LIBRE",
== "INDICE",
NATURE %in% c("FM", "AGGLO_PARIS", "PR")) %>%
REF_AREA left_join(SECTEURS_LOYERS, by = "SECTEURS_LOYERS") %>%
left_join(REF_AREA, by = "REF_AREA") %>%
%>%
quarter_to_date ggplot() + ylab("Indice des loyers") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Ref_area)) +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.75, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 400, 10),
labels = dollar_format(accuracy = 1, prefix = ""))
Par région
Liste
Code
%>%
INDICES_LOYERS filter(TIME_PERIOD == "2020-Q2",
== "INDICE",
NATURE == "TOUS_SECTEURS") %>%
SECTEURS_LOYERS select(REF_AREA, TITLE_FR, OBS_VALUE) %>%
mutate(TITLE_FR = gsub("Indice des loyers – Tous secteurs – ", "", TITLE_FR),
TITLE_FR = gsub(" – Base 100 en janvier 2019", "", TITLE_FR)) %>%
if (is_html_output()) print_table(.) else .} {
REF_AREA | TITLE_FR | OBS_VALUE |
---|---|---|
FM | France métropolitaine | 100.6 |
AGGLO_PARIS | Agglomération parisienne | 100.8 |
PR | Reste de la France métropolitaine | 100.5 |
D971 | Guadeloupe | 101.1 |
D972 | Martinique | 101.2 |
D973 | Guyane | 101.0 |
D974 | La Réunion | 101.1 |
FR-D976 | France (hors Mayotte) | 100.6 |
France
All
Code
%>%
INDICES_LOYERS filter(REF_AREA == "FM",
== "INDICE") %>%
NATURE left_join(SECTEURS_LOYERS, by = "SECTEURS_LOYERS") %>%
%>%
quarter_to_date ggplot() + ylab("Indice des loyers") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Secteurs_loyers)) +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.75, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 400, 10),
labels = dollar_format(accuracy = 1, prefix = ""))
1990-
Code
%>%
INDICES_LOYERS filter(REF_AREA == "FM",
== "INDICE") %>%
NATURE left_join(SECTEURS_LOYERS, by = "SECTEURS_LOYERS") %>%
%>%
quarter_to_date filter(date >= as.Date("1990-01-01")) %>%
group_by(SECTEURS_LOYERS) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des loyers") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Secteurs_loyers)) +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.75, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 400, 10),
labels = dollar_format(accuracy = 1, prefix = ""))
1992-
Code
%>%
INDICES_LOYERS filter(REF_AREA == "FM",
== "INDICE") %>%
NATURE left_join(SECTEURS_LOYERS, by = "SECTEURS_LOYERS") %>%
%>%
quarter_to_date filter(date >= as.Date("1992-01-01")) %>%
group_by(SECTEURS_LOYERS) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des loyers") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Secteurs_loyers)) +
scale_x_date(breaks = seq(1920, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.75, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 400, 10),
labels = dollar_format(accuracy = 1, prefix = ""))
2000-
Code
%>%
INDICES_LOYERS filter(REF_AREA == "FM",
== "INDICE") %>%
NATURE left_join(SECTEURS_LOYERS, by = "SECTEURS_LOYERS") %>%
%>%
quarter_to_date filter(date >= as.Date("2000-01-01")) %>%
group_by(SECTEURS_LOYERS) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des loyers") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Secteurs_loyers)) +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.75, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 400, 10),
labels = dollar_format(accuracy = 1, prefix = ""))
2017-
Code
%>%
INDICES_LOYERS filter(REF_AREA == "FM",
== "INDICE") %>%
NATURE left_join(SECTEURS_LOYERS, by = "SECTEURS_LOYERS") %>%
%>%
quarter_to_date filter(date >= as.Date("2017-01-01")) %>%
group_by(SECTEURS_LOYERS) %>%
arrange(date) %>%
mutate(OBS_VALUE = 100*OBS_VALUE/OBS_VALUE[1]) %>%
ggplot() + ylab("Indice des loyers") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Secteurs_loyers)) +
scale_x_date(breaks = seq(1920, 2100, 1) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.75, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 400, 1),
labels = dollar_format(accuracy = 1, prefix = ""))
Agglomération Parisienne
Code
%>%
INDICES_LOYERS filter(REF_AREA == "AGGLO_PARIS",
== "INDICE") %>%
NATURE left_join(SECTEURS_LOYERS, by = "SECTEURS_LOYERS") %>%
%>%
quarter_to_date ggplot() + ylab("Indice des loyers") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Secteurs_loyers)) +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.75, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 400, 10),
labels = dollar_format(accuracy = 1, prefix = ""))
Province
Code
%>%
INDICES_LOYERS filter(REF_AREA == "PR",
== "INDICE") %>%
NATURE left_join(SECTEURS_LOYERS, by = "SECTEURS_LOYERS") %>%
%>%
quarter_to_date ggplot() + ylab("Indice des loyers") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Secteurs_loyers)) +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.75, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 400, 10),
labels = dollar_format(accuracy = 1, prefix = ""))
France (hors Mayotte)
Code
%>%
INDICES_LOYERS filter(REF_AREA == "FR-D976",
== "INDICE") %>%
NATURE left_join(SECTEURS_LOYERS, by = "SECTEURS_LOYERS") %>%
%>%
quarter_to_date ggplot() + ylab("Indice des loyers") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = OBS_VALUE, color = Secteurs_loyers)) +
scale_x_date(breaks = seq(1920, 2100, 1) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
theme(legend.position = c(0.75, 0.3),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 400, 1),
labels = dollar_format(accuracy = 1, prefix = ""))