How to price an HVAC service call so the truck gets paid

How do you price an HVAC service call?

Build the number up from your loaded labor rate, then add a trip or diagnostic fee that covers the drive and the first half hour on site, quote parts at a consistent markup on top, and add an after-hours surcharge when it applies. The fee most often given away is the diagnostic, and that is usually where the margin actually leaks.

Most HVAC shops do not lose money on the repair. They lose it on the parts of the call that never made it onto the invoice: the drive across town, the half hour spent tracing a dead capacitor, the after-hours phone call that turned into a Saturday. If you have ever quoted a job, won it, and still finished the month thinner than the ticket said you should be, the leak is usually in how the service call itself is priced, well before you get to your markup.

Fieldwynn builds free tools for service operators, and its in-progress field-service app for small shops isn’t out yet, with HVAC on its early-access waitlist. The intent is a field-first app the tech runs from a phone at the truck, designed to stay affordable for a small shop, so treat this as advice with a funnel behind it and join the waitlist if you want first crack when it reaches HVAC. Either way, check every figure below — including the tools we point you to — against the sources cited inline.

Build the price up from a loaded labor rate

The number that protects a service call is your loaded labor rate, and it is not the wage you pay the tech. The U.S. Bureau of Labor Statistics put the median wage for HVAC mechanics and installers at $59,810 a year as of May 2024, roughly $28.75 an hour across a 2,080-hour year. That is what the labor costs you before anything else is layered on.

On top of the wage you carry the burden: payroll taxes, workers’ comp, liability insurance, paid time off, phones, software, and the credentials HVAC specifically demands. The EPA requires that any technician who opens a refrigerant circuit hold a Section 608 certification, and the training and testing behind that card is a real line in your cost stack, not a formality. Then add the truck. Fuel, payments, insurance, and maintenance run whether the van is moving or parked in the bay; if you have never metered your own per-mile cost, the IRS standard mileage rate — 70 cents a mile for business use in 2025 is a defensible stand-in.

Sum the wage, the burden, and the truck, then divide by the hours you can actually bill in a day rather than the hours you are on the clock; those are different numbers, and the gap between them is where a lot of shops quietly underprice. The job-cost engine runs that arithmetic if you would rather not keep a spreadsheet open in the truck.

Charge for the trip and the diagnostic on their own line

A trip charge covers getting the van to the door. A diagnostic fee covers the time to find the fault once you are there. Some shops bill them as one number and some split them; either is fine, as long as both land on the ticket instead of dissolving into a repair quote the customer may never approve.

This is the single most common place margin leaks on a service call. Fold the drive and the diagnostic into a quote, and on every job you do not win, you have just worked an hour or more for free and paid for the fuel to do it. Bill them up front, and the call pays for itself whether or not the repair lands. The question of whether to credit that fee back toward an approved repair is a real one, and the honest answer is that both policies work — crediting it helps close the bigger ticket, keeping it protects you on the no-gos — provided you print the policy on the quote and decide it before the visit, not at the kitchen table. Set the trip and diagnostic against your real drive time and the first half hour on site rather than copying a competitor’s flat number, because their drive radius is not yours.

Flat rate or time and materials

Once the loaded rate and the diagnostic are settled, you have to decide how the customer sees the price. The two standard models pull in different directions, and a hybrid is common.

How HVAC shops structure a service-call price
Pricing modelWhat the customer seesRisk you carryFits when
Time and materialsHours billed plus parts, totalled at the endA job that runs long bills more, which can spark disputesYou are still learning your real costs and want no price book
Flat rate per taskOne agreed price before work startsA misjudged flat price eats the overrun yourselfYou know your loaded rate well enough to set the book
Hybrid (flat diagnostic, then either)A fixed fee to look, a quoted price to fixTwo-step pricing needs a clear hand-off so it does not feel like a baitYou want the diagnostic always covered and the repair priced to the find

