Skip to content

Payments & profit · HVAC

How to price HVAC jobs: flat rate, labor cost, overhead and margin

How to price HVAC jobs from your own costs: loaded labor cost, overhead, markup vs margin, flat-rate tasks, good-better-best and service call fees.

Updated October 15, 2026 · 12 min read

If your shop is busy and still short on cash, the problem is usually the price book, not the sales team. Prices copied from a competitor or inherited from the last owner were never built from your costs, and the gap between what an hour of tech time costs and what you charge for it is often a lot smaller than owners think.

This guide builds an HVAC price from the ground up: what a tech really costs per billable hour, how to recover overhead, how markup and margin differ, how to turn that into flat-rate tasks, and how to check service call fees and member discounts against cost. The wage and benefit benchmarks come from the Bureau of Labor Statistics. Everything else is a clearly labelled example: plug in your own numbers.

Flat rate vs time and materials

Time and materials (T&M) bills hours worked at an hourly rate plus parts. It's transparent, but in residential service it has real problems: the customer can't approve a price up front, a fast tech earns the company less, and two techs on the same repair produce two different invoices.

Flat rate prices each task in advance from an expected time plus materials, overhead and profit. The customer approves the price before work starts, every tech quotes the same job the same way, and the shop benefits when techs get faster.

Flat rate fits most residential service and repair. T&M still makes sense for commercial work under a contract with agreed rates, jobs with genuinely unknown scope, and some new construction. Either way, the foundation is the same number: what an hour of billable time costs you.

Step 1: Find the loaded cost of a tech

Start with the wage, then add everything that comes with it.

Wages. The median HVAC mechanic or installer earned $29.33 an hour in May 2025; the 75th percentile earned $37.051. Use your own payroll, but those numbers tell you whether your wages are typical for the trade.

Payroll taxes. The employer pays 6.2% Social Security on wages up to $184,500 in 2026 and 1.45% Medicare with no cap, plus federal unemployment tax of 6.0% on the first $7,000 per employee, which drops to 0.6% net with the full credit for state unemployment tax2. Your state unemployment rate comes on top.

Benefits and insurance. Workers' comp, health insurance, retirement match, paid time off.

You don't have to guess at the total. BLS surveys what private employers actually spend per hour worked. For installation, maintenance and repair occupations in June 20263:

Per hour worked, June 2026CostShare of total
Wages and salaries$33.6168.6%
Paid leave$3.296.7%
Supplemental pay$1.893.9%
Insurance$4.278.7%
Retirement and savings$2.154.4%
Legally required benefits$3.817.8%
Total compensation$49.01100%

Labor burden multiplier (BLS average)

$49.01 total compensation ÷ $33.61 wages = 1.458

Use 1.458 as a sanity check, not a substitute for your own numbers. A shop with no health plan will run lower. A shop in a high workers' comp state, or one that pays for a lot of training, will run higher. Add per-tech costs BLS doesn't count, such as uniforms, phones and tools you supply. Some shops put the truck here too; others count it as overhead. Either works if you count it once.

Example (hypothetical): a tech earns $32 an hour, between the trade's median and 75th percentile. Loaded cost: $32 × 1.458 = $46.66 per paid hour, or $97,058 a year for 2,080 paid hours.

Step 2: Count billable hours, not paid hours

You pay for 2,080 hours. You don't bill 2,080. Subtract holidays, vacation and sick time; training and meetings; shop time, parts runs and truck stocking; drive time; callbacks and warranty work you don't charge for; and calls where the customer declines the work. What's left is time on site doing work that ends up on an invoice.

Don't guess this number. Pull a month of timesheets and compare them with the hours on invoiced jobs. Here's why it matters so much, using the same $97,058 tech and a 6-tech shop with $540,000 a year of overhead (both hypothetical):

Billable hours per tech per yearShare of paid hoursLabor cost per billable hourOverhead per billable hourBreak-even per billable hourPrice at 15% net margin
1,00048%$97.06$90.00$187.06$220.07
1,20058%$80.88$75.00$155.88$183.39
1,30062%$74.66$69.23$143.89$169.28
1,40067%$69.33$64.29$133.61$157.19
1,60077%$60.66$56.25$116.91$137.54

