Deduplicated EU property data
Every listing once. Clean, verified, with history.
The same flat appears on 3–5 portals and agency sites with different prices, photos and addresses. We merge it into one record, clean every field and keep the full price history — across 5 EU countries.
- ~2.4M
- raw listings collected
- ~1.1M
- unique properties after dedup
- ~54%
- of raw listings were duplicates
- Daily
- refresh · 100+ sources
Product
Build your own price & ROI map.
Pick a city, draw an area and see every listing with its price, rental estimate and ROI on one map — then get alerted when a new one appears.

Deduplication
Five listings. One property. One record.
We match listings by geo-location, floor plan, area, photos and text — even when agencies change the price, crop the photos or move the pin.
- Portal A · T2 Arroios, 78 m²€295,000
- Portal B · Apartamento T2, Lisboa, 80 m²€289,000
- Agency site · 2-bed flat near Anjos metro€299,000
- Portal C · T2 renovado, 77 m²€289,000
- Agency site · Same listing, re-posted€315,000
propertium record · pt-lis-8f21c
- Area
- 78 m² · 2-bed · 3rd floor
- Best price now
- €289,000
- Price history
- 315k → 299k → 289k
- Days on market
- 47
- Seen on
- 5 sources
- Rent estimate · ROI
- €1,450 · 6.0%
Cleaning
Raw listings are messy. Your data shouldn’t be.
Normalized fields
One schema for 5 countries: T2 = 2-bed, built vs. usable area, condition, energy class.
Fixed locations
Wrong pins and “city centre” addresses geocoded to the real street and district.
Stale & fake removed
Expired, withdrawn and bait listings detected and flagged — not counted as supply.
Outliers caught
€1 prices, 10,000 m² flats and typos filtered before they skew your averages.
Re-posts tracked
Agencies re-list to look “new”. We keep the real first-seen date and every price change.
Personal data stripped
Names and phone numbers of private sellers are not stored in the dataset.
Coverage
5 countries. ~1.1M unique properties.
Sale and rent. Updated daily. New cities on request.
| Country | Unique properties |
|---|---|
| Spain | ~280K |
| Portugal | ~420K |
| Italy | ~210K |
| Germany | ~110K |
| Bulgaria | ~43K |
| Next: 🇫🇷 France, 🇬🇷 Greece, 🇭🇷 Croatia | coming soon |
The problem
You wanted market data. You got a scraping job.
Your scraper broke. Again.
Bans, captchas, layout changes. Engineers maintain parsers instead of building the product.
Same flat. Five portals. Three prices.
Duplicates across portals and agencies inflate supply and break every average you compute.
A snapshot is not a market.
A one-off export can’t tell you price drops or how long a property has been on the market.
Rent is a guess. ROI is a spreadsheet.
Asking price is public. Realistic rent and yield take hours of manual comparables.
Where the data comes from
Open data. Real work on top.
We only use publicly available information — the same listings anyone can see without logging in. What we add is the hard part.
Public sources
- National property portals
- Agency websites
- Government auctions
- Public statistics
Propertium
- One property = one record
- Price history · days on market
- Rental estimate (100+ factors)
- ROI · heatmaps
You
- REST API · webhooks
- CSV / Parquet exports
- Web app · alerts
- Telegram bot
- Public sources only
- No logins, no paywalls bypassed
- Personal data removed on request
Who uses Propertium
Same data. Different jobs.
Proptech teams
Ship your product on our data instead of maintaining parsers.
Funds & family offices
Source deals and back every investment memo with market evidence.
Agencies & brokers
Price with comparables and share client-ready reports in one click.
Private investors
Get alerted when a 6%+ yield property appears — before others do.
Questions & answers
FAQ
Contact
Get in touch.
Questions about the data, coverage or API access? Send us a message — it goes straight to our team.
Prefer to talk directly?