Missed-Call Text-Back for HVAC Companies: The Exact Setup

The generic setup works — this is the HVAC-tuned version. Dispatch integration so texts become booked calls, seasonal surge handling for the first heat wave, and replacement-lead scripts that sort repair from replace.

System 1 from the Leveraged Owner Starter Pack

First 95-degree day of summer. Your phone rings 40 times before noon — no-cool calls stacking up faster than your two techs can run them. You miss half the calls. By evening, half those callers hired someone else, and the other half are still waiting for a callback that now feels like an apology. The heat wave made you money and cost you money in the same day.

This is the HVAC-specific build of Pillar A: Capture Every Lead. The base system — tools, 10DLC compliance, the 11-step setup guide — is the complete missed-call text-back guide. Read that first if you haven't set anything up yet; this post is the HVAC layer on top of it.

What changes for HVAC (vs. the generic setup)

Missed-call text-back works for every trade, but HVAC has three quirks the generic scripts don't handle:

  • Seasonal surges are extreme. No other trade goes from 5 calls a day to 40 in a single weather event. Your text-back has to handle volume spikes without you touching it.
  • Repair vs. replace is a triage question. A no-cool call on a 20-year-old system and a no-cool call on a 3-year-old system are different jobs with different values. Your text-back should sort them early.
  • Dispatch is the bottleneck, not the phone. Capturing the lead is step one; the HVAC-specific win is getting the text conversation into your dispatch flow so it becomes a scheduled call, not a thread you answer at 9pm.

Script 1: Business-hours HVAC text-back

The HVAC version asks one extra question the generic script doesn't: how old is the system? That single answer tells you whether you're dispatching a repair or quoting a replacement — and it tells the customer you're a professional who thinks in systems, not just service calls.

Hi, this is [Business Name] — sorry we missed your call, we're on jobs right now. Quick questions so we can get you taken care of: what's going on (no heat / no cool / something else), and how old is your system? Reply here and we'll get you scheduled today. — [Your Name]

Script 2: After-hours HVAC text-back (with the triage line)

HVAC after-hours calls split into two buckets: genuine discomfort emergencies (elderly customer, no heat in January, no AC with a newborn in July) and everything else. The triage line sorts them:

Hi, this is [Business Name] — sorry we missed you, we're closed right now. If you have NO HEAT or NO COOL and it's urgent (elderly, infant, medical needs in the home), reply URGENT and our on-call tech will contact you. Otherwise reply with what's going on + your system's age and we'll call first thing in the morning. Reply STOP to opt out.

The specificity matters: "elderly, infant, medical needs" gives the caller a concrete test instead of asking them to judge their own emergency. It also reduces false URGENT replies — most people won't claim a medical need to jump the line, but they will reply URGENT to a vague "is this an emergency?"

Script 3: The replacement-lead sorter

When the reply says the system is 12+ years old, don't book a diagnostic — book a consultation. The language shift matters: a diagnostic is a $99 visit; a consultation is the first step of a $10,000 decision. Send this as your second message in the thread:

Thanks, [First Name]. At [age] years, that's past the typical lifespan — repairs get expensive fast at this point. We do free replacement consultations where we look at the whole system and give you repair-vs.-replace numbers side by side, no pressure. Want me to get you on the schedule for one? — [Your Name], [Business Name]

This is where the text-back earns its keep for HVAC: it's not just capturing the lead, it's qualifying it into your highest-value job type before you've spent a minute on the phone.

Seasonal surge handling: the heat-wave mode

Here's the scenario that breaks most setups: the first heat wave hits, call volume 8x's, and your text-back is sending "we'll get you scheduled today" to 40 people when you have 12 slots. The fix is a surge variant you switch on manually when the phones melt:

Hi, this is [Business Name] — we're slammed with no-cool calls today (first heat wave!). We're booking [X] days out right now. Reply with your name, address, and what's going on and we'll get you in the queue in order — agreement customers get priority. Reply STOP to opt out.

Three things this does: it sets honest expectations (no "today" promise you can't keep), it creates urgency to reply now rather than call around (the queue is filling), and it quietly sells your maintenance agreement ("agreement customers get priority" — the best time to sell priority is when priority matters). Switch back to the normal script when the surge passes. One toggle, twice a year.

Dispatch integration: texts become scheduled calls

The capture is useless if the text thread dies in your pocket. Wire it into dispatch with this routine:

  • One inbox, checked on a schedule. Whoever runs dispatch checks the text inbox every 30 minutes during business hours — same as they'd check the phones. Not "when they get a chance." On a schedule.
  • The 3-field handoff. Every text conversation that needs a visit gets three fields into your field-service software (field service management — Jobber, Housecall Pro, ServiceTitan): name, address, issue + system age. No more, no less. If dispatch has those three, they can schedule.
  • Owner notification stays on. Every missed call texts you the caller's number. During a surge, that's your real-time volume gauge — 10 notifications by 9am tells you to call in the part-timer before noon.
  • End-of-day sweep. Last dispatch task of the day: every open text thread gets either a scheduled appointment or a "we'll call you at [time] tomorrow" message. No thread goes to bed unresolved.

Compliance note

Standard business-texting rules: 10DLC business-texting registration before sending (1–7 day approval, ~$15–$20 in carrier/campaign fees), opt-out language in automated texts, TCPA (federal telemarketing law) quiet hours (no marketing texts before 8am / after 9pm recipient local time). The surge script is fine to send to inbound missed-callers — they called you first. General information, not legal advice.

The numbers that justify it (attributed honestly)

27%

of inbound calls to home-service businesses go unanswered (Invoca call-analytics research) — and HVAC surge days are far worse than average.

21x

more likely to qualify a lead when responding within 5 minutes (MIT/Oldroyd, HBR 2011) — which is exactly what the auto-text does while you're on a roof.

Related guides in this series

The foundation is the complete missed-call text-back guide (Pillar A) — set that up first. For the roofer's version, see the roofer's storm-season setup. For what happens after the surge, read the summer maintenance reminder campaign.

Get System 1 free: the complete Missed-Call Safety Net

The full setup guide, all four copy-paste scripts (including the owner notification), the "Your Numbers" missed-call worksheet, and the step-by-step setup guide — free, no catch. Fix your missed calls this week.

Get the AI Automation Starter Pack — $27, one-time: https://leveragedowner.com/starter-pack/

The done-for-you version

This post is System 1 from the Leveraged Owner Starter Pack — the done-for-you version with the full 11-step setup guide, every script (including all trade-specific variants), the worksheets, and complete setup guides for all 8 systems.

Stats sourced as labeled: Invoca call-analytics research (27% unanswered); MIT/Oldroyd, HBR 2011 (21x qualification lift within 5 minutes).

Run a HVAC business? This system has a version written for your trade, with the examples and scripts tuned to how HVAC work actually runs: missed-call text-back for HVAC.

Keep building your systems

Related guides from the Leveraged Owner blog: