Property Deal Finder — Asking Price vs DVF Sold (France)
Pricing
from $6.00 / 1,000 listing scoreds
Property Deal Finder — Asking Price vs DVF Sold (France)
Find underpriced French properties (biens sous-évalués): scores PAP owner-direct listings against official DVF sold prices — each ad gets an over/under-market deal score from the area's real prix au m², sorted best-first. Spot the bonne affaire before anyone else. Agent-ready via MCP.
Pricing
from $6.00 / 1,000 listing scoreds
Rating
0.0
(0)
Developer
tagada
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
8 hours ago
Last modified
Categories
Share
French Real Estate Deal Score — Asking vs Sold Price (PAP + DVF)
Find underpriced French properties in seconds. This actor takes a PAP.fr owner-direct sale search and scores every listing against what comparable properties actually sold for, using the French government's official transaction database (DVF — Demandes de Valeurs Foncières).
Each listing gets a deal score: how far its asking €/m² sits below (good) or above (expensive) the area's real, recorded median. No more guessing whether a price is fair — you see it.
Built for property investors, buyers, agents doing pige, and AI agents (API + MCP).
Why this actor
- ✅ Asking vs achieved, automatically — live owner asking prices (PAP) benchmarked against official sold prices (DVF), per property type, in the same commune.
- ✅ A single deal score per listing — e.g.
+18means the asking €/m² is 18 % below the local median sale;-12means 12 % above. Sorted best-deal-first. - ✅ Owner-direct — PAP has no agencies, so a good deal means a direct-to-owner opportunity (add
scrapeDetailsfor the owner's phone). - ✅ Official, free benchmark data — DVF from files.data.gouv.fr (Etalab / DGFiP). Outliers (symbolic €1 sales, garages) filtered out.
- ✅ Paste one URL — the benchmark area is auto-derived; override it only if you want.
How it works
- Scrapes the PAP sale listings from your search URL (asking prices).
- Pulls DVF sold transactions for the same commune and years.
- Builds a median €/m² benchmark per property type (Apartment / House), ignoring data-entry noise.
- Scores each listing:
dealScore = (median_sold − asking) / median_sold × 100. - Returns listings best-deal-first, each carrying the benchmark it was judged against.
Input
{"searchUrl": "https://www.pap.fr/annonce/vente-appartements-aix-en-provence-13-g11424","dvfLocation": "","dvfYears": ["2024", "2025"],"scrapeDetails": false,"maxListings": 200}
searchUrl— a pap.fr sale search URL (asking prices to score).dvfLocation— optional commune/postal/INSEE for the benchmark; empty = auto-derive.dvfYears— DVF years to build the benchmark from (more = larger sample).scrapeDetails— also fetch each owner's phone and street address.
Output (one record per listing)
{"source": "PAP","propertyType": "Appartement","price": 249000,"surface": 55,"pricePerM2": 4527,"dealScore": 19,"dealLabel": "Great deal (well below market)","benchmarkPerM2": 5600,"benchmarkSample": 214,"benchmarkArea": "13100","benchmarkYears": ["2024", "2025"],"location": "Aix-En-Provence","url": "https://www.pap.fr/annonces/appartement-…-r462001771","phone": null}
dealScore is null for rentals, listings without a surface, or areas with too few comparable sales (in which case dealLabel explains why). The run's BENCHMARK key-value record holds the full per-type benchmark and the communes used.
Pricing
Pay per event — no subscription:
| Event | When |
|---|---|
| Actor start | Once per run |
| Listing scored | Per listing returned (scored against DVF) |
Companion actors
- PAP Real Estate Listings — raw owner-direct listings (this actor's asking-price source).
- French Real Estate Sales (DVF) — the raw sold-price transactions (this actor's benchmark source).
- SeLoger Scraper — listings from France's #1 portal, with seller phone + particulier/agence flag.
- Logic-Immo Scraper — Logic-Immo listings with the advertiser's phone number + agency/private flag.
FAQ
Where do the numbers come from? Asking prices: public listings on pap.fr. Sold prices: DVF open data (files.data.gouv.fr/geo-dvf, Etalab / DGFiP). Both fetched live at run time.
How is a "deal" defined? Purely on €/m² vs the local median recorded sale for the same property type. It's a pricing signal, not an appraisal — always verify condition, floor, exact street, and DPE.
Why is a score null? Rentals (no sale comparable), listings without a usable surface, or a benchmark with fewer than 5 comparable sales. The benchmark context is still returned so you can judge.
Paris / Lyon / Marseille? Handled — their arrondissements are expanded automatically for DVF.
Does it work with AI agents? Yes — REST API and MCP. Ask "show me PAP apartments in Aix priced under the DVF median."
Keywords: immobilier, prix au m², DVF, valeurs foncières, PAP, particulier à particulier, sous-évalué, bonne affaire immobilière, deal score, asking vs sold price, real estate France, property investment, pige immobilière, €/m².