Research

Contractor margin benchmarks by trade

What margin should a contractor target? The answer depends on trade, job type, overhead structure, and market. This page compiles target gross margin ranges by trade — the numbers profitable operators actually run, not theoretical targets from accounting textbooks.

Understanding gross margin vs net profit

Gross margin = (Revenue − Direct job costs) ÷ Revenue. Direct job costs include labor (at burden rate), materials, and subcontractors. This is the margin on the job itself, before overhead.

Net profit margin = (Revenue − All costs including overhead) ÷ Revenue. This is what is left after overhead is paid. For most contractors, net profit is 5–15% when the business is operating correctly.

The benchmarks below are gross margin targets. To hit a 10% net profit, you need gross margin high enough to cover overhead after the job closes. For a contractor with 25% overhead as a percentage of revenue, you need 35% gross margin to produce 10% net profit.

Gross margin benchmarks by trade

TradeTarget rangeNotes
HVAC service and repair45–60%High labor value, specialized expertise premium
HVAC installation30–42%Equipment cost lowers margin vs service work
Plumbing service45–55%Emergency premium, high diagnostic value
Plumbing new construction25–35%Competitive bids, material-heavy scope
Electrical service42–55%Licensed premium, high liability coverage
Electrical rough-in / new28–38%Material-heavy, volume bids
Landscaping installation28–38%Material-heavy, seasonal demand
Landscaping maintenance40–55%Recurring, low mobilization, predictable
Exterior painting38–50%Labor-intensive, low material cost
Interior painting40–52%Lower weather risk, faster turnover
General contracting15–25%Sub-heavy work, coordination margin
Framing and carpentry30–42%Skilled labor premium, material cost moderate
Roofing30–45%Material-heavy but high labor risk premium
Concrete and flatwork32–44%Equipment-heavy, weather-dependent
Cleaning and janitorial40–55%Low materials, recurring contract potential

These ranges represent gross margin targets for healthy operations. Actual margins vary by market, company size, customer mix, and operational efficiency.

Why margins vary within each trade

Job size

Smaller jobs require higher margin to cover mobilization and overhead. A $500 service call needs 55%+ margin. A $500,000 project can work at 20%.

Customer type

Residential clients pay more per unit of work than commercial clients. Commercial clients provide volume.

Geography

Markets with high labor costs (Northeast, West Coast, Hawaii) support higher margins. Competitive rural markets compress margins.

Demand and backlog

When your schedule is full, raise prices. When the phone is quiet, do not lower them — optimize your sales process instead.

Overhead structure

A lean solo operator with low overhead can compete at lower margins. A company with $20K/month in overhead cannot.

Signs your margin is too low

  • — Revenue grows but bank balance does not improve
  • — You are always waiting on customer payments to make payroll
  • — Busy months feel the same as slow months financially
  • — You are the last one paid after every job
  • — Taking on more work feels like the only solution to cash flow problems

These symptoms indicate margin compression, not volume shortage. More revenue at the same margin produces more of the same problem at a larger scale.

Check your estimate against these benchmarks

Bid Command shows you whether your estimate hits your target margin before you send it.

Related guides