"> Pricebook Guide for HVAC Contractors: How to Price for Profi | Profitability Partners

Pricebook Guide for HVAC Contractors: How to Price for Profit, Not Just Revenue

Most HVAC contractors have one of two problems with their pricebook: either they don’t have one, or the one they have was built three years ago and hasn’t been updated for material cost inflation.

The gap between these two extremes is where profit lives. A structured, regularly maintained pricebook aligned to your actual costs and market positioning can add 3-5 percentage points to your gross margin. Neglect it, and you’re leaving $100K-$400K per year on the table depending on your size.

We’ve reviewed pricing across 50+ HVAC companies. The difference between a 40% margin shop and a 50% margin shop often comes down to pricebook discipline, not technician efficiency or sales skill.

See exactly where your margins are leaking

We pull your numbers apart and hand you the 3–5 highest-impact fixes, ranked by dollar impact.

See how we fix margins →

Why Most HVAC Contractors Miss on Pricing

The problem isn’t laziness. It’s confusion between markup and margin, poor cost tracking, and the assumption that “market rate” is carved in stone.

Markup is what you add to cost. Margin is what remains after cost. Most contractors calculate markup correctly but price for margin incorrectly—or worse, don’t distinguish between the two at all.

Example of the mistake: Equipment cost is $2,000. Owner thinks “I’ll add 40% markup.” Price is $2,800. Owner feels good about 40% markup. But gross margin on that job is only 29% ($800 profit / $2,800 revenue). If actual labor and overhead on that job is 25% of revenue, net profit is 4%. That’s not sustainable.

How to actually calculate each one: The mistake is treating the markup percentage as your profit percentage. It isn’t, because the two are measured against different bases. Markup divides profit by cost: ($2,800 − $2,000) ÷ $2,000 = 40% markup. Margin divides that same profit by revenue: $800 ÷ $2,800 = 29% margin. Same $800, different denominator—and the denominator is what matters, because your profit lives inside what the customer paid you, not inside what you paid your supplier.

The formulas:

The math most owners need to relearn: If your target gross margin is 40%, your markup needs to be 67% (add 67% to cost to reach 40% margin). If it’s 35% margin target, markup is 54%. These aren’t negotiable—they’re math.

Flat Rate Pricebook Fundamentals

A flat rate pricebook assigns a fixed price to each common job type, independent of time. Install a 14.3 SEER2 heat pump, the price is $4,200. Service call with a refrigerant recharge, the price is $295. Done.

This is the dominant model in HVAC for good reason: it’s simple, it’s transparent to customers, and it aligns technician incentives with efficiency (they want to complete jobs quickly).

But building one requires three things most contractors skip: cost accounting, market research, and discipline.

How to Build Cost into Your Pricebook

Start with your material cost. This isn’t list price from your supplier—it’s your actual landed cost, including freight, waste, and volume discounts.

Example: An entry-level 14.3 SEER2 single-stage heat pump. Supplier price is $1,850. Your account gets 8% volume discount = $1,702 net. Freight is $80. Misc hardware (disconnect, caps, sealant) is $45. Your actual material cost is $1,827.

Many contractors use supplier list price ($1,850) or even add contingency on top (“I’ll use $2,000 to be safe”). This inflates your calculated cost and makes your pricing too aggressive—you’re leaving margin on the table unnecessarily.

Document it in a spreadsheet: Equipment code → Equipment name → Unit supplier cost → Volume discount % → Freight → Hardware → Total material cost. Update quarterly as supplier pricing changes.

Then add labor cost. How many hours does a heat pump installation typically take? If it’s 6 hours and your technician cost (fully loaded, including payroll tax and benefits) is $38.16/hour, labor cost is $229. Your direct job cost is $1,827 + $229 = $2,056.

Price it for a 50% gross margin: $2,056 ÷ 0.50 = $4,112. Your pricebook entry: 14.3 SEER2 heat pump install = $4,200 (rounded up, a 51% gross margin). That 51% is gross margin, not profit. Gross margin dollars are what fund overhead (dispatch, office, rent, insurance, admin), and what’s left over is net—but overhead gets absorbed by volume across all your jobs, not priced into any single ticket. More on that distinction below.

