A property-listings database you own
Collect once, keep every price change, and measure how accurate the matching is.
A working sample we built to show how we would solve a problem like this. It is not a delivered project.
In plain terms
Collect property listings once per area, keep every price change, and never treat a missing listing as a sale. The same home advertised by different agencies is matched up, and the demo measures how often that matching goes wrong. Searching by place takes into account how precisely each location is known.
- Price history is kept, never overwritten.
- A failed collection never causes listings to be marked as gone.
- Duplicate matching is measured, not assumed.
What this does not claim: Everything ran on 535 invented listings from three fictional property websites over a simulated two weeks. No real website was contacted.
What it looks like

A map-style chart of a property search. The blue star is the property being looked at. The search started at 50 metres and widened to 400 metres until it found 30 similar nearby properties. Different symbols show how precisely each neighbour's location is known.
Technical caption
Radius-widening comparable search (50 to 400 m) with per-point coordinate precision (exact / street / zone). Result: 30 comparables, confidence medium.

Two weeks of simulated listing collection. Green bars are new listings, brown are price changes, red are listings that disappeared, and blue are listings that came back. One source returned only part of its data on one day and another failed completely on a later day, and no listings were wrongly marked as removed.
Technical caption
Daily event counts over the 14-day run. portal_b partial fetch and portal_c failed fetch are shaded; the removal logic ignores listings from failed or partial fetches, so they cause no removals.
Technical details
14-day simulated run over 535 listings from three fictional portals: change tracking (new, price change, removed-unconfirmed, reappeared), handling of partial and failed fetches without false removals, cross-agency duplicate matching with measured error, and location search that widens its radius and records coordinate precision (exact / street / zone).
- Python
- matplotlib
Need something like this?
Tell us the problem in your own words. We reply with a plain, practical plan.
Discuss a project like this