CONSTRUCTION GROSS PROFIT MARGIN BENCHMARKS BY TRADE.
Gross profit margin benchmarks for commercial subcontractors at $3M–$8M: civil and grading 21–25%, electrical 25–29%, concrete 21–24%, SWPPP 24–27%, underground utility 20–24%, mechanical/HVAC 24–28%. Gross profit is revenue minus direct job cost before overhead. If your gross margin is below benchmark, the cause is almost always underpriced bids, untracked equipment costs, or labor variance that is not being caught.
Gross profit margin is the most actionable financial metric for a commercial subcontractor. It shows whether pricing and field execution are working — before overhead gets involved. Net profit can be manipulated by cutting overhead. Gross margin cannot. It reflects whether the work itself is priced and executed at a level that covers direct cost and contributes enough to overhead and profit. This page covers benchmarks by trade and the specific reasons margins miss.
GROSS PROFIT TARGETS — $3M TO $8M REVENUE BAND.
The revenue band matters: These ranges are for $3M–$8M. Below $1M, gross margins should be similar but overhead is proportionally higher. Above $10M, gross margin targets can compress slightly as GCs push harder on sub pricing on larger volumes — but net margin should improve as overhead is spread over more revenue.
THE THREE CAUSES WHEN GROSS MARGIN IS BELOW BENCHMARK.
Overhead Not Fully Applied in Bids
If your overhead rate in bids is 10% when your real overhead rate is 17%, every bid is underpriced by 7 points of gross margin from the start. The job executes perfectly and still misses benchmark because the price never covered overhead correctly. The fix: calculate your real overhead rate and build it into every bid consistently.
Labor Production Rate Variance
You bid 300 linear feet of conduit per crew-day. Your crew is delivering 240. Every phase on every similar project is 25% over on labor before any other variance occurs. Tracking production rates by phase and ground condition on closed jobs and comparing to estimates is the only systematic way to identify and correct this. Without that data, you bid the same wrong rate on every similar project indefinitely.
Equipment Costs Absorbed Rather Than Billed
Owned equipment deployed at an all-in rate that does not cover replacement reserve, idle days, and real maintenance costs is a systematic margin leak. A dozer that costs $980/day to own and operate getting billed at $650/day loses $330 every day it is on site. Build cost basis for every owned machine. Charge that rate on every project. Recover what the equipment actually costs.