EuroScrape

← All articles

France publishes every property sale as open data - most people compute the price per m² wrong

cover

France’s DVF dataset (“Demandes de valeurs foncières”) records every notarized property sale: the real price paid, the address, the surface, down to GPS coordinates. It’s the ground truth behind every French price-estimate website, and it’s free.

It also has a trap that most quick analyses fall into.

One sale ≠ one row

DVF spreads a single sale (a mutation) over several rows: one per unit involved. An apartment sold with a cellar and two parking spots is four rows, each repeating the full sale price. Sum the rows, or divide the price by one row’s surface, and your €/m² is garbage.

Real example from Grenoble, 2024: a sale of two apartments for €160,000 total. Naive row-level processing yields either two “sales” of €160,000 each, or a €/m² computed on half the surface - both wrong.

The correct approach:

  1. Group rows by id_mutation.
  2. Take the price once.
  3. Sum the living surfaces of the dwellings; count cellars and parkings separately.
  4. Compute €/m² only when the sale contains exactly one dwelling with a known price and surface. Everything else gets pricePerM2: null, honestly.

On Grenoble 2024, that filter keeps 2,332 clean apartment sales out of 2,408 - enough for solid statistics, without polluting them.

What clean DVF data looks like

I packaged all of this into France Real Estate Sold Prices (DVF) on Apify. One input:

{ "locations": ["Grenoble"], "years": [2024, 2025], "propertyTypes": ["apartment"] }

City names, postal codes or INSEE codes all work; Paris, Lyon and Marseille expand to their arrondissements automatically. Each sale comes back with price, €/m², rooms, address and GPS, and a free summary gives the market picture - real numbers:

Things worth knowing about DVF

Input templates and sample outputs: github.com/EuroScrape/apify-actors.


Part of the EuroScrape actor collection — all articles.

The data in this article comes from the EuroScrape Actors on Apify Store: pay per result, no subscription. See all the Actors.