This is dramatically different from guessing.

Good, Better, Best Pricing Tiers

The best pricebooks don’t have one price per job—they have tiers. Good (budget), Better (mid-range), Best (premium). This drives profitability and customer choice.

Heat Pump Replacement Example:

Tier Equipment Direct Cost (materials + labor) Price Gross Margin %
Good Entry-level single-stage 14.3 SEER2 $2,056 $4,200 51%
Better Mid-tier two-stage 15.2 SEER2 $2,629 $5,500 52%
Best Premium variable-speed 16+ SEER2 + desuperheater $3,367 $7,200 53%

Notice: margin % is similar across all three, even though absolute margin grows. This is intentional. If Good tier has 50% margin and Best tier has 70%, your sales team will push Best on every call. Better margin consistency means they’ll legitimately recommend what the customer needs, not what pays them most.

Also notice: the premium tiers carry the higher margin %—Best at 53% versus Good at 51%. Why? Because premium equipment commands more pricing power per dollar of cost, and the customers choosing Better or Best are less price-sensitive. The gap stays small on purpose: margin % climbs only modestly as you move up tiers, so the dollars grow with the ticket while recommendations stay honest.

Cost-Plus vs. Market-Based Pricing

Cost-plus pricing is what we just described: calculate your cost, add your target margin, set price. It’s rational and defensible. But it ignores market reality.

If your cost-plus calculation says “heat pump install = $4,200” but the market in your area is only paying $3,800, you either need to lower your target margin, lower your costs, or lose deals.

Market-based pricing reverses the logic: what can we charge in this market? What margin will that deliver? Can we operate at that margin?

The truth: You need both. Start with cost-plus to know your floor. Then check market rates via mystery shops, competitor websites, or trade data. If market is higher, you have upside. If market is lower, you have a problem (either your costs are too high, or the market doesn’t value your service as much as you think).

Good news: HVAC typically prices market-above cost. Residential heat pump installs in most markets command $4,000-5,500. If your direct cost is $2,056, you have healthy margin room to work with.

For service and maintenance, market is tighter and more competitive. Mystery shop your top three competitors. If they’re all charging $189 for a service call and you’re at $229, you’re either premium-positioned or overpriced. Know which one you are.

Material Cost Fluctuation and Seasonality

HVAC equipment costs are volatile. Refrigerant (especially with the industry’s transition from R-410A to R-454B and R-32), copper, and compressor prices move with commodities. Your supplier might increase pricing 8-12% in January and hold until June, then drop 5% when volume slows in fall.

Most contractors ignore this and leave pricing flat. Smarter ones adjust quarterly.

How to handle it:

Review supplier pricing quarterly (January, April, July, October). If unit cost on your top 10 SKUs has shifted more than 3%, recalculate your pricebook. A $200 increase in equipment cost on a $2,600 BOM needs to move your price by at least $200 just to hold margin dollars—closer to $400 to hold margin percent.

Don’t wait for material to become unprofitable. Contractors who hold pricing for 18 months while costs rise from $1,600 to $1,850 are eating the difference. By the time they adjust, they’ve lost $30K-$50K in margin.

Also: document your material cost baseline. When copper spiked in 2022, many contractors didn’t adjust pricing because they weren’t tracking baseline costs. Now that copper has normalized, they don’t know if they should adjust down. Discipline here prevents three years of margin drift.

Labor Rate Calculations: Getting It Right

Your labor cost isn’t just hourly wage. It’s wage + payroll tax (employer FICA, unemployment) + benefits (health insurance, workers comp) + allowances (paid time off, tools, training).

If you pay a technician $28/hour in wages, their fully-loaded cost is probably closer to $36-40/hour.

Calculation:

If you’ve been using $28/hour in your pricebook math, you’re underestimating labor cost by 36%. That’s killing your margin.