Time and materials needs no price book and stays transparent while you are still metering your costs, but a ticket that climbs as the hours add up is the kind a customer pushes back on. Flat rate fixes that: the price is agreed before a wrench moves. But you can only quote it honestly once you know your cost stack, or you are guessing with your own margin. A practical path is to start on T&M, watch where your real hours land across a season, and build a flat-rate price book from your own data once the patterns are clear. If you want to pressure-test a flat number before you commit it to the book, the HVAC calculator at the end of this guide runs in reverse: enter the price you plan to quote and it backs out the margin that price actually leaves you.

Mark parts up as a separate lever

Parts markup is a different mechanism from labor margin and overhead recovery, and keeping them separate is what keeps your pricing legible. You buy a contactor or a capacitor at distributor cost and sell it installed at a higher price; that spread pays for procurement, stocking, warranty risk, and the trip back when a part fails early. It is not a place to hide overhead you should have recovered in your labor rate — if the markup is doing two jobs, you cannot tell which lever is actually working.

The discipline that matters is consistency. Pick a multiple and apply it the same way on every job, because a customer who sees steady, predictable parts pricing reads it as fair, while one who catches an inconsistent markup reads the whole invoice as negotiable. If you think in margin rather than markup, the markup-versus-margin converter keeps the two from getting crossed — a common and expensive mix-up — and the parts and material markup calculator applies your multiple across a job’s material list so the total carries through to the quote cleanly.

When a discount makes sense — and when it just hides the leak

There is a real difference between a discount that buys you something and a discount that quietly erases a cost you already incurred. Waiving a trip fee because a price-shopper pushed back at the door is the second kind: you still drove there, you still paid for the fuel, and you have now trained that customer to expect it gone. The drive does not get cheaper because someone asked.

The discount that earns its keep is structural. A maintenance agreement is the clean version: the customer prepays for seasonal tune-ups and earns a standing break on diagnostic fees and repair labor, and in exchange you get scheduled, predictable work in your slow weeks and first call on their breakdowns. Put those agreements on recurring billing so the revenue recurs instead of being re-sold every spring, and standardize the visit with a maintenance checklist so any tech can run it the same way. That is a discount that trades a lower per-visit price for revenue you can count on, which is worth real money, rather than one that simply gives away the part of the call you were already underbilling.

Put your numbers in

Everything above is a framework; the price is yours. Enter your loaded labor rate, your hours, your parts and markup, and any after-hours surcharge, and the calculator returns a defensible time-and-materials price — or, in flat-rate mode, the margin a price you are considering would actually leave you.

The output is an advisory estimate, not a binding quote — verify your local labor rates, permit fees, refrigerant regulations, and applicable taxes before you hand a customer a number.

The number you protect

If you fix one thing about how you price service calls, make it this: every ticket should carry its share of the truck, the certification, and the diagnostic time before a single part is marked up. The repair was rarely the problem. The drive and the diagnosis you stopped charging for were, and they are the easiest margin in the business to win back, because you are already doing the work — you just have to put it on the invoice.

Frequently asked questions

What should an HVAC diagnostic or trip fee cover?
The drive to the property plus the time it takes to find the fault once you are there — typically the first half hour on site. Bill it on its own line so it gets paid whether or not the customer approves the repair, rather than folding it into a quote you might not win.
Should you credit the diagnostic fee toward the repair?
Either crediting it or keeping it is defensible, as long as the policy is printed on the quote and decided before the visit instead of negotiated at the door. Crediting it can help close the repair; keeping it protects you on the calls that do not convert. Pick one and apply it consistently.
Is flat rate or time and materials better for a small HVAC shop?
Time and materials needs no price book and stays honest while you are still learning your real costs. Flat rate reads cleaner to the customer and protects you on jobs that run long, but it only works once you know your loaded labor rate. Many shops start on T&M and graduate to flat rate.
What is a normal parts markup on an HVAC service call?
There is no single correct number; it varies by region, part, and how much procurement and warranty risk you carry. Pick a consistent multiple that covers buying, stocking, and standing behind the part, and apply it the same way every time. Inconsistency, more than the level, is what reads to a customer as gouging.

Get early access

Fieldwynn is the field-first app we are building for small crews — simple in the truck, powerful in the back office. It is not out yet; join the early-access list and be first when it launches for your trade.