Trades industry news, updated weekly
Business Tips

Your Install Jobs Pay Less Per Hour Than You Think

Maria ChenMaria Chen··11 min read

Your Install Jobs Pay Less Per Hour Than You Think

In 2019, I pulled the P&L on a 14-truck residential HVAC shop my firm was evaluating for acquisition. The owner was sharp — fifteen years in the business, knew his equipment, ran clean trucks. He had also been losing money on every install job for three years. Not a little money. Enough that the service department was quietly subsidizing the install side without anyone having done the arithmetic to confirm it.

He wasn't innumerate. He just never divided.

Take an install invoice — say, a split system replacement at $5,800. Divide it by the actual hours deployed on that job: every hour of labor and truck time from when the crew left the shop to the day the permit card got signed off. Not the estimated hours on the work order. The real number. What you get is your effective hourly rate. That's the number that tells you whether install pricing is working.

Most shop owners I've worked with don't know theirs.

What the Denominator Actually Includes

At Bayview Mechanical in Sunnyvale, I ran service calls in a Sprinter long enough to know that the truck is never free. Fuel, commercial auto insurance, tires, the slow accumulation of wear — all of it has a cost per operating hour. Most shops use a national average because that's what the accounting software handed them. The national average is a fiction. It doesn't know your insurance rate, your county's fuel prices, or whether you're running a two-year-old cargo van or a 2018 with 140,000 miles.

Run your own number.

Then think about what that number needs to cover on a typical split system install. The parts that surprise contractors aren't the install itself — it's the permit run (often a separate trip), the inspection hold (two hours in a cooperative jurisdiction, three weeks in a difficult one), and callbacks.

Callbacks are where the math gets uncomfortable. Full truck and labor cost. Zero invoice offset. You absorb it. If you're not tracking callback rate by install type, you're averaging that cost invisibly across every job — clean installs subsidizing problem installs, and you can't see which is which.

There's a sizing problem underneath the callback problem. Shops that size by rule of thumb rather than Manual J load calculation run higher callback rates — oversized equipment short-cycles, which generates humidity complaints, comfort calls, and nuisance lockouts. In the shops I've audited, the callback differential between rule-of-thumb sizing and actual load calcs is wide enough that the assessment often pays for itself in avoided return trips alone.

Run the Math on a Real Job

When I was doing acquisition analysis at Atlantic Comfort Partners, I rebuilt the hour count on install jobs before we got to the LOI stage. Sellers would present P&Ls showing install gross margin in the 34–38% range. That looks reasonable. Then I'd start asking questions.

One shop had quoted a 3-ton residential split system replacement at a number implying 38% gross margin — based on an estimated 8 labor hours at their burdened rate, plus equipment and materials. I pulled the job notes.

The permit run in that county averaged 1.2 hours round trip. The municipal inspector was running about a half-day backlog from call-for-final to sign-off — sometimes the crew waited on-site, sometimes they made a second trip. The shop had three callbacks in the trailing 90 days on that equipment line, averaging 1.4 hours each. I allocated a proportional share of that callback cost to each install of that type.

EstimatedActual (fully loaded)
Invoice total$5,400$5,400
Labor hours8.0 hrs11.8 hrs
Vehicle hours2.0 hrs3.6 hrs
Effective hourly rate$94/hr$51/hr

Note that this is a reconstructed estimate, not a forensic audit — but the direction is representative of what I found repeatedly in acquisition files. The owner had been quoting to $94 an hour. He was clearing $51. Meanwhile, a diagnostic call with a capacitor and contactor replacement on the same tech's day was yielding over $110 per effective hour.

That gap — $43 per hour across every install — was the quiet reason the service department looked profitable and the install side never quite did.

The install invoice tells you what a job billed. The effective hourly rate tells you what it paid. Most owners track the first number. The acquirer tracks the second — before the letter of intent goes out.

What the Flat-Rate Book Is Actually Selling You

The pricing books from the major industry vendors deliver consistent invoice totals. That's the product. You look up "2-3 ton split system replacement, standard installation," you get a number, your coordinator can quote it over the phone, your tech can hand the customer a printed page.

The book doesn't know about the second-floor air handler in a finished attic with 24 inches of clearance. It doesn't know the existing line set is undersize for the new equipment. It has no mechanism for the permit jurisdiction with a three-week inspection backlog.

The labor estimate is the same regardless. The actual hours are not.

I've worked with shops that had 18 months of flat-rate history and could tell you exactly what they charged per job type. They couldn't tell you what they made per hour. The book doesn't prompt that question. The vendor's commercial interest is in selling the book, the training, and the annual update subscription. Predictable revenue per ticket serves that interest. That's the product design, not an oversight.

Use the flat-rate book as a floor check. If your job-specific calculation comes in below the book price, review your cost structure. If it comes in above, charge your number. The book is a reference. It is not a ceiling.

How to Reprice Without Losing the Job

The objection I hear: "If I raise install prices, I'll lose jobs to the guy down the road still quoting the old number."

