More than 70% of dormant customers stop calling not because of price, but because they felt forgotten - and one targeted message can bring them back. Jupiter-Tequesta Air Conditioning, Plumbing & Electric proved it: they sent one email to past customers and pulled in $60,000+ in total campaign revenue.

They didn't run a single ad. They just remembered to talk to the people who already trusted them.

If you have 500 past customers sitting in a spreadsheet or a CRM you barely log into, you are holding the same asset. The only difference is whether you use it.

Why do contractors leave this money on the table?

Most contractors are not ignoring their past-customer list on purpose. They just never built a system to work it.

Robin Cody, Director of Marketing at Cody & Sons Plumbing, Heating & Air in Dallas, said it plainly: "Before, we just didn't have the time or tools to target existing customers." That's most shops.

FieldEdge analyzed contractor customer churn patterns and found that roughly 70% of customers who stop calling don't leave because of price. They leave because they felt forgotten and never heard from you again.

What does reactivation actually cost vs. what you're paying for new leads?

WebFX's 2026 home services marketing benchmarks put the average cost per lead for HVAC and electrical at $100 to $250 per lead through paid ads. That's what you're paying right now to reach someone who has never met you, never seen your truck, never shaken your tech's hand.

Contractor Marketing Pros audited more than 200 HVAC companies and tracked one client who sent a simple "winter prep" email to 2,000 past customers. Total cost: $150. Result: 17 service calls at $285 average each, producing $4,845 in revenue from a $150 spend.

That's a cost per sale of $8.82. Compare that to the $100 to $250 you're paying Google or Angi for a lead that may or may not pick up the phone.

If you want to understand the broader revenue math behind how to scale an HVAC company, the past-customer list is the single most underutilized lever most shops have.

Why segmenting by service type is what makes this work

Here's where most contractors get this wrong. They pull their list, drop everyone into Mailchimp, write one generic "we miss you" subject line, and wonder why open rates are low.

Campaign Monitor's research, cited in Lean Marketing's 2024 analysis, found that segmented campaigns produce 760% more revenue than non-segmented sends. That number is not a typo.

The reason is simple: an HVAC customer who got a tune-up from you last spring does not care about your drain cleaning special. But they will care deeply about a spring AC inspection offer timed to the week before temperatures spike.

The segmentation logic for a contractor list is straightforward:

SegmentTrigger MessageBest Timing
HVACSeasonal tune-up offerMarch (AC) / September (Heat)
PlumbingInspection or pre-freeze pitchOctober / April
ElectricalSafety check / panel inspectionJune / November
Multi-trade"It's been a while" with service menuAny slow season

Those natural touchpoints per year are free revenue sitting on a calendar you already own. If you're thinking about how to sell maintenance agreements as a follow-on product, this is exactly the customer base to pitch - people who already bought from you once.

How do you actually build this without an IT team?

This is a no-code flow. You do not need a developer. You need 3 hours and a CSV export from your CRM.

Step one: pull your customer list and filter by last job date greater than 12 months. If you're on ServiceTitan, Jobber, or Housecall Pro, this is a standard report. Export it as a CSV.

Step two: tag each row by service type based on the job category in your records. HVAC, plumbing, electrical. If your data is messy, do a rough sort by job description keyword - "furnace," "drain," "panel" - and tag manually for the first pass. Workable data beats perfect data every time.

Step three: import into GoHighLevel, Mailchimp, or whatever platform you use, then create separate segments for each trade. Build one email sequence per segment - ideally 2 to 3 touches spaced a week apart. The first message is a soft "we've been thinking about you and the season is changing," the second is a specific offer, and the third is a last-chance or value-add close.

GoHighLevel's Starter plan runs $97/month and handles the automation natively. If you're already on Jobber or ServiceTitan, you may already have email campaign tools included in your plan.

For contractors thinking about how to grow their plumbing business or looking at HVAC growth with service agreements, this reactivation flow is the foundation. You build the list hygiene and segmentation once, then it runs on autopilot every quarter.

See the Full Reactivation Recipe

Get Started

What kind of results should you actually expect?

