All posts
HVAC · 4 min read

How to price commercial HVAC service

How to price commercial HVAC service three ways, hourly, flat rate, and maintenance contracts, plus how to set a loaded labor rate that covers real cost.

A

Andres Ponce

July 21, 2026

There are three honest ways to price commercial HVAC service, and most shops only use one of them. Hourly, flat rate, and maintenance contract. Each fits a different kind of work, and the shops that run all three make more money and sleep better in January.

If you want to price commercial HVAC service so you’re not guessing, start with your loaded labor rate, because every one of these three methods is built on top of it. Get the rate wrong and it doesn’t matter which pricing model you pick.

Set your loaded labor rate first

Your billing rate has almost nothing to do with what you pay the tech.

Start with the wage, then load it. Payroll taxes, workers’ comp, benefits, and paid time push a $30 an hour tech to something like $40 or more in real cost. That’s just the person. Now add the truck: fuel, insurance, maintenance, tools, the fully stocked van that shows up so the tech isn’t driving to the supply house mid-job.

Then layer overhead. Your dispatcher, your office, software, rent, phones, the estimating time that never gets billed. Divide total overhead across your billable hours, because your techs are not billable eight hours a day. Windshield time, restocking, and paperwork are real, and a tech who bills six of eight hours has an overhead load per billed hour that’s a third higher than the wage math suggests.

Add profit on top of all of it. Not what’s left over if you’re lucky. A number you set on purpose. That final figure is your billing rate, and it’s usually a lot higher than owners expect the first time they actually run it.

Hourly, or time and materials

Hourly is the right call for diagnostic work, emergency calls, and anything where you genuinely can’t scope the fix until you’re in it.

A compressor that might be a capacitor or might be a dead compressor, a rooftop unit throwing an intermittent fault, a no-cool call at a restaurant in July. You bill your loaded rate plus parts at your marked-up cost, usually with a trip charge or a one-hour minimum so a fifteen-minute reset still covers the roll.

The upside is you never eat an ugly surprise. The downside is the client hates the open-ended number, especially commercial clients with a budget process. That’s why so many of these calls carry a not-to-exceed cap, and blowing past that cap without approval is one of the most common ways HVAC shops give away billable hours. If you deal with NTE limits, here’s how the caps and the approval step should work so an overage doesn’t turn into a write-off.

Flat rate for known repairs

Flat rate is for work you’ve done a hundred times. A capacitor swap, a contactor, a condenser fan motor, a standard startup.

You price the job, not the clock. The client gets one number up front, they say yes or no, and a fast tech who nails it in half the book time makes you more money instead of billing less. It kills the argument about whether the tech was slow, because you’re selling the repair, not the hours.

The work is building your own price book from your real costs: parts at your marked-up price, plus the labor time the job actually takes at your loaded rate, plus your margin. Once it’s built, quoting is fast and consistent, and every tech quotes the same number instead of freelancing it in the parking lot.

Maintenance contracts smooth the whole year

This is the one that changes the business, and it’s the one most small shops underuse.

A maintenance agreement is recurring revenue. The client pays a set amount, monthly or quarterly or annual, and you do scheduled PMs: filters, coil cleaning, belt and bearing checks, refrigerant and electrical checks, the seasonal changeover. Price it off the equipment count and the visit schedule at your loaded rate, same as anything else, plus margin.

Three things it buys you. First, revenue in spring and fall when demand-driven service work is dead, which is what keeps your crew paid year round. Second, first crack at the repairs, because you’re already the shop that knows their equipment, and PM visits surface the failing parts before they blow up. Third, a client who’s locked in instead of calling three shops every time something breaks.

Price the PM work to be profitable on its own. Don’t give away the maintenance to get the repairs. Do both at a real margin.

Running all three models means tracking a lot of moving parts, agreements, PM schedules, hourly tickets, and flat-rate quotes, across every account. We built commercial HVAC software to keep the recurring PM visits, the service calls, and the quotes in one place, and the same work order tools carry your price book and NTE caps into the field. When the invoice is done it can push straight into your books, so the QuickBooks sync means you’re not re-keying every ticket.

Set the loaded rate first, pick the model that fits the work, and lean on maintenance contracts to carry the slow months. If you’re running commercial HVAC service and want the PMs, calls, and quotes in one system, see how TradelyHQ handles it.

TradelyHQ

Run dispatch, quotes, and invoices from one place

Work order software built for commercial maintenance shops. First call to paid invoice, without the group texts and spreadsheets.

A

Written by Andres Ponce, who runs operations at a commercial maintenance contractor and built TradelyHQ.

Read more from the blog