The Short Version
Gross profit margin is the number that tells you whether your business model actually works. Revenue minus direct job costs, divided by revenue. It's the margin before overhead and before taxes. Most builders I work with have never calculated it correctly — they're using markup math and arriving at a number that feels good but doesn't reflect what's actually hitting their bank account. The three places margin disappears: untracked direct costs buried in overhead, labor burden rate errors, and change orders that get approved but never billed or billed late. All three have the same fix: get the numbers out of your head and into a job cost system that tracks them in real time.
Sound Familiar?
Signs your gross profit margin is leaking without showing up on your P&L:
- Your markup is 25–30% but your actual profit at job close is closer to 8–12%
- Labor costs feel higher than they should be but you can't pinpoint where they're going
- You approve change orders verbally but they don't always make it into the final billing
- Small material runs and supply trips get paid out of petty cash or your personal card and never hit the job
- Your bank account doesn't reflect the profit margin you thought you were running
What We Found
The Gross Profit Benchmarks for Residential Construction
Let me give you the benchmarks so you have a target, then explain what's pulling most builders below them.
For residential construction businesses at $500K–$3M in annual revenue:
- Custom home building (ground-up): 35–45% gross margin is the target range. Top performers are at 42–48%. Builders below 30% are losing money on a risk-adjusted basis when you account for defect liability and capital tied up in projects.
- Residential remodeling (full gut/addition): 38–48% is healthy. Remodeling has higher unknowns than new construction — you're opening walls and finding what's there. The margin needs to cover that risk. Remodelers below 32% are chronically underbidding scope risk.
- Light commercial or mixed (residential + small commercial): 28–38%, depending on contract type. Commercial work tends to be lower margin but higher volume and more predictable. Fixed-price commercial bids below 25% gross margin are generally not worth the risk.
Now here's the important distinction: gross margin (margin) is not the same as markup (markup). A 40% markup does not produce a 40% gross margin. It produces a 28.6% gross margin. This confusion alone is responsible for most of the profit leakage I see in construction businesses.
Markup vs. Margin: The Math That Matters
If your direct job costs are $100,000 and you apply a 40% markup, you're billing $140,000. Your gross margin is $40,000 / $140,000 = 28.6% — not 40%. To achieve a 40% gross margin, you need a 66.7% markup on costs. Most builders running a 25% markup are actually delivering a 20% gross margin. That's not enough to cover overhead and generate meaningful net profit at $1M–$2M revenue.
The builders I work with who are consistently hitting 38–44% gross margin are doing three things: they know their true direct cost structure (including all labor burden), they capture every change order dollar in their billing, and they run job cost reviews at 30, 60, and 90 days into each project rather than only at close.
The Three Places Gross Profit Margin Disappears
I've seen the same margin leakage patterns across hundreds of builder engagements. They fall into three categories, and all three are fixable with the right tracking system.
1. Direct Costs Miscategorized as Overhead
If a cost is directly attributable to a specific project — materials, labor, subcontractor fees, equipment rental, permits, temporary utilities — it's a direct cost. It belongs in job costing, not overhead. Many builders put expenses like small tool purchases, job site waste disposal, or project-specific insurance riders in their general overhead because it's easier than creating a job cost entry. Every dollar of direct cost that lands in overhead inflates your apparent overhead and deflates your reported gross margin on the specific job that actually drove the cost.
The practical impact: a builder running $1.5M in revenue with $60,000 in annual direct costs miscategorized as overhead is understating their gross profit by 4 full percentage points. That's the difference between a 34% gross margin (weak) and a 38% gross margin (healthy).
2. Labor Burden Rate Errors
Labor burden is the total cost of an employee beyond their hourly wage: payroll taxes (typically 7.65% employer FICA), workers' comp insurance (3–18% depending on trade and state), general liability allocation, health benefits if you offer them, and paid time off. Most builders I work with have a labor burden rate of 28–42% on top of base wages.
The error I see consistently: builders estimate labor using wage rates only and add a small cushion for "burden" — often 10–15%. Their actual burden is 30–35%. That 15–20 percentage point gap in labor burden estimation on a $200,000 labor budget is $30,000–$40,000 in untracked cost. It shows up at year-end as mysteriously lower-than-expected profit.
Calculate your actual labor burden rate once, correctly, with your accountant or bookkeeper. Then embed it in every estimate. Builders who do this typically find their true cost of labor is 18–22% higher than they were estimating.
3. Unapproved, Unbilled, or Late-Billed Change Orders
Change orders that get verbally approved and executed but never formally billed are pure margin destruction. Change orders that get billed 60–90 days after the work is complete are a cash flow problem that often turns into a margin problem when clients push back on aging additions.
In my experience working with builders at the $500K–$3M range, 15–25% of change order value is either never billed or billed so late that clients dispute it. On a project with $80,000 in legitimate change orders, that's $12,000–$20,000 in margin that evaporates because the billing process broke down.
The fix is a documented change order workflow: written change order created before work proceeds, client signature required before execution, invoice issued within 5 business days of completion. JobTread's change order module handles this workflow natively. The builders who configure it correctly capture 95%+ of their change order value. The builders who rely on verbal approvals capture 70–80%.
How to Calculate Your Current Gross Margin (and Find the Gap)
Here's the calculation I run with every builder at the start of an engagement:
Step 1: Pull your last 12 months of revenue from your accounting system. This is the number you're probably comfortable with.
Step 2: Identify every direct job cost from the same period. Direct costs are: materials (all of it), labor (all field hours at full burden rate), all subcontractor payments, equipment rental, permits, temporary utilities, project-specific insurance, and any other cost you can attribute to a specific job. Do not include: your salary, office rent, truck payments, software subscriptions, or marketing. Those are overhead.
Step 3: Subtract direct costs from revenue. That's your gross profit.
Step 4: Divide gross profit by revenue. That's your gross margin percentage.
Most builders doing this exercise for the first time land between 22% and 32% gross margin. A few are higher. Almost none are where they thought they were, because the markup-vs-margin confusion and the direct cost miscategorization problems have been working against them for years without anyone surfacing the actual number.
The target is 38–44% for most residential builders. Getting there doesn't require charging more or winning more jobs. It requires: calculating the real direct cost of every bid, capturing every change order dollar, and running job cost reviews that catch margin erosion before it becomes unrecoverable.
This is the work Go First's job costing and financial systems engagement is built around. The average builder I work with closes the gap between their current gross margin and their target by 8–12 percentage points within two operating cycles. At $1.5M in revenue, a 10 percentage point improvement in gross margin is $150,000. That's not a projection — that's what the numbers look like when the tracking is right and the billing is complete.
Find Out Where Your Margin Is Going
Book a strategy call to review your current gross margin, identify the three most likely leakage points, and build a plan to close the gap.
Book a Strategy Call →Frequently Asked Questions
A healthy gross profit margin for a residential construction business at $500K–$3M is 35–45%, depending on project type. Custom home builders should target 38–45%. Residential remodelers should be at 40–48% to account for scope uncertainty risk. Builders consistently below 30% gross margin are typically underestimating direct costs, particularly labor burden, and leaving change order billings on the table. Gross margin below 25% in residential construction is not viable once overhead is accounted for.
Markup is the percentage added to cost to arrive at a price. Margin is gross profit divided by revenue. A 40% markup produces a 28.6% gross margin — not 40%. To achieve a 40% gross margin, you need to mark up costs by 66.7%. Most builders using a 25–30% markup believe they're running 25–30% margins. They're actually running 20–23% gross margins, which is rarely enough to cover overhead and produce meaningful net profit.
Three steps move the needle fastest: calculate your true labor burden rate and embed it in every estimate (most builders underestimate labor burden by 15–20%), implement a written change order workflow so 95%+ of scope additions get billed (verbal approvals lose 15–25% of change order value), and audit your chart of accounts to ensure direct job costs aren't miscategorized as overhead. Fixing all three typically improves gross margin by 8–12 percentage points within two operating cycles.
Three reasons are responsible for most of the gap between estimated and actual profit: labor costs are higher than estimated (labor burden — payroll taxes, workers' comp, benefits — is commonly underestimated by 15–20%), change orders aren't getting billed or are being disputed because they weren't documented properly, and direct job costs are landing in overhead instead of job cost codes. All three problems show up as mysteriously lower profit at year-end without an obvious cause.
Gross profit margin for a construction project equals (revenue minus all direct job costs) divided by revenue, expressed as a percentage. Direct job costs include materials, full labor burden, subcontractor payments, equipment rental, permits, and project-specific insurance. Do not include overhead costs (salary, office, marketing, vehicles) in direct costs — those belong in your operating expense calculation. Run this calculation at project close and compare to your original estimate to identify where margin was gained or lost.