Here's my actual experience with this. Shops that repriced to a defensible effective hourly rate did lose volume — the early quarters were uncomfortable. Most recovered to prior volume within a year. The customers who left had been calling for the lowest bidder on every job. That's my read on it, not a controlled study.

The SEER2 transition is the cleaner data point. Shops that absorbed the equipment cost increase and held their install price lost margin. Shops that passed the cost through held margin and didn't lose the customer base they'd expected to lose. I watched this across shops I was advising during the transition. The pattern was consistent enough that I stopped expecting price increases to cause the attrition owners feared.

The mechanics:

Build a job-specific labor estimate before you quote. Not the book number, not what you charged for something similar last spring. A line-by-line estimate including drive time, permit pull, expected inspection hold, and a callback allocation based on your trailing callback rate for that equipment type and install configuration.

Set a target effective hourly rate. Calculate what your service work yields per hour — fully loaded, truck and labor and overhead. Your install target should be within $20 of that number. A gap wider than $20 in favor of service work means you're underpricing installs.

Walk the job before you quote it. Measure the space, confirm the electrical service, assess access, pull a Manual J. Shops that do this come out with tighter estimates and fewer callbacks. The site visit runs an hour or two. Bill it as a separate line item or treat it as cost of sale on larger jobs. What it produces is worth more than what it costs — but it also surfaces complications that would have eaten the margin anyway, so the friction is real and that's the point.

What to Do Monday Morning

Task one: Audit your last five install invoices. For each one, write down the work-order hours. Then ask the tech who ran it — or pull GPS data if you have it — for the actual hours: drive to supplier, drive to site, time on the job, return trips, permit run, inspection wait. Calculate the effective hourly rate on each job. The gap between estimated and actual hours is your tuition for this exercise. In my experience it runs wider than owners expect, often significantly so.

Task two: Calculate your callback allocation. Pull the last 90 days of callbacks on install work. Total the labor and truck hours. Divide by the number of installs completed in that period. That's your average callback cost per install. It belongs in every estimate going forward, the same way materials do.

Task three: Set your target effective hourly rate. Calculate what your service calls yield per hour — invoice revenue minus parts cost, divided by total tech and truck hours. That's your benchmark. Install pricing should target within $20 of it. If a specific job won't get you there, either reprice it or be honest that it's a deliberate loss leader with a defined reason for existing.

I have a cost-of-doing-business template that walks through all three calculations with a working spreadsheet. The link is in the footer. Bring your last five invoices and your technician's recollection of how those jobs actually went.


FAQ

How do I calculate effective hourly rate on an install job?

Subtract material and equipment costs from the invoice total. That's your gross labor revenue. Then count every hour labor and your truck were deployed — drive time, permit runs, inspection holds, callback hours allocated proportionally. Divide gross labor revenue by total hours. Compare that number to what your service calls yield using the same method. The gap is what you're trying to close.

Shouldn't installs naturally pay less per hour than service work because the job is larger?

This comes up constantly and I find it unpersuasive. The argument is that large jobs amortize overhead more efficiently, which is true on overhead allocation. It's not true on labor and truck cost, which scale with hours regardless of job size. Installs also carry more unpredictable time variables than service calls — permit jurisdictions, inspection schedules, access problems — which makes hourly yield harder to protect than on a diagnostic call where the scope is bounded.

How do I handle permit pull and inspection wait in my pricing?

Treat them as billable labor hours, which is what they are. Permit pull time in jurisdictions I've worked in runs 0.5 to 1.5 hours depending on the county. Inspection holds vary more, but if you track your average wait time over the trailing six months, you can build a standard allocation into labor estimates. If a customer is surprised by it, the conversation is about why inspected work protects them — which is a conversation worth having.

What's a reasonable target effective hourly rate for install work?

I don't give a national figure because your market, your overhead, and your labor costs determine it. The process I use: calculate what your service work yields per hour fully loaded, and target within $20 of that on installs. If installs are falling $40 to $60 short, the problem is almost always in the hour count, not the invoice total.

What if I'm losing jobs to lower-priced competitors?

Some of them are buying volume at a loss and haven't done the math yet. Some have a genuinely lower cost structure and are pricing correctly for it. You can't tell which until you've run your own numbers first. In my experience, shops that reprice to a defensible hourly rate lose volume early and recover it. The customers who stay are less likely to call three competitors before booking a service call. That matters more to the P&L than the initial drop in quoted volume.

Do I really need a Manual J on every replacement job?

Not every job. But more than you're running them on now, almost certainly. The payback is specific: oversized equipment generates comfort callbacks, which are full-cost service calls with no invoice to offset them. Run them on any job where the existing system was a non-standard size or where the customer has complained about comfort under the prior equipment. That covers most of the cases where the callback risk is highest, without turning every changeout into a two-hour engineering exercise.

Enjoyed this article?

Get articles like this in your inbox every Monday. Free, no spam.

More from The Backcharge