bdevy.

Guide · 6 min read

HVAC Parts Markup: How to Price Parts and Labor on a Service Invoice

How to price parts and labour on an HVAC invoice: the two rates a system needs, why a blanket multiplier misprices cheap parts, and the arithmetic behind every figure.

Published 12 September 2026 · BDEVY

# HVAC Parts Markup: How to Price Parts and Labor on a Service Invoice

This article is about the invoice line. If you want the underlying arithmetic of markup against margin — the conversions, the discount maths and the audit to run on your last ten jobs — that is in HVAC markup vs margin, and this one assumes it.

What follows is the narrower, practical question: when a technician fits a $22 capacitor, what number goes on the invoice, and why?


The two-rate rule

Every priced item on an HVAC invoice carries two numbers, and a system that stores only one of them cannot report a margin on anything.

PartsLabour
CostWhat you paid the supplierBurdened hourly cost
PriceWhat the invoice saysCustomer labour rate

A worked line:


Run capacitor (dual 45/5)
  Cost      $22.00
  Price    $118.00
  Profit    $96.00
  Markup    $96 ÷ $22  = 436.4%
  Margin    $96 ÷ $118 =  81.4%

Both percentages describe the same $96. They are not interchangeable and the gap between them is enormous at this end of the scale.


Why a flat multiplier misprices the cheap parts

The common approach is one multiplier across everything. It breaks at both ends, and it breaks worse at the bottom.

Take a 3× multiplier:

PartCostAt 3×Profit
Capacitor$22$66$44
Contactor$26$78$52
Condenser fan motor$168$504$336
Compressor$1,180$3,540$2,360

The capacitor at $66 does not cover the work around it. Somebody sourced it, stocked it, carried it on the van, warranted it and did the paperwork. Those activities cost roughly the same whether the part is $22 or $1,180, and a flat percentage pretends they scale with the part price.

Meanwhile the compressor at $3,540 is a number the customer will price-check online in about forty seconds.

The usual correction: a sliding scale

Part costTypical multiplier shape
Under $50Highest — the handling dominates the part
$50–$250High
$250–$1,000Moderate
Over $1,000Lowest — large ticket, comparison-shoppable

Deliberately no numbers in that table. The right multipliers depend on your overhead, your market and your billable-hour ratio, and any specific figure printed here would be somebody else's business rather than yours.

What the table does say is the shape: cheap parts carry more, expensive parts carry less, and one flat percentage is wrong at both ends.

A different way to think about small parts

Rather than a multiplier, a floor:


Price = greater of (cost × multiplier) or (minimum part charge)

A minimum charge per part fitted reflects the truth that handling a part has a fixed cost. It also stops the awkward outcome where a $4 item gets invoiced at $12 and costs you more than that to have put on the invoice at all.


Labour: the rate you bill is not the rate it costs

The same two-number rule, and this is where more money is lost because the hours are bigger.


Customer labour rate    $125.00/hr   ← on the invoice
Burdened labour cost     $45.00/hr   ← what the hour costs you
Margin on labour                      64.0%
Markup on labour                     177.8%

Burdened means wage plus employer payroll taxes, workers' compensation, liability insurance, paid time off and any benefits — divided across the hours actually billable rather than the hours paid. That last division is the part most often skipped, and it is what separates a burdened rate from a wage with a bit added.

Costing a $28/hour technician at $28/hour understates a sixteen-hour installation by well over a hundred dollars before overhead enters the picture.

HVAC labour rate calculator →


Two technicians, one job

The arithmetic that catches people out on installations:


2 technicians × 7 hours  = 14 labour hours

Charged   14 × $125 = $1,750.00
Cost      14 ×  $45 =   $630.00
Profit                 $1,120.00   (64.0% margin)

The hours multiply by the head count. An invoice that says "7 hours" when two people were there for seven hours each has just given away half the labour.


What the invoice should actually show

Two defensible approaches, and one that is not.

Itemised. Every part and every labour line, priced separately. Transparent, and the customer can see exactly what they bought. It also invites line-by-line negotiation and lets them price the compressor online.

Flat-rate. One price for "capacitor replacement" covering the part, the labour and the truck. Faster to quote, no arithmetic on the driveway, and the customer knows the number before work starts. The internal cost split still has to exist — it just is not on the document.

Not defensible: itemising everything except the number you would rather not discuss. A customer who can see every line but one will ask about that one.

Whichever you choose, be consistent. Two advisors quoting the same repair $200 apart is a bigger problem than either of their prices.


What discounting a part actually costs

At a 65% margin, every dollar of discount comes straight off the profit — it does not reduce the cost of the part at all.


Part priced at $118, costing $22
  Profit at full price            $96.00
  Profit after a 10% discount     $84.20
  Profit given up                  $11.80  =  12.3%

A 10% price cut removed 12.3% of the gross profit on that line. At thinner margins it is dramatically worse: on a job priced at a 40% margin, 10% off the price gives away a quarter of what you were going to make.

Work yours out: markup and margin calculator →


Setting your own numbers

Three inputs, all from your own books, none of them available from an article:

  1. Your burdened labour cost. Total employment cost for field staff ÷ billable hours.
  2. Your overhead as a share of revenue. Annual overhead ÷ annual revenue.
  3. The net profit you want.

Roughly: the gross margin you need is your overhead share plus your target net. If overhead runs at 35% of revenue and you want 10% net, you need gross margins around 45% to stand still — and that is a starting point for a conversation with your accountant, not a rule.

The number nobody can give you is what the market will pay. That one comes from quoting jobs and watching what closes.


The practical test

Take your last ten invoices. For each one, work out the gross profit and the gross margin: revenue pre-tax and after discount, less parts at cost, less burdened labour, less the drive.

Three things usually show up:

  • The margin on small repairs is better than expected
  • The margin on installations is worse than expected
  • At least one job lost money, and it was not the one anybody would have guessed

You cannot run that audit unless the cost was recorded at the time. Which is the whole argument for job costing being part of invoicing rather than an exercise you do afterwards.

See cost and price on every line →

hvac parts pricing hvac labor pricing hvac software for contractors

Turn missed calls into booked jobs

Every unanswered call gets a text back within seconds, every lead gets followed up, and the schedule fills without another person in the office.