Pontus
Natural-language property matching that turns buyer demand into qualified leads and live market intelligence for agencies.

- Role
- Product design, matching architecture, search interface, engineering
- System type
- Property matching agent
- Disciplines
- Intelligence · Design · Engineering
- Technology
- TypeScript, React, Natural-language search, LLM extraction, Ranking, Postgres
Key challenge
Buyers describe homes in wishes and compromises, not filters — the system had to interpret messy human language into structured intent, match honestly, and explain every match it made.
The situation
Estate agencies sat on two disconnected assets: a portfolio of listings and an inbox of buyer enquiries written in loose, human language. Connecting them meant an agent reading every email and holding the whole portfolio in their head.
The problem
Real buyer intent — 'period feel, walkable to the station, we can live with a small garden' — collapses into checkbox filters that miss it. Enquiries went under-matched, buyers disengaged, and agencies had no aggregate view of what their market was asking for.
The constraints
Matches had to be honest: an agent's reputation rides on not wasting a buyer's time. Listing data quality varied between agencies, and the system had to work with what existed rather than demand a data-cleaning project first.
The system
Pontus turns a buyer's natural-language brief into structured intent — hard requirements, soft preferences, and stated trade-offs — then matches it against live listings with an explanation for every result. Aggregated across buyers, the same intent data becomes market intelligence for the agency.
Architecture
A language layer extracts structured intent from free-text briefs, distinguishing must-haves from preferences and capturing stated compromises. Matching scores listings against that full intent profile rather than a filter intersection, and every score decomposes into reasons an agent can read aloud to a client.
Interface
The agent's view pairs the buyer's brief with ranked matches, each annotated with where it fits and where it compromises. A market view aggregates live demand — the neighbourhoods, price bands, and features buyers are actually describing — updated as briefs arrive.
Intelligence
The extraction layer treats ambiguity as signal: when a brief is vague, the system asks rather than assumes. That one behaviour is what makes the matches defensible in front of a client.
Execution
Designed and built the intent extraction, the matching and ranking layer, and both interfaces. Agencies moved from reactive email-matching to a standing pipeline where new stock and new demand meet automatically.
Lessons
The market intelligence view was a byproduct that became a headline feature. Instrumenting intent turned out to be as valuable as matching it.
Outcome
Agencies gained a flow of qualified, intent-rich leads instead of raw enquiries, and a live view of what buyers in their market actually want — intelligence that shapes how they source and price stock.
Architectural insight
Matching is a conversation about trade-offs, not a filter query — the system that understands 'close to the station matters more than the garden' wins the one that just counts bedrooms.