Going from 1,200 to 1,400 billable hours lowers break-even by $22.27 an hour, without a raise or a price change. That's why dispatch, drive time and first-time fixes are pricing topics. A shop that copies a competitor's rate without knowing its own billable hours is guessing.

Break-even cost per billable hour by billable hours per tech (hypothetical shop)

Hypothetical example: $32/hr tech, 1.458 labor burden from BLS ECEC, 6 techs, $540,000 annual overhead. Rounded to the dollar.

Break-even cost per billable hour by billable hours per tech (hypothetical shop)
1,000 hrs$187
1,200 hrs$156
1,300 hrs$144
1,400 hrs$134
1,600 hrs$117

Source: Labor burden: BLS ECEC June 2026

Step 3: Recover overhead on every billable hour

Overhead is everything you'd still pay with zero jobs on the board: office staff, rent, utilities, trucks and fuel (if not in labor), insurance, software, phones, marketing, accounting, loan payments, and the owner's pay if the owner doesn't bill.

Overhead per billable hour

Annual overhead ÷ (number of techs × billable hours per tech) = $540,000 ÷ (6 × 1,300) = $69.23

Break-even cost per billable hour

Loaded labor per billable hour + overhead per billable hour = $74.66 + $69.23 = $143.89

Every hour sold for less than $143.89 in this example loses money before a single part. The labor rate calculator does this math with your numbers.

Step 4: Markup vs margin, and adding profit

"50%" means different things depending on whether you mean markup or margin. Mixing them up is one of the most common reasons shops underprice.

Markup and margin

Markup = (Price − Cost) ÷ Cost · Margin = (Price − Cost) ÷ Price · Price from margin = Cost ÷ (1 − Margin) · Price from markup = Cost × (1 + Markup)

The conversion most shops need:

Target marginMarkup neededPrice for a $100 cost
20%25.0%$125
25%33.3%$133
30%42.9%$143
40%66.7%$167
50%100%$200
60%150%$250

Your profit and loss statement reports margins. If your price book applies markups and you read "50%" as the same thing, you'll come up short every month.

Free calculatorMarkup vs margin calculatorConvert markup to margin (and back) so your prices actually hit your margin target.

Labor rate with profit (hypothetical): to earn a 15% net margin on labor, price the billable hour at $143.89 ÷ (1 − 0.15) = $169.28.

Step 5: Build flat-rate tasks

Flat-rate task price

Task price = (Task hours × Selling rate per billable hour) + (Material cost ÷ (1 − Materials margin))

Task hours are the realistic time for an average tech, including setup, testing and cleanup.

Example (hypothetical): replace a run capacitor

  • Labor: 0.75 hours × $169.28 = $126.96
  • Capacitor costs $25. At a 60% materials margin: $25 ÷ 0.40 = $62.50
  • Task price: $126.96 + $62.50 = $189.46. Round to $190

At $190, the task's direct cost is (0.75 × $143.89) + $25 = $132.92, a 30% margin over break-even. You don't need 2,000 tasks to start. Most shops get most of their tickets from a few dozen repairs plus maintenance visits and replacements. Build those first and add tasks as techs ask for them.

Rules that keep a price book healthy:

  • Use average-tech times, not best-tech times. Your best tech will beat them, which is the point of flat rate.
  • Keep materials separate from labor in the build sheet, so a supplier price change doesn't mean redoing labor.
  • Bundle the obvious combinations. Capacitor plus contactor is one task.
  • Write descriptions customers understand. "Replace failed run capacitor and test system" beats "CAP RPL 45/5."
Free download · ExcelFlat-Rate Price Book BuilderWork out your true hourly cost, set your billable rate, and price every task with good, better and best options.
A TradesWork price book with price, member price, cost and margin on every item (demo data). · Real product screenshot, demo company data.
Price book with services, prices and margins

Good, better, best

For any job with real choices (repairs with optional upgrades, replacements, indoor air quality), present three options instead of one price.

  • Good fixes the problem properly. It isn't a straw man.
  • Better adds things that reduce future problems: a surge protector, a hard-start kit, an extended labor warranty, a membership.
  • Best is what you'd put in your own home.

