Article body
HVAC is a great trade. But the income isn't always predictable. Summer is great. Winter in colder markets is great. And then there are the other three months where the phone slows down and your techs are looking at open days on the schedule.
Maintenance agreements change that math. An agreement customer shows up on your calendar twice a year guaranteed, spends 2 to 3 times more annually than a one-time caller, and has a lifetime value that's 3 to 5 times higher. You don't have to run ads to find them. You already have them -- they've just never been asked.
Most HVAC owners know they should be selling maintenance plans. Very few have an actual system for doing it consistently. Below is the system: who to pitch, what to include, how to price it, exactly what your tech should say on-site, and the one objection you'll hear every single time -- with a response that works.
TL;DR
- Agreement customers spend 2 to 3x more per year than one-time service customers.
- Target 25% conversion from completed service calls. If you're getting less, the pitch needs work, not the product.
- Price residential plans at $149 to $299 per year (two tune-ups + priority scheduling). The $199 middle tier is where most sign-ups land.
- The best pitch moment is right after you finish a repair call -- not from an email blast three weeks later.
- The #1 objection is "I'll just call when something breaks." There's a script for that, and it closes about half the time.
- A 3-message SMS sequence converts 20 to 30% of dormant customers who haven't booked in 12+ months.
Why agreements are worth building a system around
Here's the thing: HVAC companies with 40% or more of their revenue coming from recurring agreements sell for 6 to 10 times EBITDA when it's time to exit. Demand-only shops -- the ones that wait for the phone to ring -- sell for 2 to 4 times. That's not just an exit multiple story. It means right now, your business runs better with predictable revenue. Easier scheduling, less dependency on ads, less stress when a slow month hits.
The numbers are worth sitting with for a second. If you build 100 agreement customers at an average of $200 per year, that's $20,000 in guaranteed annual income before you answer a single emergency call. For most small HVAC shops, that covers a tech's salary or two months of overhead. That changes how you operate day to day.
Agreement customers also have a 60 to 70% renewal rate when the plan is priced right and the service is solid. So once someone's on a plan, they tend to stay. And because you're in front of their equipment twice a year instead of never, they generate significantly more repair revenue on top of the agreement fee itself.
Step 1
Who to pitch -- and when
The single best time to sell a maintenance agreement is the moment you finish a service call.
Think about it from the homeowner's side. Their AC broke on a hot day. They called you. You fixed it. They're relieved and they're grateful and they're standing there thinking you're a pretty good company. That's your window. Not the email campaign you send next month. Right now, before you load your van and drive away.
The second-best time is when you're already on a tune-up visit. They've already said yes to the service. They're in the mindset of being proactive about their system. The conversation writes itself: "While we're here -- have you thought about getting on a maintenance plan so this doesn't slip off the calendar next year?"
Real talk: most HVAC companies already have the right customer in front of them. They're just not asking.
Step 2
What to include in the plan
Keep it simple. Over-complicated plans slow down the sign-up. The homeowner wants to know two things: what do they get, and what does it cost. The more options you give them, the harder it is to say yes to anything.
A solid residential maintenance agreement covers:
- 2 tune-up visits per year -- spring AC check and fall heat prep
- Priority scheduling -- they get on the calendar before non-members when something breaks
- A repair discount -- 10 to 15% off parts and labor when they do need a repair
- No (or reduced) emergency dispatch fee -- removes a friction point when they call in a panic
That's the core. You can add extras -- filter delivery, an indoor air quality inspection, a longer warranty on parts -- to justify a Premium tier. But don't lead with the extras. Lead with the basics. The homeowner wants peace of mind that they won't get stuck at the bottom of your schedule in August when it's 98 degrees outside.
Step 3
How to price it
Residential sweet spot in 2026: $149 to $299 per year depending on your market and what's included. Easier to think about it monthly: $15 to $25 per month.
At that price point, the "less than a dollar a day" framing closes objections almost on its own. Most homeowners spend more than that on streaming subscriptions they barely use. Framing the price as a daily cost makes a $199/year plan feel like $0.54 per day. Hard to argue with.
If you want to run two or three tiers:
The Standard tier at $199 is usually where most sign-ups land. Price Basic low enough to be an easy yes for hesitant customers, and Premium high enough to feel genuinely premium for the ones who want the full package.
Step 4
The on-site script
Your tech doesn't need to be a salesperson to do this well. They need 40 words and the right moment. Here's the exact script:
"Before I head out -- have you ever thought about putting the house on a maintenance plan? We do a spring tune-up in April and a fall check in October. A lot of our customers do it so they're not calling us in a panic in the middle of summer. It's $199 a year and members get priority scheduling. Want to take care of it today?"
If they say yes: get their email and card on the spot. Don't send a link later. Don't say "I'll have the office follow up." Close it right there, before anyone has time to second-guess it.
If they say "let me think about it": "Totally fine. I'll have someone send you the details." Then make sure the follow-up actually happens within 24 hours. Most "let me think about it" answers become yes responses within a week if someone follows up. They become permanent nos if you wait three weeks.
Step 5
The #1 objection (and how to handle it)
"I'll just call when something breaks."
You'll hear this every day. It makes sense from the homeowner's point of view -- why pay for something now when you can pay for it later, only if needed? The answer isn't to argue. It's to shift the math.
"Totally understand. Here's the thing though -- an emergency call runs $300 to $500 depending on what breaks, and in summer you might wait a few days to get on the schedule. Our members get scheduled first and get 10% off parts and labor when something does need fixing. The plan pays for itself the first time you need a repair. And honestly, most of our members say the spring tune-up alone is worth it because we catch stuff before it becomes a $1,500 fix."
You won't close everyone with this. But about half the people who say "I'll just call when it breaks" will change their mind when you break down the math in plain terms. The ones who still say no go into your follow-up sequence below.
Most contractors never address this objection at all. They just nod and pack up. That's a closed deal walking out the door.
Step 6
The 3-message sequence for past customers
Your customer list has gold in it. People who've used you once and gone quiet -- not because they're unhappy, but because nothing came up and life moved on. These are warm leads, not cold ones. A short SMS sequence is all it takes to bring them back.
SMS open rates run around 98%. Email is around 20%. Don't send a newsletter. Send a text.
Run this sequence in February (before spring rush) or in August (before fall season). Three messages. Short. Direct.
Message 1 -- Send day 1
"Hey [first name] -- it's [Company Name]. Spring is almost here and we want to make sure your AC is ready before the heat hits. We have a maintenance plan a lot of our customers use to skip the emergency calls -- 2 visits a year, priority scheduling, repair discounts. $199/year. Want to lock in a spot before the season fills up? Reply YES and we'll send you the details."
Message 2 -- Send day 7 (no response)
"Hey [first name] -- just following up from last week. We have a few spring slots left for maintenance plan members. $199 gets you two tune-ups and priority service all year. Worth a quick reply if you're interested -- once slots fill we can't guarantee spring timing."
Message 3 -- Send day 14 (final)
"Last message on this -- we're mostly booked for spring. If you want to lock in a maintenance agreement, we can still add you to the fall schedule. $199/year, cancel anytime. Reply YES to set it up."
You'll get most of your responses on message 1. Message 2 catches the people who saw it and meant to reply. Message 3 closes the fence-sitters with a light scarcity angle. Stop after three -- if they haven't responded by then, they're not interested right now, and you've made your point without being annoying.
Bottom line
Maintenance agreements are not just a sales tactic. They're a business model shift. The HVAC companies generating 30 to 50% of their revenue from recurring plans have more predictable income, easier scheduling, and customers who spend significantly more over time than one-time callers. They also sell for a much higher multiple if they ever want to exit.
The system is simple: pitch on-site after every repair call, handle the one objection that matters, and run the 3-message sequence to everyone who's used you in the last 24 months. You don't need a complicated marketing funnel. You need your techs to say 40 words at the end of a service call and someone in the office to follow up within 24 hours on the maybes.
Start with the on-site script this week. If you have 10 service calls scheduled and you pitch 8 of them, you'll probably pick up 2 to 3 agreements. Do that every week and the recurring revenue adds up faster than most owners expect.
The reactivation sequence, maintenance agreement follow-ups, and past-customer SMS campaigns described in this post are the kind of automations that run on autopilot inside the Site + Full System plan. If you'd rather set it up once and have it run in the background, that's what it's built for.
See what's included