Geolocated Property Value Declarations (DVF)Demandes de valeurs foncières géolocalisées (DVF)
Demandes de valeurs foncières géolocalisées (DVF)Geolocated Property Value Declarations (DVF)
Dataset of notarized real estate sales in France from 2021 onward, geolocated by Etalab, the French government's open data agency. Each record includes the property's declared value, address, cadastral parcel, surface area, and type of premises (e.g. house, apartment). Data is provided as CSV files, organized by commune (using INSEE municipality codes) and by annual edition, allowing analysis of property price trends and transactions at the local level across France.Ventes immobilières notariées en France (2021→) géolocalisées par Etalab : valeur foncière, adresse, parcelle cadastrale, surfaces, type de local. Servi en CSV par commune (code INSEE) et par édition annuelle.
Trust score
How is this computed?Weighted across five axes. Tap a ring for what it measures.
Data schema (41 fields)
Click a field to see example values.
| Field | Type | Description |
|---|---|---|
| code_communeCommune code | string | INSEE commune code selecting the per-commune file (Paris/Lyon/Marseille: use arrondissement codes). |
| annee | integer | Yearly edition of the register (defaults to the newest). |
| id_mutationId mutation | text | — |
| date_mutationDate mutation | date | — |
| numero_dispositionNumero disposition | int | — |
| nature_mutationNature mutation | text | — |
| valeur_fonciereValeur fonciere | int | — |
| adresse_numeroAdresse numero | int | — |
| adresse_suffixeAdresse suffixe | text | — |
| adresse_nom_voieAdresse nom voie | text | — |
| adresse_code_voieAdresse code voie | text | — |
| code_postalPostal code | int | — |
| nom_communeCommune name | text | — |
| code_departementDépartement code | int | — |
| ancien_code_communeAncien code commune | text | — |
| ancien_nom_communeAncien nom commune | text | — |
| id_parcelleId parcelle | text | — |
| ancien_id_parcelleAncien id parcelle | text | — |
| numero_volumeNumero volume | text | — |
| lot1_numeroLot1 numero | int | — |
| lot1_surface_carrezLot1 surface carrez | number | — |
| lot2_numeroLot2 numero | int | — |
| lot2_surface_carrezLot2 surface carrez | number | — |
| lot3_numeroLot3 numero | int | — |
| lot3_surface_carrezLot3 surface carrez | text | — |
| lot4_numeroLot4 numero | text | — |
| lot4_surface_carrezLot4 surface carrez | text | — |
| lot5_numeroLot5 numero | text | — |
| lot5_surface_carrezLot5 surface carrez | text | — |
| nombre_lotsNombre lots | int | — |
| code_type_localCode type local | int | — |
| type_localType local | text | — |
| surface_reelle_batiSurface reelle bati | int | — |
| nombre_pieces_principalesNombre pieces principales | int | — |
| code_nature_cultureCode nature culture | text | — |
| nature_cultureNature culture | text | — |
| code_nature_culture_specialeCode nature culture speciale | text | — |
| nature_culture_specialeNature culture speciale | text | — |
| surface_terrainSurface terrain | int | — |
| longitudeLongitude | number | — |
| latitudeLatitude | number | — |
Schema captured from geodvf 9 hours ago.
Query the data
Pick columns and a sort, then fetch a live preview straight from the source. Choose an API-filterable column (marked ▾) under “Where” to pick from its list of values.
Sample data (8 records)
Record 1latitude: 43.569089 · longitude: 1.452999
{
"latitude": "43.569089",
"longitude": "1.452999",
"type_local": "Appartement",
"code_postal": "31400",
"id_mutation": "2025-352264",
"id_parcelle": "31555812AK0297",
"lot1_numero": "8",
"lot2_numero": null,
"lot3_numero": null,
"lot4_numero": null,
"lot5_numero": null,
"nom_commune": "Toulouse",
"nombre_lots": "1",
"code_commune": "31555",
"date_mutation": "2025-01-02",
"numero_volume": null,
"adresse_numero": "23",
"nature_culture": null,
"adresse_suffixe": null,
"code_type_local": "2",
"nature_mutation": "Vente",
"surface_terrain": null,
"valeur_fonciere": "135000",
"adresse_nom_voie": "AV DES COTEAUX",
"code_departement": "31",
"adresse_code_voie": "2328",
"ancien_id_parcelle": null,
"ancien_nom_commune": null,
"numero_disposition": "000001",
"ancien_code_commune": null,
"code_nature_culture": null,
"lot1_surface_carrez": "47.45",
"lot2_surface_carrez": null,
"lot3_surface_carrez": null,
"lot4_surface_carrez": null,
"lot5_surface_carrez": null,
"surface_reelle_bati": "47",
"nature_culture_speciale": null,
"nombre_pieces_principales": "2",
"code_nature_culture_speciale": null
}Record 2latitude: 43.569089 · longitude: 1.452999
{
"latitude": "43.569089",
"longitude": "1.452999",
"type_local": "Dépendance",
"code_postal": "31400",
"id_mutation": "2025-352264",
"id_parcelle": "31555812AK0297",
"lot1_numero": "82",
"lot2_numero": null,
"lot3_numero": null,
"lot4_numero": null,
"lot5_numero": null,
"nom_commune": "Toulouse",
"nombre_lots": "1",
"code_commune": "31555",
"date_mutation": "2025-01-02",
"numero_volume": null,
"adresse_numero": "23",
"nature_culture": null,
"adresse_suffixe": null,
"code_type_local": "3",
"nature_mutation": "Vente",
"surface_terrain": null,
"valeur_fonciere": "135000",
"adresse_nom_voie": "AV DES COTEAUX",
"code_departement": "31",
"adresse_code_voie": "2328",
"ancien_id_parcelle": null,
"ancien_nom_commune": null,
"numero_disposition": "000001",
"ancien_code_commune": null,
"code_nature_culture": null,
"lot1_surface_carrez": null,
"lot2_surface_carrez": null,
"lot3_surface_carrez": null,
"lot4_surface_carrez": null,
"lot5_surface_carrez": null,
"surface_reelle_bati": null,
"nature_culture_speciale": null,
"nombre_pieces_principales": "0",
"code_nature_culture_speciale": null
}Record 3latitude: 43.603182 · longitude: 1.452292
{
"latitude": "43.603182",
"longitude": "1.452292",
"type_local": "Dépendance",
"code_postal": "31000",
"id_mutation": "2025-352265",
"id_parcelle": "31555821AC0324",
"lot1_numero": "30",
"lot2_numero": "31",
"lot3_numero": null,
"lot4_numero": null,
"lot5_numero": null,
"nom_commune": "Toulouse",
"nombre_lots": "2",
"code_commune": "31555",
"date_mutation": "2025-01-03",
"numero_volume": null,
"adresse_numero": "9",
"nature_culture": null,
"adresse_suffixe": null,
"code_type_local": "3",
"nature_mutation": "Vente",
"surface_terrain": null,
"valeur_fonciere": "113000",
"adresse_nom_voie": "RUE D'AUBUISSON",
"code_departement": "31",
"adresse_code_voie": "0608",
"ancien_id_parcelle": null,
"ancien_nom_commune": null,
"numero_disposition": "000001",
"ancien_code_commune": null,
"code_nature_culture": null,
"lot1_surface_carrez": null,
"lot2_surface_carrez": null,
"lot3_surface_carrez": null,
"lot4_surface_carrez": null,
"lot5_surface_carrez": null,
"surface_reelle_bati": null,
"nature_culture_speciale": null,
"nombre_pieces_principales": "0",
"code_nature_culture_speciale": null
}Record 4latitude: 43.603182 · longitude: 1.452292
{
"latitude": "43.603182",
"longitude": "1.452292",
"type_local": "Appartement",
"code_postal": "31000",
"id_mutation": "2025-352265",
"id_parcelle": "31555821AC0324",
"lot1_numero": "30",
"lot2_numero": "31",
"lot3_numero": null,
"lot4_numero": null,
"lot5_numero": null,
"nom_commune": "Toulouse",
"nombre_lots": "2",
"code_commune": "31555",
"date_mutation": "2025-01-03",
"numero_volume": null,
"adresse_numero": "9",
"nature_culture": null,
"adresse_suffixe": null,
"code_type_local": "2",
"nature_mutation": "Vente",
"surface_terrain": null,
"valeur_fonciere": "113000",
"adresse_nom_voie": "RUE D'AUBUISSON",
"code_departement": "31",
"adresse_code_voie": "0608",
"ancien_id_parcelle": null,
"ancien_nom_commune": null,
"numero_disposition": "000001",
"ancien_code_commune": null,
"code_nature_culture": null,
"lot1_surface_carrez": null,
"lot2_surface_carrez": null,
"lot3_surface_carrez": null,
"lot4_surface_carrez": null,
"lot5_surface_carrez": null,
"surface_reelle_bati": "34",
"nature_culture_speciale": null,
"nombre_pieces_principales": "1",
"code_nature_culture_speciale": null
}Record 5latitude: 43.614273 · longitude: 1.409462
{
"latitude": "43.614273",
"longitude": "1.409462",
"type_local": "Maison",
"code_postal": "31200",
"id_mutation": "2025-352268",
"id_parcelle": "31555801AB0042",
"lot1_numero": null,
"lot2_numero": null,
"lot3_numero": null,
"lot4_numero": null,
"lot5_numero": null,
"nom_commune": "Toulouse",
"nombre_lots": "0",
"code_commune": "31555",
"date_mutation": "2025-01-02",
"numero_volume": null,
"adresse_numero": "23",
"nature_culture": "sols",
"adresse_suffixe": null,
"code_type_local": "1",
"nature_mutation": "Vente",
"surface_terrain": "278",
"valeur_fonciere": "457000",
"adresse_nom_voie": "RUE MIRAMAR",
"code_departement": "31",
"adresse_code_voie": "5980",
"ancien_id_parcelle": null,
"ancien_nom_commune": null,
"numero_disposition": "000001",
"ancien_code_commune": null,
"code_nature_culture": "S",
"lot1_surface_carrez": null,
"lot2_surface_carrez": null,
"lot3_surface_carrez": null,
"lot4_surface_carrez": null,
"lot5_surface_carrez": null,
"surface_reelle_bati": "80",
"nature_culture_speciale": null,
"nombre_pieces_principales": "3",
"code_nature_culture_speciale": null
}Record 6latitude: 43.602851 · longitude: 1.459104
{
"latitude": "43.602851",
"longitude": "1.459104",
"type_local": "Dépendance",
"code_postal": "31500",
"id_mutation": "2025-352269",
"id_parcelle": "31555807AB0801",
"lot1_numero": "4",
"lot2_numero": null,
"lot3_numero": null,
"lot4_numero": null,
"lot5_numero": null,
"nom_commune": "Toulouse",
"nombre_lots": "1",
"code_commune": "31555",
"date_mutation": "2025-01-03",
"numero_volume": null,
"adresse_numero": "14",
"nature_culture": null,
"adresse_suffixe": null,
"code_type_local": "3",
"nature_mutation": "Vente",
"surface_terrain": null,
"valeur_fonciere": "199500",
"adresse_nom_voie": "RUE DE LA BLANCHISSERIE",
"code_departement": "31",
"adresse_code_voie": "1200",
"ancien_id_parcelle": null,
"ancien_nom_commune": null,
"numero_disposition": "000001",
"ancien_code_commune": null,
"code_nature_culture": null,
"lot1_surface_carrez": "51.72",
"lot2_surface_carrez": null,
"lot3_surface_carrez": null,
"lot4_surface_carrez": null,
"lot5_surface_carrez": null,
"surface_reelle_bati": null,
"nature_culture_speciale": null,
"nombre_pieces_principales": "0",
"code_nature_culture_speciale": null
}Record 7latitude: 43.602851 · longitude: 1.459104
{
"latitude": "43.602851",
"longitude": "1.459104",
"type_local": "Dépendance",
"code_postal": "31500",
"id_mutation": "2025-352269",
"id_parcelle": "31555807AB0801",
"lot1_numero": "4",
"lot2_numero": null,
"lot3_numero": null,
"lot4_numero": null,
"lot5_numero": null,
"nom_commune": "Toulouse",
"nombre_lots": "1",
"code_commune": "31555",
"date_mutation": "2025-01-03",
"numero_volume": null,
"adresse_numero": "14",
"nature_culture": null,
"adresse_suffixe": null,
"code_type_local": "3",
"nature_mutation": "Vente",
"surface_terrain": null,
"valeur_fonciere": "199500",
"adresse_nom_voie": "RUE DE LA BLANCHISSERIE",
"code_departement": "31",
"adresse_code_voie": "1200",
"ancien_id_parcelle": null,
"ancien_nom_commune": null,
"numero_disposition": "000001",
"ancien_code_commune": null,
"code_nature_culture": null,
"lot1_surface_carrez": "51.72",
"lot2_surface_carrez": null,
"lot3_surface_carrez": null,
"lot4_surface_carrez": null,
"lot5_surface_carrez": null,
"surface_reelle_bati": null,
"nature_culture_speciale": null,
"nombre_pieces_principales": "0",
"code_nature_culture_speciale": null
}Record 8latitude: 43.602851 · longitude: 1.459104
{
"latitude": "43.602851",
"longitude": "1.459104",
"type_local": "Appartement",
"code_postal": "31500",
"id_mutation": "2025-352269",
"id_parcelle": "31555807AB0801",
"lot1_numero": "4",
"lot2_numero": null,
"lot3_numero": null,
"lot4_numero": null,
"lot5_numero": null,
"nom_commune": "Toulouse",
"nombre_lots": "1",
"code_commune": "31555",
"date_mutation": "2025-01-03",
"numero_volume": null,
"adresse_numero": "14",
"nature_culture": null,
"adresse_suffixe": null,
"code_type_local": "2",
"nature_mutation": "Vente",
"surface_terrain": null,
"valeur_fonciere": "199500",
"adresse_nom_voie": "RUE DE LA BLANCHISSERIE",
"code_departement": "31",
"adresse_code_voie": "1200",
"ancien_id_parcelle": null,
"ancien_nom_commune": null,
"numero_disposition": "000001",
"ancien_code_commune": null,
"code_nature_culture": null,
"lot1_surface_carrez": "51.72",
"lot2_surface_carrez": null,
"lot3_surface_carrez": null,
"lot4_surface_carrez": null,
"lot5_surface_carrez": null,
"surface_reelle_bati": "50",
"nature_culture_speciale": null,
"nombre_pieces_principales": "3",
"code_nature_culture_speciale": null
}Live sample captured at profiling time — values may have changed upstream.
Verification Status
Using the API
Configuration
- Base URL
- https://files.data.gouv.fr/geo-dvf/latest/csv/
License
Terms stated by the source (not a recognized license):
Licence Ouverte / Open Licence version 2.0
Query examples
curl -s 'https://files.data.gouv.fr/geo-dvf/latest/csv/2025/communes/31/31555.csv'Complete 2025 sales for INSEE commune 31555 as CSV. Pattern: https://files.data.gouv.fr/geo-dvf/latest/csv/{annee}/communes/{dept}/{code_commune}.csv (dept = first 2 chars of the code; 3 for overseas 97x).
Machine-readable & source
Embed this badge in a README or wiki — it always shows the latest verification state and quality tier.