For pricebook purposes, use the fully-loaded number. A 6-hour install at $38.16/hour = $229 labor cost, not $168.

One wrinkle worth knowing: if your techs are on commission or performance pay, labor cost becomes a percentage of the job rather than an hourly rate—and that changes who eats an overrun. An install that runs two hours long doesn’t cost you more, because the tech is absorbing the efficiency risk. But it cuts both ways: on performance pay, an underpriced pricebook shortchanges your technicians, not just the company—and if that happens consistently, your best guys leave. Price the book right and performance pay aligns everyone: the tech earns more by being efficient, and your margin holds either way.

Overhead: Know the Number, But Don’t Price to It

Beyond materials and direct labor, you have overhead: dispatchers, CSRs, office staff, rent, utilities, insurance, accounting, marketing, fleet, and software. Most healthy HVAC shops run 18-25% of revenue in overhead (excluding direct labor and materials). Know your actual number: total annual overhead divided by annual revenue.

Quick reality check: An $8M revenue shop at 20% overhead is carrying $1.6M a year in support costs—a dispatch and CSR team, office management, rent, insurance, fleet, software, marketing. That’s normal at that size. The question isn’t how to make each job “pay for” a slice of it. The question is whether enough gross margin dollars flow through the shop each month to absorb it.

Here’s where owners go wrong: the P&L looks thin, so they reach for the pricebook and raise prices to “cover overhead.” But overhead doesn’t drive pricing. Your pricebook’s job is to protect gross margin on every job; volume’s job is to cover overhead. Those are two different problems with two different fixes:

The breakeven math: monthly overhead ÷ blended gross margin % = the monthly revenue you need before the shop makes a dollar. That $8M shop carries about $133K a month in overhead; at a 50% blended margin, it needs roughly $267K in monthly revenue just to cover it. Everything above that drops through. If you’re consistently short of that line, you have a volume problem—and no pricebook change will fix it.

Curious what your margins should actually be?

We break out true profit by job type, location, and crew — the view most owners never get. That’s the core of our fractional CFO work.

See how we fix margins →

How Pricebook Errors Compound

Small pricing errors become catastrophic over time. A 3% average pricing error (underpricing each job by ~3%) on an $8M revenue business is $240K in lost gross profit annually. Most contractors have errors of 5-10%.

Sources of compound error:

Error 1: Stale equipment costs You updated pricebook 18 months ago. Equipment costs have risen 8%. Every job is now 3-4 points under-margined.

Error 2: Labor estimate drift When you built the pricebook, heat pump installs averaged 5.5 hours. Now they’re 6.5 hours because of more complex installs or older homes. You’re underbilling labor on every job. (On hourly pay, you eat that drift directly. On performance pay, your techs eat it—either way, the fix is honest book hours.)

Error 3: Overhead creep You hired a second dispatcher and increased insurance. Overhead went from 18% to 22%. Careful with this one: it compresses net margin, but it is not a pricebook problem—it’s a volume problem. The added capacity has to convert into more completed jobs, or the cost has to come back out. Raising prices to cover it misdiagnoses the issue.

Error 4: Discount creep Sales team started offering “10% off for monthly budget plans” and “15% off seasonal promotions.” Average discount is now 8% across all jobs. Pricebook prices are baseline, but realized pricing is 8% lower.

Each error alone is manageable. Together, they compress your margin from 50% to 44% without anyone noticing until year-end financials.

ServiceTitan Pricebook Features

If you’re using ServiceTitan (or similar software), use the built-in pricebook module. It allows:

Job type templates: Heat pump install, service call, furnace replacement, etc. Each has a default price, labor hours, and material costs pre-loaded.

Tiered pricing: Good/Better/Best options visible to technicians during proposals. The interface guides them to upsell intelligently.

Material cost sync: Link your supplier account or manually update material costs quarterly. The system automatically recalculates pricing if margins drift.

Discount guardrails: Set approval rules (e.g., discounts >10% require manager approval). Prevents technician discretion from compressing margin across jobs.

