An AI concierge for real estate — what running one in production taught us
A California coastal platform let an AI advisor sit on its own listings. Real buyers, real inventory, real after-hours traffic — and the lessons that only show up in production.
A California coastal listings platform — Anonymized by agreement — real buyers, real inventory, live in production.
The 9pm problem
On a coastal listings platform, the most valuable inquiries arrive when nobody is awake — evenings, weekends, the first hours of a new listing. The brand's promise was a private advisor; its surface behaved like a database: filters, grids, a form. High-intent buyers arrived, asked questions, and waited until business hours. Sometimes they didn't wait.
- The most valuable demand arrives outside business hours
- The advisory promise stopped at the copy — the surface was a database
- That gap became a build spec
What went live
A conversational advisor on the platform's own listings — not a chatbot bolted on, not a demo on toy data.
- Streaming dialogue with live property cards — matched homes appear in the conversation; a detail drawer and a voice guide follow the same thread
- Two lanes, by design — a fast hosted model streams the conversation, a separate lane parses intent; they fail independently
- Honest degradation — if a provider key is missing, the surface says so; no silent wrongness
- Media that paces itself — first paint is a 76-byte inline placeholder that owes the network nothing; image rungs climb 960w → 1920w, video loads when the browser is idle, data-saver devices stop at the poster
- A measured floor — live production Lighthouse, median-of-3: 96 performance · 96 accessibility · 100 best practices · 100 SEO
What production taught us
Five things that only show up when real buyers and real inventory meet the system.
The numbers
Measured on the live production surface, not in a lab.
| Measure | Before | In production |
|---|---|---|
| First-paint media payload | 40.5MB master in the critical path | 76 bytes inline; the ladder climbs after |
| Hero video weight | 40.5MB | 6.8–18.6MB, codec-negotiated by device, SSIM-verified |
| Lighthouse performance | unmeasured (local 66) | 96, live production, median-of-3 |
| Quality gate | none | SSIM law in CI — re-encodes must re-pass |
| Test battery | none | 64 unit/structural + 6 Playwright e2e + Lighthouse floors |
| Client re-theme | CSS sprawl | two token knobs, guarded by tests |
If you run a real-estate platform
The concierge runs on the client's own listings, in production — we do not demo on toy data. The same motion applies to any platform whose search box should be a conversation: answer in the buyer's words, show real inventory, degrade honestly, and measure the floor instead of promising it.
- Fixed scope, fixed price — a named acceptance test closes the engagement
- One workflow live in 30 days, on your data
- You own the code
Running a listings platform? Write us — we reply in writing, with a fixed scope and a fixed price.