{
  "name": "vendrebien-croisement-dvf-dpe",
  "title": "Croisement DVF × DPE : prix par classe énergétique et délai de vente, par commune",
  "description": "Jeu de données dérivé croisant les ventes immobilières réelles (DVF+ Cerema, DGFiP) avec les diagnostics de performance énergétique (ADEME). Il publie deux informations absentes des bases sources prises séparément : le prix médian au m² par classe DPE et par commune, et le délai médian entre l'établissement du DPE et la signature de l'acte notarié. Couverture : 228 communes françaises. Aucune statistique reposant sur moins de 5 ventes n'est publiée (k-anonymat), et aucune adresse n'est diffusée.",
  "homepage": "https://vendrebien.com/donnees-ouvertes",
  "version": "2026-06-20",
  "licenses": [
    {
      "name": "etalab-2.0",
      "title": "Licence Ouverte / Open Licence 2.0",
      "path": "https://www.etalab.gouv.fr/licence-ouverte-open-licence/"
    }
  ],
  "sources": [
    {
      "title": "DVF+ géolocalisé (Cerema, d'après DGFiP)",
      "path": "https://datafoncier.cerema.fr/donnees/donnees-de-valeurs-foncieres"
    },
    {
      "title": "Diagnostics de performance énergétique — logements existants (ADEME)",
      "path": "https://data.ademe.fr/datasets/dpe03existant"
    }
  ],
  "contributors": [
    {
      "title": "Vendrebien",
      "path": "https://vendrebien.com",
      "role": "author"
    }
  ],
  "resources": [
    {
      "name": "prix-par-classe-dpe",
      "path": "prix-par-classe-dpe.csv",
      "format": "csv",
      "mediatype": "text/csv",
      "encoding": "utf-8",
      "title": "Prix médian au m² par commune, type de bien et classe DPE",
      "description": "Une ligne par commune × type de bien × classe DPE. Le prix est un prix observé, non corrigé de la composition : voir la limite « biais de composition » du README avant toute lecture comme une décote causale.",
      "schema": {
        "fields": [
          {
            "name": "code_insee",
            "type": "string",
            "description": "Code INSEE de la commune"
          },
          {
            "name": "commune",
            "type": "string",
            "description": "Nom de la commune"
          },
          {
            "name": "code_postal",
            "type": "string",
            "description": "Code postal principal"
          },
          {
            "name": "type_bien",
            "type": "string",
            "description": "Maison ou Appartement (mutations mono-bien, hors VEFA)"
          },
          {
            "name": "classe_dpe",
            "type": "string",
            "description": "Classe énergétique de A à G"
          },
          {
            "name": "prix_median_m2",
            "type": "integer",
            "description": "Prix médian au m² en euros, sur les ventes croisées"
          },
          {
            "name": "nb_ventes",
            "type": "integer",
            "description": "Nombre de ventes croisées (toujours ≥ 5)"
          },
          {
            "name": "periode",
            "type": "string",
            "description": "Période couverte par l'agrégat"
          },
          {
            "name": "fiabilite",
            "type": "string",
            "description": "Appréciation de fiabilité fournie par la chaîne de calcul"
          }
        ],
        "primaryKey": [
          "code_insee",
          "type_bien",
          "classe_dpe"
        ]
      }
    },
    {
      "name": "delai-vente",
      "path": "delai-vente.csv",
      "format": "csv",
      "mediatype": "text/csv",
      "encoding": "utf-8",
      "title": "Délai entre le DPE et l'acte notarié, par commune et par année",
      "description": "Une ligne par commune × année. Attention : cette durée n'est PAS le temps de commercialisation habituellement publié (mise en ligne de l'annonce → compromis). Voir README.",
      "schema": {
        "fields": [
          {
            "name": "code_insee",
            "type": "string",
            "description": "Code INSEE de la commune"
          },
          {
            "name": "commune",
            "type": "string",
            "description": "Nom de la commune"
          },
          {
            "name": "code_postal",
            "type": "string",
            "description": "Code postal principal"
          },
          {
            "name": "annee",
            "type": "integer",
            "description": "Année de signature de l'acte"
          },
          {
            "name": "delai_median_jours",
            "type": "integer",
            "description": "Délai médian en jours entre la date du DPE et l'acte"
          },
          {
            "name": "delai_premier_decile_jours",
            "type": "integer",
            "description": "Délai du 1er décile (les 10 % les plus rapides)"
          },
          {
            "name": "nb_transactions",
            "type": "integer",
            "description": "Nombre de transactions croisées (toujours ≥ 5)"
          }
        ],
        "primaryKey": [
          "code_insee",
          "annee"
        ]
      }
    }
  ]
}
