How to Get Repeat Customers in a Plumbing/HVAC Business
New customers cost you marketing dollars. Past customers cost you a text message. This is the system that turns one-time service calls into a customer list that books itself — maintenance agreements, annual check-ins, and the retention math that makes it worth building.
System 7 from the Leveraged Owner Starter Pack
Think about the last water heater you replaced. That customer will need another plumber someday — a leak, a remodel, a drain problem at 9pm. The question isn't whether they'll call someone. It's whether they'll remember your name or Google "plumber near me" and hire whoever's ad is on top. Right now, for most shops, the answer is the ad. That's the leak this system plugs.
This guide is part of Pillar D: The Full & Calm Calendar — the systems that keep your schedule full without you chasing it. If appointment confirmations and no-show recovery are also a problem, start with the appointment confirmation text system, then come back here.
The retention math: why this is your cheapest growth
There's no single QA-clean statistic for "repeat customers cost X% less" that survives scrutiny, so let's do it with your own numbers — that's more honest anyway:
- Cost of a new customer: your monthly marketing spend ÷ jobs booked from new customers. Most 1–5 truck shops land somewhere in the low hundreds per new customer.
- Cost of a repeat customer: one automated text + the 10 minutes to answer their reply. Effectively near zero.
- The gap: every job booked from your past-customer list is a job you didn't have to buy from Google or Facebook.
The retention economics are simple: a plumbing or HVAC customer who used you once is the easiest sale you'll ever make — they already trust your truck in their driveway. The only reason they don't call you again is that you went silent. Repeat business isn't a loyalty problem. It's a staying-in-touch problem, and staying in touch is exactly what systems are for.
Layer 1: Maintenance agreements (the revenue you schedule once and earn twice a year)
Maintenance agreements — the annual plan where a customer pays upfront (or monthly) for their spring AC tune-up and fall furnace check — are the single best repeat-customer tool a plumbing or HVAC shop can own. Not because of the agreement revenue itself, but because of what comes with it:
- Two guaranteed touchpoints a year. Every visit is a chance to spot the aging capacitor, the rusting flue, the slow drain — and book the repair while you're already in the house.
- The visit reveals replacements. Most system replacements get sold during a tune-up, not during an emergency call. The agreement buys you the visit.
- Shoulder-season capacity. Agreement customers are flexible — you can schedule their tune-ups in the slow weeks between seasons, smoothing your calendar.
The pitch doesn't need to be a sales presentation. It needs to be a one-sentence offer your tech makes on every visit. Here's the script:
The tech's agreement pitch (say it on every visit)
"Before I head out — we do a [Business Name] Comfort Plan. It's $[amount] a year, and you get your AC tune-up in spring and furnace check in fall, plus [discount]% off any repairs and priority scheduling if something breaks. Most of our regulars are on it so they don't have to think about it. Want me to sign you up?"
Three rules make this work:
- Every visit, every tech, same sentence. The conversion happens on repetition across your whole customer base, not on any one charismatic tech. Put the script in the work order notes so techs see it.
- Price it to be a no-brainer. The agreement should feel like a discount on two tune-ups plus a bonus — not a profit center on its own. The profit is the repair and replacement work it surfaces.
- Auto-renew, easy cancel. Agreements that require the customer to remember to renew die. Agreements that renew automatically with a reminder text keep your list alive.
Layer 2: The annual check-in sequence (for everyone not on an agreement)
Most of your past customers won't buy an agreement. They still want to hear from you — once a year, with something useful. The annual check-in sequence is two messages, timed to the season, sent to every past customer who isn't on an agreement:
Plumbing version (send early spring)
Hi [First Name], this is [Your Name] from [Business Name]. Spring's coming — quick reminder that we do annual plumbing checkups (water heater flush, shutoff valve check, hose bibbs) so small stuff doesn't become a flooded basement in July. Reply PLUMBING if you want me to grab you a spot. — [Business Name]
HVAC version (send 4–6 weeks before peak season)
Hi [First Name], this is [Your Name] from [Business Name]. We serviced your system on [Last Service Date] — heads up that tune-up season is here and our schedule fills up before the first [heat wave/cold snap]. Reply TUNEUP and I'll get you on the calendar. — [Business Name]
Why it works: it's personal (their name, their last service date), it's useful (a genuine reminder, not a coupon blast), and it has a one-word reply. The one-word reply matters — it makes the customer's response take three seconds, and their reply is consent to the conversation that follows.
Layer 3: The "we haven't seen you" win-back
For customers who haven't booked anything in 18+ months, the check-in isn't a tune-up reminder — it's a reintroduction. You're not asking for work. You're reminding them you exist:
Hi [First Name], this is [Your Name] from [Business Name] — we [installed your water heater / serviced your AC] back in [Year]. Just checking in: everything running okay? If anything's acting up, you know where to find us. Reply anytime. — [Business Name]
No offer. No discount. No pressure. Customers who've been meaning to call you about that slow drain will reply to this message — and customers who moved or found another shop will tell you or opt out, which cleans your list for free.
Compliance: texting past customers has rules
Repeat-customer texts are business texts, so the compliance rules from the rest of this series apply in full:
- 10DLC business-texting registration is required before sending business texts from a standard 10-digit number (1–7 day approval, ~$15–$20 one-time in carrier/campaign fees). Don't run campaigns before approval — filtered texts look like silence.
- Consent matters most for marketing texts. Service messages (appointment reminders, job updates) have a different consent picture than promotional campaigns. Annual check-in campaigns are promotional in nature — only text customers who've given you permission to message them (a service request, a signed agreement, an opt-in at booking all count as prior relationship contact). When in doubt, include opt-out language ("Reply STOP to opt out") and keep it easy.
- TCPA (federal telemarketing law) quiet hours: no marketing texts before 8am or after 9pm in the recipient's local time. Schedule your campaigns inside business hours.
- Honor opt-outs instantly. Every "STOP" is law, not a suggestion. Your texting tool handles this automatically — make sure the feature is on.
This is general information, not legal advice. The upside: a clean, consent-based list outperforms a bought or scraped list every time, so compliance and results point the same direction.
The install order (do this in one week)
- Day 1–2: Pull your customer list from your field-service software (field service management software — Jobber, Housecall Pro, ServiceTitan, whatever runs your scheduling) or your CRM. Sort by last service date.
- Day 3: Write your agreement terms (two tune-ups, discount %, priority scheduling, price) and give your techs the pitch script. Start offering it on every visit today — don't wait for printed brochures.
- Day 4: Load the annual check-in messages into your texting tool. Segment: agreement customers (exclude — they're already covered), customers served in the last 18 months (seasonal check-in), customers older than 18 months (win-back).
- Day 5: Send the first batch to a small test group (50–100 contacts). Confirm replies land in your inbox and your booking flow works.
- Ongoing: Agreement pitches happen on every visit forever. Check-in campaigns run twice a year per customer. Win-backs run quarterly for the 18-months-quiet segment.
The mistake that kills all of this
Sending the campaign and then taking two days to answer the replies. A past customer who replies "TUNEUP" on Monday and hears back Wednesday has already called someone else — and you've now trained them that your texts don't get answered. The follow-up system from missed-call text-back and the response-speed discipline from the speed-to-lead series apply to repeat customers too: reply within minutes, every time. The system that captures new leads is the same system that captures the ones coming back.
Related guides in this series
Repeat customers are half of a full calendar — the other half is never losing new ones, which is Pillar A's job. Read the complete missed-call text-back guide for the new-lead side, and the referral request system to turn each repeat visit into two customers. For the agreement economics in detail, see the HVAC maintenance agreement pricing post.
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.
See everything inside the AI Automation Starter Pack ($27, one-time) here: https://leveragedowner.com/starter-pack/
The done-for-you version
This post is System 7 from the Leveraged Owner Starter Pack — the done-for-you version with the full customer reactivation setup guide, every script (annual check-ins, win-backs, agreement pitches), the list-segmentation worksheet, and complete setup guides for all 8 systems.
No industry statistics were used in this post. The retention math uses your own numbers — worked examples are illustrative, never presented as real customer results.
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: dead-lead reactivation for HVAC.