Somewhere in your business right now, probably in an old spreadsheet, a dusty CRM, or a shoebox of invoices, sits a list of people who have already paid you money. They know your name. They know your work. They picked you once over every competitor in town.
And most service businesses treat that list like it doesn't exist. They spend real money chasing strangers through ads and lead services while hundreds of people who already trust them hear nothing, year after year, until they forget you exist and call whoever shows up first on Google.
Reaching back out to past customers is the cheapest revenue available to almost any service business. Not because of some clever growth hack, but because every hard part of selling, awareness, trust, proof, is already done. The only thing missing is contact.
This post covers how to do it without sounding desperate, without annoying people, and without crossing legal lines.
Why past customers are worth more than new leads
Run the comparison honestly:
- A new lead has never heard of you, is probably comparing three companies, needs to be convinced you're legit, and may haggle on price because they have nothing else to judge you on.
- A past customer already let you into their home or business, saw the quality of the work, and has a relationship with the outcome. The water heater you installed. The roof that didn't leak. The lawn that looked right all summer.
The cost difference is just as stark. A new lead from ads or a lead service might cost you anywhere from a few dollars to a few hundred dollars, before you've won the job. An email or text to a past customer costs essentially nothing. Even a printed postcard costs under a dollar.
And service businesses have a structural advantage here that retail doesn't: most of what you do recurs. HVAC systems need seasonal service. Gutters fill up every fall. Carpets get dirty again. Trees keep growing. Houses need pressure washing on a cycle. Your past customer isn't done buying what you sell; they're just not thinking about it until something forces them to. Your job is to be the thing that reminds them before the emergency does.
First, clean the list
Before you send anything, spend an afternoon on list hygiene. A messy list produces embarrassing messages, and embarrassing messages burn trust you can't easily rebuild.
Pull everything into one place
Export customers from your invoicing software, your field service platform, your email, wherever they live. One spreadsheet or one CRM. If you're running Jobber or a similar platform, you may already have this; the export takes minutes.
Deduplicate
The same customer often exists three times: once as "Bob Smith," once as "Robert Smith," once as "bsmith@gmail.com" with no name. Merge them. Nothing says "we don't really know you" like getting the same message three times with three different greetings.
Segment by recency and job type
You don't need anything fancy. Three buckets work:
- Recent (served in the last 12 months): these people remember you clearly. Light touch.
- Lapsed (1 to 3 years): the sweet spot for win-back. They liked you, then life moved on.
- Cold (3+ years): worth one careful attempt, then let the non-responders go.
Tag the type of work too, because "time for your AC tune-up" lands very differently than a generic "we miss you."
Remove the ones you shouldn't contact
People who asked to be left alone. People you had disputes with. People who've moved (returned mail and bounced emails tell you). And anyone who previously unsubscribed from your emails, full stop. The FTC's guidance on the CAN-SPAM Act is clear that opt-outs must be honored, and for text messages the consent rules are stricter than email. When in doubt about texting old contacts, use email or mail instead. The job you might win is not worth the complaint.
Verify the basics
Sort the list and skim it. You're looking for obvious garbage: phone numbers with nine digits, emails with typos, addresses in cities you don't serve anymore. Ten percent of your effort here saves you from looking sloppy to the very people you're trying to impress.
Writing win-back messages that don't grovel
Here's where most reactivation campaigns die. Owners either send something so bland it's invisible ("Just checking in!") or something so needy it's uncomfortable ("We noticed you haven't used us in a while and we'd love to win back your business...").
Both fail for the same reason: they're about you. A good win-back message is about the customer's situation, and it reads like a competent professional being useful, not a jilted vendor asking what went wrong.
The structure that works
- A reason for contacting them now. Season, anniversary of the work, a relevant date. "It's been two years since we installed your water heater" or "First freeze is usually mid-November around here."
- One specific, useful point. A maintenance reality, a thing that commonly fails, a deadline that matters. Teach them something in one sentence.
- A simple, low-pressure next step. "Want us to come take a look? Reply to this email or book online." One ask. Not three.
Examples by tone
The seasonal nudge (HVAC, lawn, exterior):
"Hi Sarah, it's Mike from Coastal Air. We did your AC install back in 2024. Quick heads up: this is the time of year we recommend a tune-up before summer load hits, especially for systems near the coast. If you'd like us to come out, you can book a time here or just reply. Either way, hope the system's treating you well."
The anniversary check (one-time jobs with follow-on needs):
"Hi Tom, it's Dana from Riverside Roofing. It's been about three years since we replaced your roof, which is usually when we suggest a quick inspection, mostly checking flashing and any storm wear. It's a 20-minute visit. Want me to put you on the schedule?"
The honest reactivation (genuinely lapsed customers):
"Hi Linda, it's Joe from GreenLine Landscaping. We took care of your property a couple of years back and I realized we never followed up, which is on me. If you're happy with whoever you're using now, no worries at all. If you're not, or if you've got a project coming up, we'd be glad to quote it."
Notice what none of these do: no fake urgency, no discount-led begging, no "we've missed you!" theater. Discounts can work as a component ("we're offering returning customers $40 off spring tune-ups this month"), but a discount as the entire message signals that price was the only thing you had to offer.
What to never send
- "Just checking in." Checking in on what? Give a reason or don't send it.
- Anything that guesses why they left. "We're sorry if we let you down" invents a problem that probably never existed. Most lapsed customers didn't leave; they just stopped thinking about you.
- Walls of text. Three to five sentences. They're reading on a phone.
- A different voice than your business. If you're a two-truck operation, don't suddenly sound like a corporate newsletter. Sign it with a real name.
The cadence: how often and how long
For a win-back campaign, restraint is the strategy:
- Message 1: the main note above.
- Message 2, about a week later, non-responders only: shorter, references the first. "Hi Sarah, following up on my note last week about the spring tune-up. The schedule's filling up for May; want me to hold you a spot?"
- Message 3, optional, two weeks later: a final, graceful close. "Last note from me on this. If timing's bad, no problem, we'll be here when you need us."
Then stop. Move responders into your normal customer flow, and put non-responders on a low-frequency list: a seasonal reminder two to four times a year, which is useful service, not pestering. Anyone who unsubscribes comes off everything immediately.
If you have follow-up automation already (we've covered automated follow-up sequences in detail), reactivation is just another sequence in the same system, triggered by "last job date older than X" instead of "new lead."
Make the destination worth arriving at
One quiet killer of win-back campaigns: the customer gets your nice message, decides to act, clicks through, and lands on a website that looks abandoned. Copyright 2019 in the footer. A phone number that rings to nothing. No way to book.
Before you send a thousand emails pointing people at your website, make sure the website closes the deal: current info, working contact form, online booking if you have it, and recent reviews visible. The same goes for your Google Business Profile, because a chunk of recipients will Google you instead of clicking your link, and what they find needs to match the competent professional who just emailed them. If your site is the weak link in that chain, that's a fixable problem; our website and SEO service exists for exactly this.
A realistic expectation
Don't expect half your old list to come running back. A win-back campaign that gets a small percentage of lapsed customers to book is a success, because the math is so lopsided: the list cost you nothing, the messages cost you almost nothing, and every job that comes back is revenue you were otherwise never going to see. Run it twice a year, tied to your seasons, and it compounds, because each round also updates your list and reminds the silent majority that you're still around. For businesses in seasonal trades like HVAC or cleaning and restoration, the seasonal timing does half the persuading for you.
The businesses that grow steadily aren't usually the ones with the cleverest ads. They're the ones that never let a past customer fully forget them.
Want help putting this to work?
We build done-with-you websites for service businesses, live on a call with you, first draft in 24 hours, live in 7 days guaranteed. Our Max tier connects your website and AI receptionist to Jobber, ServiceTitan, or GoHighLevel, so your customer list, your follow-up, and your reactivation campaigns all run from one system instead of a shoebox. Tiers start at $500, with pay-in-4 and Klarna available.
We're veteran-owned, based in Wilmington, NC, with 1,500+ small business sites built in the last 90 days. Book a call or see pricing.
