SeLoger & Leboncoin Listing Deal Checker – DVF Sold Prices
Pricing
from $10.00 / 1,000 listing checks
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
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
11 days ago
Last modified
Categories
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,expensiveorvery_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
- Run any listings scraper from Apify Store – for example a SeLoger, Leboncoin or PAP scraper.
- Open this Actor and pick that run's dataset in Listings dataset. Start.
- 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:
| Listing | Asking €/m² | Sold value €/m² | Asking vs sold | Compared with |
|---|---|---|---|---|
| Paris 11e · apartment 45 m² · 445,000 € | 9,889 | 10,777 | −8.2% | 716 sales within 500 m |
| Lyon 3e · apartment 68 m² · 395,000 € | 5,809 | 4,502 | +29.0% | 3,256 sales in the arrondissement |
| Bordeaux · house 120 m² · 520,000 € | 4,333 | 4,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 premium | Verdict |
|---|---|
| 15 points or more below | great_deal |
| 7–15 points below | good_deal |
| within ±7 points | typical |
| 7–15 points above | expensive |
| 15 points or more above | very_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)
| Event | Price |
|---|---|
| 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.
Related Actors
- France Property Valuation & Sold Prices (DVF) – a detailed valuation of one address, or a market report for any commune.
- Otodom & OLX Listing Deal Checker – the same for Poland, on notarial deeds from the RCN register.
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.