HVAC Maintenance Plans: How to Build Recurring Revenue That Actually Makes Money
What to charge, what to include, why most plans quietly lose money on the visit — and how to run renewals and tune-up season without burying your office.
This page contains affiliate links. If you click through and sign up for a tool, we may earn a commission at no cost to you. Affiliate relationships do not influence our rankings. How we review.
Every consultant in this trade will tell you to sell maintenance agreements, and they are right — but almost none of them tell you the part that matters: a maintenance plan priced wrong is a subscription you pay your customer. Two visits a year at 75 minutes of loaded labor each, plus a filter, plus a 15% discount on every repair, against $179 a year in revenue is not recurring revenue. It is a recurring loss with a nice name on it.
The plans that build real enterprise value do three things at once. They cover their own delivery cost, they pull repair and replacement work forward out of the customer base you already own, and they renew on a card without anyone in your office making a phone call. Miss any one of those and the program stalls — usually in year two, when the renewals come due and nobody has time to chase them.
This guide walks the whole thing: what to charge, what to include, the per-visit margin math most shops never run, where plans actually get sold, the renewal rate that separates a real program from a list of expired agreements, and how to schedule two tune-up rushes a year without drowning the office. The numbers here are ranges from typical residential shops — run yours before you set a price.
Key takeaways
- →Price to cover delivery: two visits at 1.25–1.75 loaded hours each plus materials costs $120–$285 a year, so a $179 plan is often underwater before any repair discount — most markets bear $200–$279.
- →Bill monthly on a card, not annually by invoice. Auto-pay removes the renewal decision and commonly moves retention 15–25 points, which beats anything you can do to improve the visit itself.
- →Plans are sold by technicians at the end of a repair or install, not by the office — trained shops convert 25–40% of eligible calls, untrained shops convert single digits on the same customer base.
- →Renewal rate is the number that matters: under 70% is a leaking bucket, 70–85% is a working program, and above 85% the base compounds on its own.
- →Keep the repair discount at 10–15%. A 20% member discount can hand back more than the entire plan fee on a shop with real repair volume.
- →Undelivered visits are the quiet killer of renewals — track scheduled versus delivered every month, and pull demand into February and August so tune-up season does not collapse into eight-week peaks.
- →Automate the season: recurring visit generation in your FSM, database outreach for due and overdue members, an AI receptionist to absorb routine tune-up scheduling calls, and a review request after every visit.
What a maintenance agreement is actually worth to you
The plan fee is the least interesting revenue in the program. A 400-agreement base at $200 a year is $80,000 — real money, but not why you do this. You do it because a plan member is a customer who has already agreed to let you inside their house twice a year, and who calls you first when something breaks instead of typing "AC repair near me" into Google. Shops that track it usually find plan members generate two to three times the annual revenue of a comparable non-member once repairs, accessories, and replacements are counted.
The bigger lever is equipment replacement. A tech standing in front of a 16-year-old condenser twice a year, documenting declining capacity with photos, is the cheapest replacement lead source in your business — no ad spend, no lead fee, and a customer who already knows the tech's name. In shops with a mature agreement base, a substantial share of replacement sales come out of the member list rather than from new leads, which is exactly why the members are worth more than the fee suggests.
And it smooths the calendar. HVAC demand is brutally seasonal — the phone rings off the hook in July and goes quiet in October. A tune-up backlog is work you can move into the shoulder months to keep techs billable when there are no emergency calls. That alone is often worth more than the plan fee, because the alternative is paying wages against an empty board.
Finally, it is the one thing a buyer will pay a premium for. When a shop sells, the agreement base is scrutinized line by line — active count, renewal rate, whether the agreements are transferable, and whether unused visits are a liability sitting on the books. A large base with a weak renewal rate gets discounted hard. A smaller base renewing above 85% on auto-pay does not. Even if you never sell, that same distinction is what tells you whether the program is real.
What to charge, and what to actually include
Residential plans in most markets land between $150 and $300 per year for a single system — roughly $13 to $25 a month if you bill monthly, which you should. Two visits per year is the standard: one pre-cooling in spring, one pre-heating in fall. Additional systems in the same house typically add $80 to $150 each, since the drive time is already paid for and the second unit is nearly pure margin.
The inclusions that cost you little and matter a lot to the customer are the ones to lead with: priority scheduling ahead of non-members during a heat wave, no overtime or after-hours diagnostic fee, a standard filter at each visit, and a repair discount. The inclusion that quietly destroys margin is an aggressive repair discount — 20% off parts and labor on a shop doing meaningful repair volume with members can hand back more than the plan fee. Ten to fifteen percent is plenty; customers rarely buy on the discount percentage anyway. They buy on priority and on not thinking about it.
Tier if it fits your market, but keep it to two or three. A basic plan at the low end with the two visits and priority, a mid tier adding the repair discount and a waived diagnostic, and a premium tier with a labor warranty or a replacement credit that accrues. What you are really doing with tiers is giving the customer a reason to choose rather than a reason to decide yes or no — most shops see the middle tier take the majority of sales, which is the point.
Bill monthly on a card, not annually by invoice. The monthly price reads smaller, the cash is smoother, and — the real reason — a card on file makes renewal automatic instead of a phone call somebody has to make. Shops that switch from annual invoicing to monthly auto-pay routinely pick up double-digit points of retention without changing anything else about the program.
The margin math nobody runs before launching
Here is the calculation that decides whether your program makes money, and it takes four minutes. Take your fully loaded technician cost per hour — wage, payroll taxes, benefits, truck, insurance — which in most residential shops is somewhere between $45 and $75. Multiply by the real time a maintenance visit takes including drive: usually 1.25 to 1.75 hours, not the 45 minutes on your task list. That is $56 to $130 per visit, times two visits, plus $10 to $25 in filters and materials. Call it $120 to $285 a year in delivery cost.
Now compare that to a $179 plan. On the low end of cost you are fine; on the high end you are underwater before you have discounted a single repair. This is why so many programs feel like they are not working — they are not. The fee is not covering delivery, and the shop is relying on pull-through revenue it never actually measured to make up the gap.
There are only four ways to fix it, and you need at least two. Raise the price toward the $229 to $279 range, which the market bears far better than most owners believe. Cut real visit time with a tight, checklist-driven maintenance procedure so the visit is 60 to 75 minutes instead of drifting to two hours. Route by geography so members in the same neighborhood are batched into one day instead of scattered across the week — this is where the dispatch time actually goes. And measure pull-through honestly: tag every repair and replacement that originates from a maintenance visit so you know what a member is truly worth.
One accounting note worth getting right early: money collected for visits not yet delivered is deferred revenue, not profit. Shops that book the full annual fee as income in January and then deliver the fall visit in October are borrowing from themselves — it feels great in Q1 and hurts in Q4. Your bookkeeper can set this up in an afternoon, and it keeps you from making a hiring decision on money you have not earned yet.
Where plans actually get sold — and it is not the office
Maintenance agreements are sold at the end of a repair or an install, by the technician, standing in front of the equipment, while the customer is still grateful. That is the moment. Not a postcard, not an email campaign, not the CSR on the phone. A trained tech with a simple offer converts a meaningful share of repair calls — shops that do this well land somewhere in the 25% to 40% range on eligible calls, and shops that do not run in the single digits with the same customer base.
The script is short and it is not a pitch: "I got you running today. The reason this failed is the coil was loaded up — that is what the twice-a-year visit catches. It is $22 a month, you jump the line in July, and you get 15% off repairs. Want me to set it up before I go?" That is the whole thing. It works because it connects the plan to the failure the customer just paid for, which is the only version of the argument that is actually persuasive.
Pay for it, but pay for the right thing. A $25 to $50 spiff per agreement is standard and it works. What does not work is paying only on the sale — that gets you agreements sold to people who cancel in month three. Pay a portion on the sale and a portion at the first renewal, and the incentive suddenly points at selling plans to customers who should have one. Track conversion per technician; the spread between your best and worst tech on this single metric is usually enormous and entirely coachable, which is exactly the kind of gap AI call and job review tools are built to surface.
Install is the other high-conversion moment, and most shops fumble it. A customer who just spent $9,000 on a new system will say yes to protecting it far more often than a customer three years into ownership. Bundle the first year into every replacement quote by default — not as an upsell line the salesperson can skip, but as part of the standard proposal. Then the renewal conversation in year two is with someone who already has the habit.
Renewals and churn: the number that decides everything
Every maintenance program looks great in year one. Year two is where you learn whether you built an asset or a list. The metric is renewal rate, and the benchmarks are unforgiving: below 70% you are filling a leaking bucket and your growth is entirely dependent on how many new agreements the techs sell this month. Between 70% and 85% is a working program. Above 85% — which is achievable, and is where auto-pay shops live — the base compounds on its own and every new agreement is genuinely additive.
The single biggest driver of that number is not service quality. It is whether the renewal requires a decision. An annual invoice forces the customer to re-buy, and a meaningful share simply do not get around to it. A monthly card on file renews silently. That mechanism alone commonly moves retention by fifteen to twenty-five points, which dwarfs anything you will accomplish by improving the visit itself.
The second driver is whether you actually delivered the visits. Unused visits are the quiet killer — the customer paid for two, got one because your fall schedule collapsed under emergency calls, and cancels in the spring. If your undelivered-visit count is climbing, your renewal rate is already falling and you will not see it in the numbers for another six months. Track scheduled-versus-delivered every month, not once a year.
And run a real save process on cancellations. A card decline is not a cancellation — it is an expired card, and it accounts for a surprising share of what shops record as churn. Automated retry plus a text, then a call, recovers most of them. For genuine cancellations, ask why and log it. Three quarters of the reasons will be "we sold the house" or "we replaced the system," and neither of those means your program has a problem — but you cannot know that unless someone is writing it down.
Surviving tune-up season without burying the office
Here is the operational trap. You sell 400 agreements. That is 800 visits a year, and customers want them in the two windows where the weather changes — so 60% to 70% of the demand compresses into roughly eight weeks in spring and eight in fall. Meanwhile those same weeks are when your emergency call volume starts climbing. This is the point where most programs either burn out the office or start silently not delivering visits.
Push the season wider than the customer thinks it is. Start calling for spring tune-ups in February, not April, and for fall in August. Members who book in the shoulder are the easiest to schedule, and every one of them you pull out of the peak is a slot you did not have to fight for. Offer the off-peak slot as the default in your outreach rather than asking an open-ended question about timing.
Then automate the outreach itself, because doing this by hand is a full-time job you are not going to staff. Database marketing tools like Arch mine your own customer list for who is due, who is overdue, and whose equipment age makes them a replacement candidate, then run the campaign automatically. Your field service platform should be generating the visit list — FieldEdge has genuinely strong agreement management, and ServiceTitan, Housecall Pro, and Workiz all handle recurring visit generation and renewal tracking well enough that there is no reason to run this out of a spreadsheet.
Protect the phones during the rush, because the tune-up scheduling calls and the no-cooling emergencies arrive on the same line in the same week. This is where an AI receptionist earns its cost in a maintenance program specifically: routine "I need to book my spring tune-up" calls get handled and booked into the CRM without touching your CSR, while true emergencies route to a human. Numa handles this with native ServiceTitan, Housecall Pro, and Jobber integration at $249 to $379 a month for a typical shop; Rosie covers a solo or two-truck operation from $49 to $199. Either way the goal is the same — your dispatcher spends peak week on the jobs that pay, not on rescheduling filter changes.
Last, close the loop on the visit. A completed tune-up is the single best moment to ask for a Google review — the customer is happy, nothing is broken, and there is no invoice shock. An automated review request after every maintenance visit turns 800 visits a year into a steady review flow that no amount of ad spend buys.
A 90-day plan to launch or fix your program
First 30 days, do the math and set the price. Calculate your loaded labor cost and your real visit duration by timing ten actual maintenance calls door to door. Set the annual price at a number that covers delivery with margin — for most shops that is north of $200 — and build two or three tiers with monthly auto-pay as the default and only payment method you promote. Write the maintenance checklist so the visit is repeatable in 60 to 75 minutes.
Days 30 to 60, build the selling motion. Train every tech on the twenty-second offer, tied to the failure the customer just experienced. Set the spiff to pay half on sale and half at first renewal. Add the first year of the plan to every replacement proposal as a standard line. Configure the agreement in your field service platform so visits generate automatically and renewals are tracked — if you cannot pull an active-count and renewal-rate report on demand, you are not done.
Days 60 to 90, turn on the automation and start measuring. Set up the outreach campaign for due and overdue members, the automated review request after each maintenance visit, and the card-decline retry sequence. Then track five numbers monthly and nothing else: active agreements, agreements sold this month, renewal rate, visits scheduled versus delivered, and revenue pulled through from member visits. Those five will tell you within two quarters whether you built an asset or a list — and unlike almost anything else in this business, you can fix each one directly.
Tools mentioned in this guide
Related guides
Frequently asked questions
Q.How much should I charge for an HVAC maintenance plan?
Most residential markets support $150–$300 per year for a single system, and the right number for you depends on your delivery cost, not on what the shop down the road charges. Run the math: fully loaded technician cost of $45–$75 per hour times the real visit duration of 1.25–1.75 hours including drive, times two visits, plus $10–$25 in filters and materials. That is $120–$285 a year before any repair discount. Price above that with margin — for most shops the answer lands between $200 and $279 — and add $80–$150 for each additional system at the same address, since the drive time is already covered.
Q.Are HVAC maintenance agreements actually profitable?
The plan fee alone is barely profitable and is sometimes a loss. The profit is in what the agreement pulls through: members typically generate two to three times the annual revenue of comparable non-members once repairs, accessories, and replacements are counted, and a mature agreement base becomes the cheapest replacement lead source in the business. The programs that fail are the ones priced below delivery cost that then rely on pull-through nobody measures. Tag every repair and replacement that originates from a maintenance visit so you know the real number.
Q.What should an HVAC maintenance plan include?
Two visits a year — pre-cooling in spring and pre-heating in fall — plus the inclusions that cost you little and sell well: priority scheduling ahead of non-members during peak, no overtime or after-hours diagnostic fee, a standard filter at each visit, and a 10–15% repair discount. Keep the discount in that range. A 20% member discount on a shop with real repair volume can hand back more than the entire plan fee, and customers do not actually buy on the discount percentage — they buy on priority and on not having to think about it.
Q.What is a good renewal rate for HVAC service agreements?
Below 70% means you are refilling a leaking bucket and growth depends entirely on new sales each month. Between 70% and 85% is a functioning program. Above 85% the base compounds on its own, and that is where shops on monthly auto-pay tend to live. The single biggest lever is whether renewal requires a decision — an annual invoice forces the customer to re-buy and many simply do not get around to it, while a card on file renews silently. The second lever is delivering the visits you sold; a rising undelivered-visit count predicts a falling renewal rate about six months out.
Q.How do I get my technicians to sell maintenance plans?
Sell it at the end of a repair or install, tied to the failure the customer just paid for, in about twenty seconds — not as a separate pitch. Trained shops convert 25–40% of eligible calls; untrained shops convert single digits on the same customers. Pay a $25–$50 spiff, but split it: half on the sale and half at the first renewal, so the incentive points at selling plans to customers who should have one rather than to anyone who will say yes. Track conversion per technician — the spread between your best and worst tech is usually large and entirely coachable.
Q.What software do I need to manage HVAC maintenance agreements?
Your field service platform should handle it — FieldEdge has particularly strong agreement management, and ServiceTitan, Housecall Pro, and Workiz all generate recurring visits and track renewals well enough that there is no reason to run this from a spreadsheet. The test is simple: if you cannot pull active agreement count, renewal rate, and visits scheduled versus delivered on demand, the program is not actually configured. Around that, add database marketing to work the due and overdue list automatically, an AI receptionist to absorb routine tune-up scheduling calls during the spring and fall rush, and an automated review request after every maintenance visit.