A voice agent that triages tenant maintenance calls
A multi-unit residential property manager. · Shipped March 2026.
A multi-unit residential property manager was drowning in "my-sink-is-leaking" calls. We built a voice agent that listens, triages, and dispatches — so humans handle exceptions, not intake.
The situation
Tenants call and text constantly — a dripping faucet, a dim hallway bulb, a thermostat that won't behave. Every call interrupted the PM team, every ticket required manual triage, contractor selection, and cost estimation. Growth was bottlenecked by how many calls a human could field in a day.
What we built
A conversational voice agent (Vapi / Retell) plus a contractor marketplace:
- Phone answers 24/7. Natural conversation collects the issue, severity, and access info.
- Auto-triage. Emergency? Route to the on-call human. Non-emergency? Enter the dispatch flow.
- Contractor matching. Pull from a vetted marketplace scoped to trade and geography.
- Cost estimates in-chat. Model-generated ranges based on prior work orders, approved by a human before they reach the tenant.
- Weekly digest so the owner sees what's been handled without reading every ticket.
The PM team stays on judgment calls — pricing gray areas, unhappy tenants, owner communications. The agent covers the 80% of traffic that is pattern-matching.
Outcome
- About a 30–40% reduction in non-emergency calls reaching the human team.
- Faster contractor dispatch — minutes, not a next-morning callback.
- Auto-generated cost estimates for routine repairs, reviewed before they go out.
What surprised us
Two surprises landed in the first month. First: tenants were too polite. "It's just a small leak" almost always meant "it's been leaking for three days and there's now a stain on the ceiling below." The agent was taking people at their word, which in maintenance triage is the wrong default. We added probing follow-ups about water damage, electrical signs, and gas smells before the severity score got locked in.
Second: contractors started using the AI's cost estimates against the owner. A typical garbage disposal swap quoted at $300; a contractor saw the number on the dispatch and pushed back — "AI says $300, why are you offering me $250?" We took estimates off the contractor-facing dispatch entirely and kept them internal — a sanity check for the PM team, not a public anchor. Operators in this industry will recognize the pattern: every transparent number eventually becomes a negotiation lever.
Where it is today
Currently in production, handling daily tenant call volume for the property manager.