
HVAC Service Agreement Pricing: What to Charge in 2026
A two-visit HVAC service agreement costs most shops between $130 and $165 a year to deliver once you count the tech's time on site, the drive, the truck, the filter and the office time it takes to get the visit on the board. I have sat in enough shops to know that the price on the flyer was set by looking at the competitor across town, and the competitor set his by looking back. Nobody ran the arithmetic.
This article builds the price from the cost of one visit up. By the end you will be able to figure your own cost per visit, find the breakeven on a two-visit plan, set three tiers that hold 50 percent gross profit with labor in cost of goods sold, and put a dollar value on your maintenance base at 500, 1,000 and 2,000 members.
What a maintenance visit really costs
Start with the loaded labor rate. A tech at $29 an hour carries roughly 31 percent on top for payroll tax, workers comp, health insurance, paid time off and training, which puts him at $38 an hour loaded. That is the number that goes in cost of goods sold, and it is the number every plan price has to cover.
Time on site for a real tune-up (coil, capacitor test, amp draws, delta T, drain, filter, a written report the homeowner can read) runs 45 to 75 minutes in the shops I have worked with. Use 60 unless you have time-stamped data from your software. Drive time between maintenance stops is 15 to 30 minutes when the dispatcher zones the day and 40 or more when she does not. Truck cost, fully loaded with fuel, insurance, tires, repairs and depreciation or lease, runs $0.70 to $0.90 a mile for a service van.
| Cost item | Basis | Per visit |
|---|---|---|
| Tech time on site | 60 minutes at $38/hr loaded | $38.00 |
| Drive time | 20 minutes at $38/hr loaded | $12.70 |
| Truck | 11 miles at $0.80/mile | $8.80 |
| Parts allowance | Pleated filter, coil and contact cleaner, consumables | $8.00 |
| Direct cost (in COGS) | $67.50 | |
| CSR and dispatch time | 18 minutes at $26/hr loaded | $7.80 |
| Reminder calls and rescheduling | 12 minutes office time plus text cost | $5.50 |
| Fully loaded cost | $80.80 |
The two lines most owners leave off are CSR and dispatch time (booking, confirming, building the route, closing out the invoice) and the reminder call. A maintenance visit does not book itself. It takes two or three reminder attempts to land one, and about one in three gets rescheduled at least once. That is real payroll. It sits below gross profit as overhead, and it still belongs on the sheet.
Breakeven on a two-visit plan, and why $99 to $129 loses money
Two visits at $67.50 direct cost is $135 a year. That is the breakeven on the visits alone, before a minute of office time, before the repair discount, and before the free diagnostic you promised on the postcard. Add the office cost and the fully loaded breakeven is $161.60.
| Plan price (2 visits) | Direct cost | Gross profit | GP % (labor in COGS) |
|---|---|---|---|
| $99 | $135.00 | -$36.00 | -36% |
| $129 | $135.00 | -$6.00 | -5% |
| $159 | $135.00 | $24.00 | 15% |
| $189 | $135.00 | $54.00 | 29% |
| $279 | $135.00 | $144.00 | 52% |
A $99 or $129 two-visit plan loses money on the visits before the 15 percent repair discount is counted. The owner running it is betting the whole program on repairs found and replacements sold, and he usually has never measured either one. A single-visit $99 plan does better on paper ($31.50 gross profit, 32 percent) and still misses the 50 percent standard by a wide margin.
A $199 plan can hold 50 percent, but only on a tight visit. Cut the on-site time to 45 minutes with a printed checklist, zone the routes so drive time drops to 12 minutes and 7 miles, and the direct cost falls to $49.70 a visit, $99.40 a year. At $199 that is 50 percent on the nose. Most shops selling at $199 are running the 60-minute, 20-minute-drive visit and earning 32 percent without knowing it. The price question starts with how long your tech is on site and how far he drives between stops.
The three revenue streams a service agreement feeds
The plan fee is the smallest of the three. Owners who price by the fee alone undercharge it, and owners who count the other two streams without measuring them overcharge their own optimism. Measure all three.
1. The visit itself
Plan revenue minus direct cost. This is the stream that has to stand on its own at 50 percent, because it is the only one you can count on in a soft year.
2. Repairs found on maintenance visits
Two numbers drive this: the found-repair rate (the share of maintenance visits that produce a closed repair) and the average repair ticket on those visits. In the shops I have worked with, a typical found-repair rate is 25 to 45 percent. Below 20 percent means techs are changing filters and leaving. Above 50 percent means somebody is replacing capacitors that test fine, and the homeowner will figure that out. Average repair ticket on a maintenance visit runs $300 to $450 when the shop has a proper price book built the way I lay out in HVAC flat rate pricing. Without a book, techs quote from memory and the ticket drops.
3. Replacement conversion from members
Members replace equipment at a higher rate than one-call customers because your tech is standing in front of the 17-year-old condenser twice a year with a report in his hand. A typical range is 6 to 9 percent of members buying a replacement in a given year against 2 to 4 percent of non-member service customers. Credit the plan with the difference, and only the difference. The other half of those replacements would have happened anyway.
Found-repair rate, average ticket on maintenance visits, member replacement rate and renewal rate go on the same scorecard as callback rate and billable efficiency. I cover the full list in HVAC business KPIs.
Tier design that holds 50 percent gross profit
Three tiers is the right number. One tier gives the homeowner nothing to choose between. Four makes the CSR explain for three minutes and lose the call. Each tier gets priced by adding its real cost to the base and dividing by 0.5.
| Tier | What it includes | Direct cost/yr | Annual price | Monthly | GP % |
|---|---|---|---|---|---|
| Base | Two visits, standard filters, 10% repair discount | $135.00 | $279 | $24 | 51.6% |
| Priority | Base plus front-of-line scheduling, no after-hours premium, one waived diagnostic fee, 15% repair discount | $180.70 | $369 | $31 | 51.0% |
| Premium | Priority plus parts coverage up to $500/yr on a listed parts schedule | $224.20 | $459 | $39 | 51.2% |
The Priority cost is built from what the promises cost you. If one member in five uses an after-hours call and you waive a $95 premium, that is $19 per member. If three in ten use the waived $89 diagnostic, that is $26.70. Add both to the $135 base and you have $180.70. The Premium tier adds a parts schedule (capacitors, contactors, condensate pumps, ignitors, flame sensors, igniter boards under a cap) with a claim rate of 25 to 35 percent and an average covered repair cost of about $145 including labor, which is $43.50 a member. Compressors, heat exchangers, coils and refrigerant stay off the schedule, in writing.
The repair discount is a cost too, and it comes out of the repair stream rather than the plan. If your price book clears 55 percent at full price, a 10 percent member discount lands the repair at 50 percent, which is the floor. A 15 percent discount only holds 50 percent if the book clears 58 percent at full price. Check your book before you print the discount on the brochure.
Monthly pricing runs a little above annual divided by twelve to cover card fees and the members who quit at month seven. Put every member you can on a card. A monthly member has to act to leave. An annual member has to act to stay.
Renewal rate math: 80 percent on 1,000 beats 60 percent on 1,500
Most owners judge the program by member count. Renewal rate matters more, because it sets how long each member pays and how many new sales it takes to hold the base flat. Two shops, same gross profit per member of $340 a year (the worked example below shows where that number comes from).
| Shop A | Shop B | |
|---|---|---|
| Members | 1,000 | 1,500 |
| Renewal rate | 80% | 60% |
| Members lost each year | 200 | 600 |
| New sales needed to stay flat | 200 | 600 |
| Cost to replace them at $60 each | $12,000 | $36,000 |
| Average member life (1 divided by churn) | 5.0 years | 2.5 years |
| Lifetime GP per member at $340/yr | $1,700 | $850 |
| Base value (members x lifetime GP) | $1,700,000 | $1,275,000 |
Shop B has 500 more members and a base worth $425,000 less, and it spends three times as much every year just to stay where it is. Renewal is mostly a scheduling problem. A member whose second visit never got booked renews at about half the rate of one who got both visits. Auto-renew on a card, book the second visit before the tech leaves the first one, and track renewal rate monthly rather than at year end when it is too late to fix.
How to pay techs and CSRs without giving the plan away
Agreement sales pay is where good programs bleed. The plan gets bundled free into a repair to hit a spiff, or a tech discounts it to close, and the base fills up with members who cost more than they pay. The rules below hold in the shops I have worked with.
- Pay techs a flat spiff per new agreement, $25 to $40, stepped by tier ($25 base, $35 Priority, $50 Premium), paid after the first payment clears. Nothing for renewals except $5 for converting an annual member to a monthly card.
- Pay CSRs $5 to $10 per plan sold on an inbound call and $10 to $15 for converting a demand call into a plan at booking. That second number is where the base grows.
- Claw back the spiff on any plan cancelled inside 90 days. Nobody argues once it is written down.
- The price book price is the price. Techs and CSRs cannot discount the plan. The plan is the discount; nothing stacks on it, no coupon, no senior rate.
- Never pay a percentage of plan revenue. A percentage invites the free bundle.
- If a comfort advisor includes a first year free with an install, book the $135 cost against the install job, collect a card at closing, and renew year two at full price. No spiff on the free year.
Worked example: a $2.8M shop with 1,400 agreements
Ridgeline Heating and Air (hypothetical) runs $2.8M in revenue on 7 trucks, 5 of them service, with 1,400 agreements at $189 a year and two visits each. The owner thinks the program is a loss leader. He has never split it into its three streams.
| Stream | Math | Annual GP | GP per member |
|---|---|---|---|
| Plan visits | 1,400 x $189 = $264,600 revenue; 2,800 visits x $67.50 = $189,000 direct cost | $75,600 | $54 |
| Repairs found on visits | 2,800 visits x 35% = 980 repairs x $385 less 10% = $346.50; cost $173.25 each | $169,785 | $121 |
| Incremental replacements | 1,400 x 3% incremental = 42 jobs x $11,000 x 50% GP | $231,000 | $165 |
| Total | $476,385 | $340 |
The visits alone earn 29 percent, below the standard. The whole program earns $476,000 in gross profit on a $2.8M shop, and $400,000 of it never showed up on the maintenance line of the P&L because it was booked as service and install revenue. That is why the owner thought it was a loss leader.
Now reprice the base to $279. Gross profit per member on the visits rises from $54 to $144, and the total to $430. Assume 10 percent of members leave over the increase, which is on the high side of what I have seen when the increase comes with a letter explaining what the visit includes. 1,260 members at $430 is $541,800 against 1,400 at $340, or $476,000. The shop nets $65,800 more with 140 fewer members, and every member it adds from here is worth $430 instead of $340.
| Members | Annual GP at $340 (current $189 plan) | Annual GP at $430 (repriced $279 base) |
|---|---|---|
| 500 | $170,000 | $215,000 |
| 1,000 | $340,000 | $430,000 |
| 2,000 | $680,000 | $860,000 |
The base has a second value on top of the annual gross profit. A buyer pays a higher multiple for 1,400 auto-renewing agreements than for the same dollars arriving as one-time demand calls, because the base is revenue he can count on the day after closing. I go through how that shows up in the price in HVAC business valuation multiples.
Your cost per visit, found-repair rate and average ticket will differ from Ridgeline's. Put your own numbers into the free Maintenance Agreement Profit Calculator and it will return your breakeven, your gross profit per member and the value of your base at your renewal rate.
What to do this week
- Pull the last 50 maintenance invoices from your software and time-stamp them. Get the real on-site minutes and drive minutes. Build your cost per visit with your own loaded labor rate and truck cost, and stop using the flyer price as the starting point.
- Count the found-repair rate and average repair ticket on those same 50 visits. If the rate is under 20 percent, the checklist is the problem before the price is.
- Run your current plan price against your cost per visit. If the visits earn less than 50 percent gross profit with labor in COGS, draft the three-tier table for your shop with the base priced at direct cost divided by 0.5.
- Pull your renewal rate for the last 12 months and the number of members who got only one visit. Book every missing second visit before the month is out.
- Write the spiff rules on one page, including the 90-day clawback and the no-discount rule, and hand it to every tech and CSR at the next Monday meeting.
Frequently asked questions
How much should I charge for an HVAC maintenance agreement?
Price it from your cost per visit. A typical two-visit plan costs $60 to $80 a visit in direct labor, drive, truck and parts, so $120 to $160 a year. Divide that by 0.5 to hold 50 percent gross profit with labor in cost of goods sold, which lands most shops between $240 and $320 a year for the base tier, or $20 to $27 a month.
Are HVAC maintenance plans profitable?
The visits alone are rarely profitable at $99 to $189, because two visits cost $130 to $165 to deliver. The program becomes profitable through repairs found on the visits and the higher replacement rate among members. In the worked example above, a 1,400-member base earned $476,000 in gross profit, with only $75,600 of it coming from the plan fee itself.
What is a good renewal rate for HVAC service agreements?
In the shops I have worked with, 75 to 85 percent is a healthy renewal rate on annual plans, and monthly card-billed plans often run higher. Below 65 percent usually means members are missing their second visit. At 80 percent a member stays about five years; at 60 percent, two and a half, which cuts the lifetime value of the base in half.
Should I charge monthly or annually for a maintenance plan?
Offer both and steer to monthly on a card. Monthly members renew at higher rates because leaving takes an action and staying takes none. Set the monthly price a few percent above the annual divided by twelve to cover card fees and early cancellations. For a $279 annual base, $24 a month is a typical figure.
How much should I pay techs for selling maintenance agreements?
A flat $25 to $40 per new agreement, stepped by tier and paid after the first payment clears, with a clawback if the member cancels inside 90 days. Pay CSRs $5 to $15 per plan depending on whether they sold it on an inbound call or converted a demand call. Never pay a percentage of plan revenue, and never let anyone discount the plan.
If you want a second set of eyes on your cost per visit, your tiers and what your base is worth before you reprice, book a free strategy session and bring your last 50 maintenance invoices.
