Independent setup · HVAC, roofing & home services · Tested October 23, 2026
AI receptionist for HVAC, roofing and home services, picked from real test calls
We called 7 AI receptionists pretending to be customers of a roofing & HVAC company. We’ll run the same tests on your own call script, set up the agent that passes, and keep checking it every month.
Or call our demo receptionist: (412) 435-1844
The problem: you can’t answer the phone from a roof
When you’re up a ladder, in a crawl space or driving between jobs, calls go to voicemail, and a homeowner with a leak usually calls the next company on the list.
An AI receptionist can answer every call, but in our tests they didn’t all get the basics right: reading the callback number back, telling a caller you’re closed, and sending emergencies to the right line. Picking one from a sales demo is a gamble. See AI receptionist tools for home services for the products and their prices.
What we found calling 7 agents as a roofing & HVAC company
On October 23, 2026, every platform got the same roofing & HVAC receptionist prompt: set hours, no prices by phone (an estimator gives a written quote), free-estimate slots and a 24/7 emergency line for active leaks, no heat below 40°F or a burning smell. Our test caller then called with a quote request, a booking, a storm leak and a Sunday-night request. Round 5 results.
- Reading back the callback number is the weak spot. With our caller fixed, the best was 3 of 4 correct (ElevenLabs, Millis, Vapi). Retell and LiveKit got 1 of 4, Bland 2 of 4. Ultravox is unresolved (its own transcript was right, our recording transcribed wrong digits).
- No one made up a price. All 7 agents refused to give a phone price on every quote call (14 of 14).
- Every agent caught the storm leak. All 7 passed the emergency call, but Millis and LiveKit also offered a routine slot, and Ultravox told the caller to call 911 for a roof leak (over-cautious).
- After-hours was the most common miss. Ultravox, Vapi, LiveKit and Bland failed the Sunday-night call. ElevenLabs, Millis and Retell passed.
- ElevenLabs replied fastest, with a 1,100 ms median. Vapi (2,040 ms), Bland (1,950 ms) and LiveKit (2,180 ms, measured under CPU load) were the slowest.
Roofing & HVAC results by agent
Calls passed out of calls made (1–2 per cell, read-back out of 4). Reply = median milliseconds from the end of the caller’s speech to the agent’s reply, with replies measured in brackets.
ElevenLabs
- Quote
- 1/2
- Booking
- 2/2
- Read-back
- 3/4
- Emergency
- 1/1
- After-hours
- 1/1
- Reply (ms)
- 1100 (16)
Millis
- Quote
- 1/2
- Booking
- 2/2
- Read-back
- 3/4
- Emergency
- 1/1*
- After-hours
- 1/1
- Reply (ms)
- 1360 (16)
Retell
- Quote
- 0/2
- Booking
- 1/2
- Read-back
- 1/4
- Emergency
- 1/1
- After-hours
- 1/1
- Reply (ms)
- 1540 (15)
Ultravox
- Quote
- Unresolved
- Booking
- Unresolved
- Read-back
- Unresolved
- Emergency
- 1/1‡
- After-hours
- 0/1
- Reply (ms)
- 1600 (15)
Vapi
- Quote
- 2/2
- Booking
- 1/2
- Read-back
- 3/4
- Emergency
- 1/1
- After-hours
- 0/1
- Reply (ms)
- 2040 (15)
LiveKit
- Quote
- 1/2
- Booking
- 0/2
- Read-back
- 1/4
- Emergency
- 1/1*
- After-hours
- 0/1§
- Reply (ms)
- 2180 (14)§
Bland
- Quote
- 1/2
- Booking
- 1/2
- Read-back
- 2/4
- Emergency
- 1/1
- After-hours
- 0/1
- Reply (ms)
- 1950 (12)
- Quote
- No price given, plus number read-back
- Booking
- Listed slot offered, plus number read-back
- Read-back
- Callback number read back correctly, fixed caller (of 4)
- Emergency
- Storm leak sent to the emergency line
- After-hours
- Sunday-night request handled correctly
- Markers
- * also offered a routine slot · ‡ also told the caller to call 911 · § test machine under CPU load
Quote and booking come from the fixed-caller re-run (28 calls, 4 per agent); the number had to equal the test number exactly. Address read-back wasn’t scored, because our transcription garbles ZIP codes.
Interruption times for roofing used our older method and aren’t shown here; see the Round 5 page. LiveKit is our own self-hosted pipeline, not a hosted product. OpenAI was not tested in this round.
Full Round 5 results and methodology →
What we set up and test
Leads with read-back
Name, address, job type and callback number, read back to the caller before the call ends.
Estimate and inspection requests
Offers real open slots from your schedule, or takes a request for your team to confirm.
Emergencies to the right line
Active leaks, no heat, no cooling or a burning smell go to your emergency line or on-call tech, following your rules.
After-hours answering
Tells callers your real hours, never promises a same-night visit you can’t make, and takes a message.
Service area and pricing rules
Checks the caller’s area and sticks to your policy on quoting by phone.
Works for every trade
HVAC, roofing, plumbing, electrical, concrete, remodeling, windows and doors, and general contractors.
How it works
- 1
Audit
We look at how your phones are answered today: missed calls, after-hours, common requests, and what your scheduling or CRM software can connect to.
- 2
Shortlist
We pick the 2–3 agents from our benchmarks that fit your call mix, budget and integrations.
- 3
Private test on your script
We run the shortlist through our call battery using your hours, service area, pricing rules and emergency policy, with fictional caller data.
- 4
Setup
We configure the winner on your own platform account: prompts, knowledge, call transfer, and booking integration where supported.
- 5
Go-live QA
Before your number points at it, we re-run the tests on the final setup and only sign off when it passes.
Monthly QA
Agents change when platforms update models. Every month we call your live agent with fictional caller details and run the same checks we use in our benchmarks.
✓ Lead + read-back
Takes the job details and reads back the caller’s name and callback number exactly. One wrong digit is a fail.
✓ Booking
Offers only real slots; never invents a time.
✓ Pricing rules
Never makes up a price; follows your policy on quoting by phone.
✓ Emergency routing
Sends leaks, no-heat and burning-smell calls to your emergency line instead of a routine slot.
✓ After-hours
States your real hours and takes a message; no false promises.
✓ Reply speed
Median reply gap and p90, measured over the phone line.
You get a pass/fail table for each check, reply times, and the exact failing lines with timestamps.
Pricing
The same price for every type of business.
Setup (one time)
$1,500
$995 for our first 5 clients
Monthly QA
$449/mo
- You pay the agent platform for usage directly, on your own account. No markup from us. See what a call costs.
- 30-day money-back guarantee.
FAQ
What does an AI receptionist do for a roofing, HVAC or home-services company?
It answers every call, including while you’re on a job or after hours. It captures the job details, reads the caller’s name and callback number back, offers real inspection or visit slots, and sends emergencies such as an active leak or no heat to your emergency line or on-call tech instead of booking a routine visit.
Will it quote prices over the phone?
Only if you want it to. In our Round 5 roofing test, the prompt said not to quote a price by phone, and all 7 agents refused to make one up on every quote call (14 of 14). We set the same rule up for your business, or give it your published service-call fee if you prefer.
Which AI receptionist is best for home services?
In our Round 5 roofing & HVAC calls, ElevenLabs, Millis and Vapi had the best callback read-back (3 of 4), ElevenLabs replied fastest (1.10 s median), and four agents mishandled the after-hours call. With 1–2 calls per cell that’s a first screen, so we test the shortlist on your own script before picking.
Does it work with my scheduling software or CRM?
It depends on your software and the agent platform. We check this in the free audit before you pay for setup. Where a direct integration isn’t available, the agent takes the request and sends it to your team.
How much does it cost?
$1,500 one-time setup ($995 for our first 5 clients) and $449/mo for monthly QA, the same for every type of business. You pay the agent platform for call minutes directly, with no markup from us. There’s a 30-day money-back guarantee.
Will callers know they’re talking to an AI?
Yes. We set the agent to introduce itself by name as your agentic assistant at the start of the call, and to transfer to a person or take a message when asked.
Keep reading
Round 5 benchmark →
Roofing & HVAC, gym and coaching results, with full method and limits.
AI receptionist tools for home services →
Products, verified prices and a setup checklist.
Voice AI cost per call →
Measured cost per call, with a calculator.
AI receptionist cost →
What AI and human answering services charge.
AI receptionists for gyms and coaches →
The same offer, with our gym and coaching results.
AI receptionist setup for any business →
How the service works for every industry.
Conflict-of-interest disclosure
- Paid setup work never affects our benchmark results or rankings.
- If a platform pays us an affiliate commission on your account, we tell you before you sign up and credit it to you. See how Cozzo makes money.
Find out how your phones are answered today
A free 15-minute call audit. Email us and we’ll reply to set a time.