How a 14-Truck HVAC Company Stopped Losing After-Hours Calls to Voicemail
A regional HVAC and plumbing company was missing roughly a third of its after-hours calls. An AI voice agent now answers, qualifies, and books every one of them.
The company had five years of call logs and a hunch. What they didn’t have was proof of how much after-hours business they were actually losing until we pulled the numbers.
The gap in the data
Their phone system logged every missed call but nobody was reviewing it. Once we cross-referenced missed after-hours calls against the ZIP codes of existing customers, the pattern was clear: most of these were not wrong numbers or telemarketers, they were homeowners with an actual plumbing or HVAC problem who called once, got voicemail, and moved on.
What we built
The voice agent runs on the company’s existing phone number, so nothing changed from the customer’s side. It asks the same handful of questions a dispatcher already asks: what’s the issue, is anything actively flooding or completely non-functional, and what’s the address. Genuine emergencies get transferred live to whichever technician is on call that week. Everything else gets offered the next available morning slot and booked straight into the scheduling software the office already uses.
Getting the tone right
The first version sounded too much like a call center script, and a few early callers hung up. We rewrote the prompts around how the company’s actual dispatchers talk on a real call: shorter sentences, less scripted, more “OK, let’s get someone out there” than “I understand your concern.” That single change materially improved how many callers stayed on the line to complete a booking.
Where it landed
Three months after launch, the company was booking 24 more jobs a month than their trailing 12-month after-hours average, without hiring a night dispatcher. The retainer now covers monthly tuning of the triage script as they add new service lines.
Does the AI agent replace the office staff who answer calls during the day?
No. It only picks up calls outside business hours and any overflow during peak call volume. Daytime calls still go to the front desk, which is where most customers still prefer a human.
How does it know the difference between an emergency and something that can wait?
We mapped the same triage questions the company's dispatchers already used, things like whether water is actively leaking or a system is fully down versus just running poorly, and built the routing logic around those answers.
What happens if the caller wants to speak to a real person?
They can ask at any point and the call transfers to the on-call technician's cell phone. That option is offered up front on every call, not hidden behind a menu.