Price all three from the same cost-plus method so each one makes money. Replacements use the same math at a bigger scale: equipment cost, crew hours, materials, permit fees, overhead and profit. With the move to A2L refrigerants, rebuild replacement prices from current equipment costs and the extra install time your crews are actually seeing; our A2L refrigerants guide covers what changed. In TradesWork, techs build options from your price book on the phone, mark one as recommended, and can show an as-low-as monthly figure labelled as an estimate when you've set up financing plans. More in our post on good-better-best estimates.

Service call and diagnostic fees

A truck roll costs money whether or not the customer approves a repair. Decide three things and put them in writing:

  1. What the fee covers: usually the trip and the diagnosis.
  2. Whether it's credited toward an approved repair. Crediting can help close rates; not crediting protects margin on declined calls.
  3. When it changes: after-hours and weekend calls usually cost more.

Minimum service call fee

(Average drive hours + diagnosis hours) × break-even rate = (0.5 + 0.5) × $143.89 = $143.89

That's break-even only. At your selling rate the same hour is $169.28. Tell customers the fee when they book, not when the tech arrives.

Member pricing

A maintenance plan usually includes a repair discount, and that discount comes straight out of margin you built. Check it on your highest-volume tasks.

Example (hypothetical): the $190 capacitor task with a 15% member discount becomes $161.50. Direct cost is still $132.92, so the member margin is ($161.50 − $132.92) ÷ $161.50 = 17.7%, down from 30%. At a 20% discount it drops to 12.6%.

Still profitable, but thinner, and on tasks with heavier labor content a big discount can go underwater. Two common fixes: limit the discount to repairs (not equipment or replacements), or set a member price per task instead of a blanket percentage. Plan design is covered in our HVAC maintenance plans guide.

Keeping prices current

  • Parts: update when supplier prices change. A stale price on a high-volume part costs you on every ticket.
  • Labor: review at least once a year and whenever wages, workers' comp or benefits change. BLS publishes new OEWS wage estimates once a year and ECEC benefit costs every quarter, so your benchmarks can be refreshed too.
  • Overhead: recompute when you add a truck, an office hire or a location.
  • Task times: compare estimated and actual hours each quarter and fix the outliers.

Watch three numbers monthly: gross margin by job type, average ticket and close rate. If margin slides while close rate climbs, prices may be too low. If close rate drops sharply after a price change, look at how options are presented before you cut prices.

HVAC pricing checklist

  • Loaded cost per tech from real payroll, sanity-checked against the BLS 1.458 burden
  • Billable hours measured from a month of timesheets against invoiced hours
  • Annual overhead totaled, including owner pay and vehicle replacement
  • Break-even cost per billable hour written down
  • Profit target set as a margin and prices calculated with the margin formula
  • Top 30 to 50 tasks priced flat rate, materials kept separate
  • Good-better-best options built for replacements and common upgrades
  • Service call fee at or above break-even for drive plus diagnosis, stated at booking
  • Member discount checked against cost on high-volume tasks
  • Quarterly review of task times and parts costs on the calendar

Footnotes

  1. U.S. Bureau of Labor Statistics, Occupational Employment and Wage Statistics, May 2025, Heating, Air Conditioning, and Refrigeration Mechanics and Installers (49-9021). https://data.bls.gov/oesprofile/?year=2025&major_group=490000&occupation=499021&measure=04 ↩

  2. Internal Revenue Service, Publication 15 (2026), Circular E, Employer's Tax Guide. https://www.irs.gov/publications/p15 ↩

  3. U.S. Bureau of Labor Statistics, Employer Costs for Employee Compensation, Table 4, private industry workers, installation, maintenance and repair occupations, June 2026. https://www.bls.gov/news.release/ecec.t04.htm ↩

Free download

Flat-Rate Price Book Builder

Work out your true hourly cost, set your billable rate, and price every task with good, better and best options.

Get it free
  • Overhead and labor cost calculator
  • Billable hour and target margin model
  • Task pricing sheet with materials markup
  • Good / better / best option builder
  • Member discount column

Frequently asked questions

For residential service and repair, most shops do better with flat rate: the customer approves a known price before work starts, techs aren't penalized for being fast, and pricing is consistent across the team. Time and materials still fits commercial work under contract, unusual jobs with unknown scope, and some new construction.

Ready to run a tighter shop?

Try the TradesWork AI plan free for 14 days. Bring your customers and price book, or start fresh with a price book made for your trade.

  • No credit card
  • No contract
  • Cancel any time
Three workers in coveralls unloading equipment from a van