SeLoger & Leboncoin Listing Deal Checker – DVF Sold Prices avatar

SeLoger & Leboncoin Listing Deal Checker – DVF Sold Prices

Pricing

from $10.00 / 1,000 listing checks

Go to Apify Store
SeLoger & Leboncoin Listing Deal Checker – DVF Sold Prices

SeLoger & Leboncoin Listing Deal Checker – DVF Sold Prices

Check French property listings (SeLoger, Leboncoin, PAP, Bien'ici scrapers) against official DVF sale prices: fair value, % above or below, deal verdict and a report of the best deals.

Pricing

from $10.00 / 1,000 listing checks

Rating

0.0

(0)

Developer

Krzysztof Filipiak

Krzysztof Filipiak

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

11 days ago

Last modified

Share

SeLoger & Leboncoin Listing Deal Checker – compare asking prices with DVF sold prices

Is this listing a bargain or overpriced? Feed the property listings you scraped from SeLoger, Leboncoin, PAP, Bien'ici, Logic-Immo (or any other source) and get, for every apartment and house, its value according to official sale prices from notarial deeds (DVF) nearby – plus how many percent the asking price is above or below it and a clear verdict.

DVF (Demandes de valeurs foncières) is the register of property sales recorded by the French tax administration from notarial deeds. Listing portals only show asking prices; this Actor tells you what similar homes actually sold for.

What you get for each listing

  • value from DVF sales (€) and price per m², with a range
  • asking vs sold value in % (e.g. −8.2% = asking price 8.2% below what similar homes sold for)
  • typical premium of the other listings from the same city in your input, and the listing's position against it
  • a verdict: great_deal, good_deal, typical, expensive or very_expensive – and whether it is reliable
  • confidence, number of comparable sales and what they were compared with (a radius around the listing, or its commune when the listing has no coordinates)
  • the 3 most similar sales (similarSales: date, price, area, rooms, price per m², street, distance)

Plus a report with the best deals and a table per city (Output tab → Best deals), and a JSON summary.

How to use it with a scraper

  1. Run any listings scraper from Apify Store – for example a SeLoger, Leboncoin or PAP scraper.
  2. Open this Actor and pick that run's dataset in Listings dataset. Start.
  3. Open Best deals in the Output tab.

Automatically after every scrape: on the scraper's Integrations tab click Add integration and choose this Actor – each finished scrape is checked without any copying.

Field names are recognised automatically: price, prix, pricing.amount_eur, surface, square, property.surface_m2, rooms, pieces, real_estate_type, latitude, longitude, zipcode, city, url… Unusual names can be mapped in fieldMapping, e.g. {"price": "pricing.total", "area": "details.surface"}. Listings with coordinates are compared with sales within 500 m (wider when there are too few); listings with only a postcode and city are compared with sales in their commune (Paris, Lyon and Marseille: their arrondissement).

Example

Input (pasted listings – real run from October 2026):

{
"listings": [
{ "title": "Appartement 2 pièces 45 m²", "price": 445000, "surface": 45, "rooms": 2, "propertyType": "Appartement",
"latitude": 48.8537, "longitude": 2.3709, "zipcode": "75011", "city": "Paris" },
{ "title": "Appartement 3 pièces 68 m²", "price": 395000, "surface": 68, "rooms": 3, "propertyType": "Appartement",
"zipcode": "69003", "city": "Lyon" },
{ "title": "Maison 5 pièces 120 m²", "price": 520000, "surface": 120, "rooms": 5, "propertyType": "Maison",
"zipcode": "33000", "city": "Bordeaux" }
]
}

Results:

ListingAsking €/m²Sold value €/m²Asking vs soldCompared with
Paris 11e · apartment 45 m² · 445,000 €9,88910,777−8.2%716 sales within 500 m
Lyon 3e · apartment 68 m² · 395,000 €5,8094,502+29.0%3,256 sales in the arrondissement
Bordeaux · house 120 m² · 520,000 €4,3334,831−10.3%2,567 sales in the commune

One record (shortened):

{
"recordType": "listing",
"listing": { "title": "Appartement 2 pièces 45 m²", "price": 445000, "areaM2": 45, "city": "Paris", "zip": "75011" },
"askingPricePerM2Eur": 9889,
"deedValueEur": 485000,
"deedPricePerM2Eur": 10777,
"deedValueRangeEur": { "low": 433000, "high": 544000 },
"priceVsDeedValuePct": -8.2,
"verdict": "good_deal",
"confidence": "high",
"comparablesUsed": 716,
"comparisonArea": "500 m",
"priceLevelAsOf": "2025-Q4",
"similarSales": [
{ "date": "2025-10-07", "priceEur": 698000, "areaM2": 50, "rooms": 2, "pricePerM2Eur": 13960, "street": "Rue De La Roquette", "distanceM": 15 }
]
}

How the verdict works

Asking prices are usually above final sale prices (negotiation, and DVF is published with a delay of about six months). So a listing is judged against the typical premium of other listings from the same city in your input (median of at least 12 listings):

Listing vs typical premiumVerdict
15 points or more belowgreat_deal
7–15 points belowgood_deal
within ±7 pointstypical
7–15 points aboveexpensive
15 points or more abovevery_expensive

With fewer listings from a city, fixed bands on the raw difference are used (≤ −10% great deal, ≤ 0% good deal, < +15% typical, < +25% expensive). Verdicts based on few sales are marked verdictReliable: false and left out of Best deals.

How the value is calculated

DVF sales of a single apartment or a single house (outbuildings allowed) from the last 36 months of data, adjusted to the newest quarter with the local quarterly trend and weighted by distance, living area, rooms and recency; the value is the weighted median price per m² × the listing's area. The same method as France Property Valuation (DVF). It is an automated estimate, not a formal appraisal: it does not see the condition, floor, view or energy rating (DPE).

Who uses it

  • Investors and marchands de biens – screen thousands of listings and look only at the real bargains.
  • Real estate agents – back up a price discussion with what similar homes actually sold for; spot overpriced private listings for prospecting.
  • Proptech and data teams – enrich listing datasets with an official, sourced value per listing.

Pricing (pay per event)

EventPrice
Listing check (only when a value is produced)$0.01

Skipped listings – rentals, parking, plots, commercial premises, listings without a price, area or location, Alsace-Moselle – are free and listed with the reason. 1,000 checked listings cost $10.

Data sources, coverage and privacy

  • DVF (Demandes de valeurs foncières), DGFiP, geolocated by Etalab – Licence Ouverte 2.0; locations from IGN Géoplateforme.
  • Not covered by DVF: Alsace-Moselle (departments 57, 67, 68) and Mayotte.
  • DVF has no names of buyers or sellers. Your listings are processed only in your run; results are not published or indexed.

En français – cette annonce est-elle une bonne affaire ?

Comparez les annonces immobilières SeLoger, Leboncoin, PAP, Bien'ici (par exemple le résultat d'un scraper Apify) avec les prix de vente réels DVF : pour chaque appartement ou maison, la valeur estimée à partir des ventes comparables à proximité, l'écart du prix affiché en %, et un verdict – bonne affaire, prix normal ou trop cher – par rapport aux autres annonces de la même ville. Un rapport liste les meilleures affaires. 0,01 $ par annonce analysée ; les annonces ignorées (location, parking, terrain, données manquantes) sont gratuites.