HVAC Job Costing: Why One Average Hides Which Jobs Pay
Published by
Throne of Profit EditorialReviewed by
William Hassell
Founder & Chief Editor, Throne of Profit
A spring tune-up, a mid-July no-cool call, a two-day changeout with a crane on the driveway, and a warranty compressor swap are not the same kind of work — but a lot of HVAC shops cost them as if they were, running one blended markup across everything the trucks touch. The 45-minute capacitor replacement and the $9,000 system replacement get priced off the same rough assumptions, and nobody stops to ask which of those jobs is actually carrying the shop and which is quietly draining it.
When you cost every job with a single average, the losers don't disappear — they hide inside the winners, and you keep selling them. A blended margin can look perfectly healthy on the year-end books while whole categories of work — warranty callbacks, small diagnostics, off-season installs — run at or below cost. Job costing in HVAC means pricing each type of work from its own real number, not one average that flatters the weak jobs.
NOT EVERY HVAC JOB COSTS THE SAME WAY
job type parts labor the cost that hides
─────────────── ───── ───── ───────────────────
PM / tune-up low low drive time ▇▇
no-cool repair med med diagnosis time ▇▇▇
system changeout high high permits+startup ▇▇▇▇
warranty callback $0 yours unbilled labor ▇▇▇▇▇Owner symptoms
You apply the same markup to a tune-up, a compressor swap, and a full changeout.
Peak-season weeks are packed solid, yet the bank balance barely moves by fall.
Warranty and callback trips keep stacking up and you can't say what they cost you.
Why this happens
HVAC covers work that behaves nothing alike. A maintenance route bills small but eats windshield time; a changeout carries refrigerant, a permit, an inspection wait, and a commissioning startup; a warranty call pays your tech nothing from the customer even though the part is free. Most shops never separate these, so the costs that decide whether a job type wins or loses get averaged into invisibility. The blend looks fine, and the specific categories that bleed never surface — until the busy season ends and the profit that should be there isn't.
Common mistakes
Blending every job into one margin, so a $120 tune-up and a $9,000 changeout ride on the same guess.
Leaving warranty labor uncosted — the part is covered, but your tech's hour on the roof is real money you're absorbing.
Forgetting the install extras — refrigerant, permits and inspection time, lift or crane rental, and startup/commissioning.
Costing summer and winter jobs identically, ignoring overtime, rush parts, and stretched capacity in peak season.
Never comparing the bid to what the job actually burned in hours and trips.
Business consequences
A shop that costs on one average is flying blind by category. The strong changeouts and tune-ups quietly subsidize the losing warranty work and underpriced off-season installs, and because it all nets out, the owner never sees which line to fix. Whole job types can run underwater for years while the crews stay slammed and the owner blames a soft market. The owner who costs by job type sees it plainly: this category pays, that one needs a price change or a stop. Pricing stops being one hopeful number and becomes a set of decisions grounded in what each kind of work truly demands.
How experienced operators think about it
They refuse to price HVAC work off a single blended rate, because they know a tune-up, a diagnostic, a changeout, and a callback have different bones. For each type they carry a real cost — including the pieces that hide: refrigerant, permits, startup time, unbilled warranty labor, drive time, and the non-billable hours between billable ones. They watch the season, knowing a July install and a March install don't cost the same to deliver. And they close the loop, checking a few finished jobs in each category against the bid so the numbers sharpen instead of drifting. To them, costing by job type is how you tell a busy year from a profitable one.
Practical actions
Cost your job types separately — PM/tune-up, diagnostic-repair, changeout, warranty callback — rather than one blended markup.
Load in the HVAC-specific costs — refrigerant, permits and inspection time, lift or crane rental, startup and commissioning, and warranty labor you can't bill.
Measure true billable hours against drive time, diagnostics, and supply-house runs, so your labor cost reflects the day that actually happens.
Adjust for season — build peak overtime, rush parts, and tighter capacity into your summer and winter numbers.
Compare bid to actual on a handful of real jobs per category and correct the costs you got wrong.
Questions every owner should ask
Do I know the real cost of each job type, or just one average that covers for the weak ones?
What is a single warranty callback actually costing me in tech hours and a lost slot?
Does my install price carry refrigerant, permits, and startup — or only the equipment and the obvious labor?
Frequently asked questions
How do I cost a job when the part is under warranty but the labor isn't billable?
Treat the labor as a real cost even though no invoice covers it. If a technician spends two hours diagnosing and swapping a warranty compressor, that time, the truck, and the drive are money leaving the shop. Build a realistic warranty-labor allowance into how you cost install work up front, so the price you charge on the original job reflects the callbacks a share of installs will generate — and separately, chase down why parts are failing.
Should my summer and winter pricing use the same job costs?
Usually not. Peak heat and peak cold change what a job actually costs to deliver: overtime creeps in, parts get harder to source at short notice, and every crew is stretched, so the opportunity cost of a low-margin job is higher when you're turning work away. Cost your common jobs for peak conditions as well as shoulder-season conditions, and price accordingly, rather than carrying one flat number across the whole year.
Related articles
Running a Profitable HVAC Business — the HVAC pillar.
Flat-Rate vs. Hourly Pricing for HVAC — pricing built on job cost.
Protecting Your HVAC Install Margin — defending the margin you price in.
What Does a Job Actually Cost Me? — the general job-costing method.
Every business has more decisions than time
Whether you need help solving one problem, evaluating a major opportunity, or making a company-changing decision, Throne of Profit gives you consulting capacity on demand.
Purchase only the consulting capacity you need and use it across Weekly Focus, Strategic Focus, Financial Focus, and ThinkTank engagements.