Lead Care Team, a contractor-specific reactivation service, tracks industry benchmarks at 3 to 8% response rate on well-executed dormant customer campaigns. Of those who respond, roughly 20 to 30% convert to a booked job.

Run the conservative math: 1,000 past customers at 3% response equals 30 contacts. At 25% conversion, that's 7 to 8 booked jobs. At $500 average ticket, that's $3,500 to $4,000 from one campaign.

The aggressive case - 8% response, 30% conversion - produces 24 booked jobs at $500 each, totaling $12,000 from one email sequence to people who already like you.

ServiceTitan has documented that simply having a defined follow-up process in place can recover up to $1 million per year in revenue that HVAC contractors were previously leaving uncollected. That figure comes from their own published case study data across contractor accounts.

For anyone tracking home service KPIs, reactivation rate on dormant customers deserves its own metric on your dashboard. Across dozens of contractor accounts, this number alone can shift monthly revenue by 10 to 20% without adding a single new lead source.

What about compliance - can you get in trouble for emailing or texting past customers?

Email to past customers you have an established business relationship with is lower risk than cold outreach, but you still need to follow CAN-SPAM rules: a clear unsubscribe option, your physical business address in the footer, and no deceptive subject lines. GoHighLevel and ServiceTitan Marketing Pro handle this automatically in their templates.

For SMS, the TCPA (Telephone Consumer Protection Act) applies and non-compliance can cost $500 to $1,500 per unsolicited message. Stick to customers who gave you their number directly and have an existing relationship.

Most platforms will flag or block campaigns that don't include opt-out language. Build your list from your own CRM, never from a purchased contact list.

If you're also thinking about how to reduce no-shows as part of your follow-up infrastructure, a compliant SMS workflow built for reactivation can do double-duty as an appointment reminder system.

Frequently Asked Questions

Won't emailing old customers feel spammy?

Generic blasts feel spammy. Service-specific, seasonally-timed messages feel like your contractor remembered you. When an HVAC customer gets an email about an AC inspection the week before summer, that's relevance, not spam.

Campaign Monitor's data shows segmented campaigns generate 760% more revenue than unsegmented sends, which tells you everything about how much targeting matters.

What if I only have 200 past customers, not 2,000?

The math still works. At 200 customers, even a 5% response rate is 10 contacts, and if 3 of those book at $500 average, you just made $1,500 for 3 hours of setup work you only do once.

The minimum downside is zero - you already have the list. As you grow your HVAC business with service agreements or expand your operation, the list compounds every year.

How do I segment my list if the data is a mess?

Export your CRM as a CSV and filter by last job date greater than 12 months. Sort the job description column and tag by keyword: "furnace" or "AC" goes to HVAC, "drain" or "water heater" goes to plumbing, "panel" or "outlet" goes to electrical.

You don't need clean data to start - you need a workable first pass. Robin Cody at Cody & Sons said setup time dropped from over an hour to 30 minutes once they had the right tool and a repeatable process.

When are the best times to run these campaigns each year?

There are 4 to 6 natural touchpoints annually for most home service contractors. HVAC works best in March for AC tune-ups and September for furnace prep. Plumbing fits October for pre-freeze inspections and April for spring line checks.

Electrical campaigns perform well in June for surge season and November for year-end safety audits. Map your campaigns to those windows and you have a 12-month reactivation calendar that runs itself. For help with how to handle slow seasons, these touchpoints are exactly the fill-in revenue source that smooths out your slow months.

Do I need to buy software I don't already have?

Probably not. If you're on ServiceTitan or Jobber, check whether your plan includes email campaign tools - many tiers do.

If you want full automation with SMS and multi-touch sequences, GoHighLevel's Starter plan is $97/month and handles everything in this flow natively. Mailchimp's free tier works for pure email up to 500 contacts.

Do this today

Log into your CRM right now and pull a report filtered by last job date greater than 12 months. If that list has more than 100 names on it, you have a campaign worth running this week.

For contractors also focused on increasing revenue per technician, pairing this reactivation flow with upsell messaging inside each job sequence can push average ticket values up alongside booking volume. The full automation setup, copy framework, and segmentation logic are in our step-by-step recipe for dormant customer reactivation - 3 hours of setup, and it runs every quarter without you touching it again.