Back to blog
Job Costing

How to Calculate Profit Margin on Every HVAC Job

Mohan BabuApril 12, 20268 min read

What Profit Margin Actually Means for HVAC Contractors

Profit margin is the percentage of revenue left after you subtract all costs associated with a job. It sounds simple, but the majority of HVAC contractors calculate it wrong — or don't calculate it at all. They look at the bank account at the end of the month and call whatever is there "profit."

There are two types of margin that matter:

  • Gross profit margin — revenue minus direct job costs (materials, labor on-site, subcontractors). This tells you how profitable the work itself is.
  • Net profit margin — revenue minus everything (direct costs + overhead like rent, insurance, office staff, truck payments, software). This is what you actually keep.

A healthy HVAC business targets 50-55% gross margin and 15-20% net margin. If your gross margin is below 40%, you're either underpricing or bleeding on material costs. If your net margin is below 10%, your overhead is eating your profit.

The Formula (and Why Most Contractors Get It Wrong)

The basic formula is straightforward:

Profit Margin = ((Revenue - Total Costs) / Revenue) x 100

Let's walk through a real example. You quote an HVAC install at $8,500. Here's what most contractors track:

  • Equipment: $3,200
  • Materials (copper, fittings, ductwork): $450
  • Technician labor (2 techs x 8 hours x $35/hr): $560

So they calculate: $8,500 - $4,210 = $4,290 profit. That's a 50.5% margin. Looks great, right?

Except they forgot:

  • Drive time to the job site (45 min each way, 2 techs): $105
  • Drive time to the supply house for a fitting they didn't have: $52
  • Permit fee: $150
  • Dumpster / disposal fee: $75
  • Truck cost allocation (fuel, maintenance, insurance per job): $85
  • Workers comp and payroll taxes on the labor: $145
  • Warranty callback two weeks later (1 tech, 2 hours): $70 labor + $35 part

Real total cost: $4,927. Real profit: $3,573. Real margin: 42%.

That's an 8.5 percentage point difference from what the contractor thought. Over 200 jobs a year, that's tens of thousands of dollars in phantom profit — money you thought you had but never did.

The Five Costs Contractors Consistently Miss

1. Drive Time and Vehicle Costs

Your techs are on the clock from the moment they leave the shop. A job that's 45 minutes away costs you 1.5 hours of labor just in windshield time — before anyone touches a wrench. At $35/hr with two techs, that's $105 you probably didn't include in your job cost. Add fuel, tire wear, and insurance allocation, and every mile costs roughly $0.65-0.80 for a service van.

2. Supply Runs

The mid-job supply house run is a profit killer. You're paying a tech $35/hr to drive to the supply house, wait in line, and drive back. That's typically 45-90 minutes of labor producing zero revenue. If this happens on 20% of your jobs, it's quietly costing you $15,000-$25,000 per year.

3. Callbacks and Warranty Work

Industry data shows HVAC contractors average a 5-8% callback rate. Every callback is labor, parts, and fuel with zero revenue. If your average callback costs $150 in labor and parts, and you do 500 jobs per year with a 7% callback rate, that's $5,250 per year in invisible cost. Most contractors never allocate this back to the original job.

4. Payroll Burden

When you pay a tech $35/hr, your actual cost is closer to $42-45/hr after workers comp, FICA, unemployment insurance, and benefits. That 20-28% payroll burden adds up. On a two-tech, full-day job, the difference between $35/hr and $43/hr is $128. Miss that on every job and you're underestimating costs by $25,000+ annually.

5. Overhead Allocation

Rent, office staff, software, insurance, accounting, marketing — these costs exist whether you run 5 jobs this week or 15. But they need to be covered by your jobs. If your monthly overhead is $18,000 and you run 80 jobs per month, each job needs to cover $225 in overhead just to break even. Most contractors don't factor this into their per-job profitability at all.

How to Actually Track This on Every Job

The contractors who consistently run 15%+ net margins aren't smarter or luckier — they just know their numbers in real time instead of finding out 30 days later.

Here's what that looks like in practice:

  • Before the job: Estimate total cost including labor burden, drive time estimate, and overhead allocation. Set the price with your target margin built in.
  • During the job: Track actual hours, materials used (not just materials quoted), and any scope changes. If the job is going over, you know immediately — not when the invoice comes in.
  • After the job: Compare actual cost to estimate. If you quoted $8,500 expecting a 45% margin but delivered at 38%, you need to know why. Was it a material price increase? Extra labor? A scope change you didn't charge for?

This is what real-time job costing means. Tools like WrenchToCash calculate your margin as costs come in — materials get matched from supplier bills automatically via AI, labor hours sync from the field — so you see your actual profit before you even send the invoice.

Setting Your Target Margin

There's no universal "right" margin because it depends on your overhead structure, market, and service mix. But here are benchmarks for residential HVAC:

  • Service/repair calls: Target 55-65% gross margin. These are high-margin, low-material jobs.
  • Equipment replacements: Target 45-55% gross margin. Equipment cost is a big chunk, but labor should be efficient.
  • New construction: Target 25-35% gross margin. High volume, lower margin, but predictable scope.
  • Maintenance agreements: Target 60-70% gross margin on the labor. These are your most profitable recurring revenue.

If any category consistently comes in below these ranges, you have a pricing problem, an efficiency problem, or both. The only way to know which is to track actual costs per job — not just total revenue per month.

The Bottom Line

Profit margin isn't a number you calculate once a month from your P&L. It's a number you should know on every single job, in real time, as costs come in. The contractors who build $2M+ businesses treat margin like a vital sign — they monitor it constantly, and when it dips, they diagnose and fix the problem immediately.

Start by tracking the five hidden costs above on your next 10 jobs. Compare your assumed margin to your actual margin. The gap will tell you exactly where your money is going.

Ready to know your numbers?

WrenchToCash gives you real-time job costing, AI bill matching, and AI call answering — so you know your profit on every job before you leave the site.

Start Free Trial