Reporting: See realized prices vs. book prices. If technicians are discounting by an average 12%, you have visibility and can course-correct.

Many contractors pay for ServiceTitan but ignore the pricebook module. If this is you, spend 4 hours setting it up. It will return 100x in margin protection.

Markup Targets by Category

Not all jobs should have the same markup. Service and maintenance should be higher-margin than installs (simpler, faster, fewer moving parts). Installs have complexity and warranty overhead.

Job Category Target Gross Margin % Implied Markup Reasoning
Monthly maintenance contracts 55-60% 122-150% Recurring, predictable, low service cost
Service calls (diagnostic + repair) 50-55% 100-122% Variable labor, some material cost
Equipment installation (standard) 42-50% 72-100% High material cost, warranty overhead, complexity
Custom or retrofit work 38-45% 61-82% Unknowns, complexity, extended labor

If your service margin matches your install margin, you’re under-valuing service. High-margin service work is what lifts your blended margin—installs are your big-ticket revenue drivers.

A healthy HVAC blended margin sits right around 50%. Say 60% of revenue comes from installs (45% margin), 30% from service (55% margin), and 10% from maintenance contracts (60% margin): the weighted blend is 49.5%—essentially 50%, right where a well-priced shop should sit.

Next Steps

If you don’t have a written pricebook, build one this week. Template: equipment name → material cost (landed) → labor hours → labor cost (fully loaded) → target gross margin % → price. Start with your top 15 job types.

If you have a pricebook, audit it. Pull the last 3 months of invoices. Calculate actual margin on the top 20 jobs. If actual margin is more than 2 points lower than pricebook margin, you have a pricing discipline problem (discounting, labor drift, or overhead creep).

Link your pricebook to operational reporting. Track realized price vs. book price by job type, monthly. This is your early warning system for margin compression.

Want help auditing your pricebook?

We’ll review your current pricing, calculate your fully-loaded cost stack, and tell you exactly where your margins are leaking — and what to charge to get them back.

Book a Free Consultation →

Matthew Mooney
About the Author
Matthew Mooney

Matthew Mooney is a co-founder of Profitability Partners and a former private equity professional with deep experience in home services M&A. Over the course of his career, Matthew has reviewed over 200 acquisitions of HVAC, plumbing, roofing, and electrical companies. He previously worked at Apex Service Partners, one of the largest residential home services platforms in the country — giving him a rare, buyer-side perspective on what drives valuation, profitability, and deal structure in the trades. He now helps contractors and home services business owners optimize their financials, plan for exits, and maximize the value of their companies.

Connect on LinkedIn

Matthew Mooney

Matthew Mooney is a co-founder of Profitability Partners and a former private equity professional with deep experience in home services M&A. Over the course of his career, Matthew has reviewed over 200 acquisitions of HVAC, plumbing, roofing, and electrical companies. He previously worked at Apex Service Partners, one of the largest residential home services platforms in the country — giving him a rare, buyer-side perspective on what drives valuation, profitability, and deal structure in the trades. He now helps contractors and home services business owners optimize their financials, plan for exits, and maximize the value of their companies.

See where your margins are leaking

Book a free consultation with a senior partner. We'll review your situation and tell you honestly if we can help.

Book Free Consultation →
Find Out What Your Margins Should Be →

One HVAC client went from 9% to 17% net margin — that’s +$7M in exit value.

Real client result — not a hypothetical

In a free 30-minute call, we’ll show you exactly where your margins are leaking — and what to fix first.

Your true margins, fully loaded — we calculate your real cost per job including labor burden, materials, and subcontractor costs, then benchmark against top performers so you see exactly where you’re leaving money
The dollar impact of each gap — we quantify what every margin leak and overhead inefficiency is actually costing you per month, so nothing stays hidden
The 3-5 highest-ROI fixes — ranked by impact, so you know exactly where to start
See What You’re Leaving on the Table Free · No obligation · Takes 30 minutes