Why this formula matters: A contractor who estimates $300K direct and applies a 25% markup bids $375K — which looks similar. But that bid is priced on markup, not on overhead and margin. If actual overhead is 15% and target margin is 6%, the markup needed is 27% — not 25%. That 2-point gap is $7,500 on a $300K direct-cost job. Across 20 jobs per year, it's $150,000 of margin given away.
Labor (including burden), materials, subcontractors, equipment assigned to the job, mobilization, consumables, small tools, and cleanup. The failure mode: underestimating labor burden (typically 25–32% on top of wages for taxes, workers comp, benefits), leaving mobilization out of the estimate, and not estimating cleanup and demobilization. Each one seems small. Together they represent 3–5 points of margin on many jobs.
Total SG&A for the last 12 months divided by total revenue. Not last year's rate. Not an estimate. Actual. If you haven't recalculated in 90 days, the number you're using is probably wrong. Use the overhead rate calculator to run it now. The failure mode: using a stale overhead rate while overhead has been creeping — the most common cause of shrinking margins in growing companies.
Decide your target net margin before you start pricing the job — not as a check at the end after the bid number is already in your head. For most commercial subcontractors, 5–8% net margin is a healthy target. The failure mode: setting the target after seeing the bid number, then adjusting the target to match whatever margin the bid happens to produce. That's not pricing to a margin — that's rationalizing a number.
A 20% markup is not a 20% margin. A 20% markup on $100 cost = $120 price = 16.7% margin. Most contractors who say "I add 20%" mean margin but apply markup — and every bid has a 3+ point margin deficit built in. Use the markup vs. margin calculator to find your number.
If your overhead rate was 12% two years ago and is actually 17% today, every bid priced at 12% overhead is shipping with a 5-point shortfall. At $400K revenue per job, that's $20,000 of margin given away before the first crew arrives. Recalculate quarterly. Update the formula every time.
If the owner is spending time in the field or managing a specific job, that time has a cost. Either it's a direct cost (bill it to the job) or it's an overhead cost (it's in the overhead rate). If it's neither — if it's just "free" time the owner gives to jobs — then the bids are systematically underpriced by the value of that time.
Competitive pressure is real. Shading a bid down to win a relationship or fill a slow quarter is sometimes tactically correct. But the bid needs a floor: the minimum price at which the job recovers overhead and delivers at least breakeven on net margin. Shading below the floor is not tactical — it's funding a job out of reserves.
Three inputs: actual direct costs (labor with burden, materials, subs, job equipment), actual overhead rate (SG&A ÷ revenue, recalculated quarterly), and target net margin. Formula: bid price = direct costs ÷ (1 − overhead rate − target margin). Example: $300K direct costs, 15% overhead, 6% margin target = $300K ÷ 0.79 = $380K bid price.
5–8% net margin is a healthy target for most commercial subcontractors. Gross margin (before overhead) typically runs 25–35% depending on trade. The right number is the one your overhead rate and competitive position allow — but you have to know your actual overhead rate to know what's achievable.
Markup is applied to cost to reach price. Margin is profit as a percentage of price. A 25% markup on $100 cost = $125 price, but the margin is 20% ($25 ÷ $125). Most contractors who think in markup terms underestimate what margin they're actually delivering. Use the markup vs. margin calculator to see the exact difference.
SPM builds the job costing structure that makes these inputs accurate — and keeps them accurate every month.
Schedule a Free Call →