Construction Project Profitability: Why Most Jobs Underperform (and How to Fix It)
The average net profit margin for a general contractor is 5-6%. According to multiple industry benchmarks for 2025-2026, that means for every $1 million in revenue, a typical GC keeps $50,000 to $60,000 after paying all costs.
That's a thin margin. One missed subcontractor scope. One material cost spike. One change order the owner disputes. Margin gone.
The construction industry operates on some of the tightest margins of any business sector, yet it carries substantial risk. Projects are complex, labor-intensive, and exposed to forces outside any contractor's control — weather, material markets, design errors, owner changes. The contractors who consistently protect their margins aren't luckier than everyone else. They have better systems.
This article breaks down exactly why construction jobs underperform — and what you can do about it before the next bid goes out the door.
The Real Reasons Construction Projects Go Over Budget
Construction cost overruns are not random events. They follow predictable patterns, and understanding those patterns is the first step toward eliminating them.
A McKinsey study found that construction projects run an average of 80% over budget due to inadequate upfront planning. Separately, data from the Construction Industry Institute shows that 70% of construction cost overruns stem from errors in initial cost or quantity estimates. These two findings point to the same place: the estimate.
Here are the root causes, ranked by frequency:
Inaccurate original estimates. The bid was wrong — quantities were missed, labor was underestimated, or pricing didn't reflect local market conditions. This is the most common cause of project overruns and the most preventable.
Scope creep and unpriced changes. The project grows through owner changes and design revisions, but change orders aren't priced aggressively enough — or aren't submitted at all. GCs often absorb small changes informally, which compounds into significant cost exposure over a long project.
Subcontractor scope gaps. A trade was priced, but the sub's scope didn't cover everything the project required. The GC fills the gap out of pocket or fights over a change order.
Material cost escalation. Pricing locked in at bid time moves significantly by the time procurement happens. On longer projects especially, this can be substantial.
Labor productivity shortfalls. Field labor is slower than estimated — whether from poor site conditions, rework, crew learning curves, or inadequate supervision. Labor overruns are particularly expensive because they're hard to recover.
Unreported or late-identified problems. Unforeseen site conditions, hidden utility conflicts, or design errors discovered late in construction cause costly rework.
Every one of these has a mitigation strategy. Most of them start with a better estimate.
Understanding Your True Project Costs
Before you can protect your margins, you need a clear model of where money goes. Construction project costs fall into three categories, and each behaves differently.
Direct Costs
Direct costs are directly tied to project production: labor, materials, equipment, and subcontractor costs. These are what most contractors think of when they think about project cost. They should be estimated from the project drawings and specifications, verified against actual market pricing, and tracked against budget weekly.
For commercial GCs, subcontractor costs typically represent 60-80% of total direct costs. This means subcontractor pricing accuracy is the single biggest driver of estimate accuracy.
Indirect Costs (General Conditions)
General conditions costs are project-specific overhead that doesn't fit cleanly into a trade budget: project supervision, temporary facilities (trailer, toilets, fencing), dumpsters, temporary utilities, safety programs, quality control, and on-site management. These costs are real and significant — typically 5-12% of the direct cost on commercial projects — but they're frequently underestimated or estimated as a flat percentage without being actually priced.
Failing to price general conditions accurately is a reliable path to margin erosion. Each project has different supervision requirements, site logistics, and duration-related costs. Plugging in a standard percentage without thinking through the specific project conditions consistently leaves money on the table.
Company Overhead
Overhead covers the cost of running the business: office rent, administrative staff, insurance, bonding, vehicles, software, and owner compensation. Overhead must be allocated to projects through your markup rate. If your actual overhead rate has grown but your markup hasn't kept pace, you're absorbing overhead in your profit.
Review your overhead rate annually. When you hire a new project manager, add estimating software, or move to a larger office, that cost needs to be reflected in your markup structure.
How Estimating Errors Destroy Your Profit Margin
An estimating error doesn't just reduce your profit on one job — it compounds.
Consider a $5M commercial project with a 10% margin target ($500,000 profit). If the estimate misses $150,000 in scope — a couple of missed trades, underpriced general conditions, and labor rates that were six months stale — the project delivers $350,000 instead of $500,000. That's a 30% reduction in expected profit from a 3% error in the estimate.
The math works in reverse too. A contractor who consistently estimates accurately can lower their bid by the amount that competitors are over-padding for safety, and win more work at better margins.
Common estimating errors by type:
*Quantity errors*: Missing square footage in a finish takeoff, undercounting structural members, missing roof penetration flashings. These compound in the field when materials run short.
*Labor rate errors*: Using historical labor rates that don't reflect current market conditions — especially relevant given that wages in construction have increased 8-12% annually in recent years due to persistent labor shortages, according to construction cost data from 2026.
*Scope gap errors*: Not having a subcontractor bid for a trade, or having a bid that doesn't cover the full scope. The GC fills the gap.
*Markup errors*: Applying overhead and profit to direct costs only, without accounting for general conditions — understating the true markup needed to cover all company costs.
*Specification misreads*: Pricing to standard materials when the specs require a specific product or system at a premium. This is most common in MEP and architectural finishes.
Estimating errors are not inevitable. They're a function of process rigor, time spent on plan review, and the quality of the pricing data used.
The Subcontractor Coverage Problem: Are You Leaving Money on the Table?
Here's a number that should get your attention: on a typical $3M commercial project, the MEP trades alone can represent $700,000 to $1,000,000 in cost. The spread between the high and low qualified bid for a single mechanical scope can be 10-20%.
If you're working from one bid per trade, you have no idea whether you're paying market rate.
Most GCs don't get broad sub coverage on every project because it's time-consuming. Getting three bids per trade means creating a scope document, reaching out to multiple subs per trade, answering their questions, following up, and then organizing and comparing the responses. On a mid-size project with 15-20 subcontractor scopes, that's a significant workload.
The result is that GCs default to their short list of trusted subs — and then wonder why a competitor with the same experience comes in 8% lower.
Broad sub coverage doesn't just lower your number. It gives you market intelligence you can use across every subsequent bid. When you see three bids for a plumbing scope, you understand what the work costs. When you see one, you're guessing.
The contractors who consistently produce the most competitive numbers have systems for driving coverage — whether through a large internal network, broker relationships, or technology that automates the outreach.
Material Cost Volatility: Protecting Your Margins in 2026
Material cost volatility is no longer a periodic problem. It's the operating environment.
In early 2026, the Associated General Contractors of America reported that the producer price index for nonresidential construction materials rose 3.1% year-over-year in February 2026 — with aluminum mill shapes up 39.1% and steel mill products up 20.9% in that same period. Copper and brass mill shapes increased 15.1%. These are not minor fluctuations.
For GCs holding fixed-price contracts signed months earlier, this creates direct margin exposure.
Strategies to protect yourself:
*Include escalation clauses.* On projects with long procurement windows or extended schedules, include contract language that allows for material price adjustments above a defined threshold. Owners may push back, but sophisticated owners understand the current environment.
*Build real contingency.* The traditional 5-10% contingency is no longer adequate for material exposure alone. In 2026, many estimators are using 15-20% for material escalation contingency on projects with significant metal content.
*Early procurement.* On projects where design is complete, locking in material pricing for long-lead items (structural steel, mechanical equipment, switchgear) removes the exposure. This requires coordination with owners on early procurement authority.
*Supplier relationships.* GCs with strong supplier relationships get earlier warning of price changes and sometimes price protection that isn't available off the street. These relationships are worth cultivating.
*Shorter bid validity windows.* Reduce your offer validity from 60-90 days to 30 days on projects with high material cost exposure. This limits the window in which you're locked into a number that may no longer reflect market conditions.
How to Use Historical Data to Predict Project Profitability
The best predictor of future project performance is past project performance — on similar work, in similar conditions, with similar teams.
Contractors who maintain organized historical cost data can answer questions like: What is our actual cost-per-square-foot on office tenant improvements? What is our average general conditions rate on projects between $2M and $5M? Which subcontractors consistently deliver on schedule? Where do our estimates most often miss?
Building this database doesn't require sophisticated software. A well-organized project tracking spreadsheet — estimated vs. actual cost by trade, final margin, project type, size, and region — gives you the raw material to spot patterns.
Use this data to:
- Validate current estimates against similar historical projects. If your estimate for a 10,000 SF office TI is 30% below your historical average cost per square foot, that's a flag worth investigating before the bid goes out.
- Identify your most profitable project types. Almost every GC has one or two categories where they consistently beat budget. This is usually because they have better sub relationships, better local market knowledge, or more field experience in that type. More work in your highest-margin categories is straightforward growth strategy.
- Improve labor productivity assumptions. If you consistently go over on certain labor categories, your productivity factors are wrong. Adjust them.
- Calibrate your sub pricing. When you track actual subcontractor costs against initial bids, you learn which subs consistently underperform (come in with add-ons) and which are reliable. That intelligence is worth real money over time.
Historical data also serves as a check on optimism bias — the tendency to assume that the next job will go better than the last one. Data-driven estimates are more honest about where risk lives.
Tools and Systems That Improve Job Profitability
The margin gap between the best-performing GCs and the rest isn't random. High performers consistently invest in systems that improve estimating accuracy, sub coverage, and cost tracking.
Estimating software with local market pricing. Generic database tools give you a starting point, but the most accurate pricing comes from data trained on actual local subcontractor bids. Bidi Contracting is built on this premise: instead of pulling national RSMeans-style averages, the platform trains custom AI models on each GC's actual subcontractor bid history — so estimates are calibrated to what that specific GC's subs charge, not a national average that may be 20-40% off for that market.
Automated bid management. The more subcontractor bids you receive, the sharper your number. But driving coverage manually is expensive in estimator time. Bidi's automated outreach sends scoped bid invitations to relevant subs in its network and organizes the responses into a leveled comparison — turning what used to take hours into a streamlined process. Clients report that this improved sub coverage alone has saved $20,000 to $100,000 per project on mid-size commercial work.
Project cost tracking software. An estimate is only useful if you track actual costs against it. Construction accounting platforms (Sage, Viewpoint, Foundation) with cost-to-date reporting let you identify overruns while there's still time to respond, rather than discovering the miss at project closeout.
Change order management. Untracked or under-priced change orders are a consistent margin killer. A disciplined change order process — pricing all changes fully, submitting promptly, and escalating quickly — protects the margin you established at bid.
Post-job analysis. Close out every project with a structured comparison of estimate vs. actual by trade and cost code. Identify the top three variances and understand why they happened. This is how the best contractors turn project experience into estimating accuracy.
Case Study: How Better Bid Coverage Saved $100K on a Single Project
A Utah-based general contractor — an established commercial GC with over two decades of experience — was bidding a mid-size commercial project in the $3-4M range. Their standard process was to work from their existing sub list and solicit bids from their go-to subs on each trade.
The problem: their sub list had gotten stale. Some of their regular subs had grown and were now pricing at a premium. Others were booked out and submitting inflated bids to manage their backlog. The GC didn't know this because they had no comparison point.
When they ran the project through Bidi Contracting, the automated outreach went to a significantly larger pool of qualified local subcontractors. Multiple trades came back with bids from new subs who were hungry for work and pricing aggressively — at legitimate, verifiable market rates.
On the mechanical trade alone, the spread between their original sub's number and the most competitive qualified bid received through Bidi was significant. Similar gaps showed up in electrical and a couple of specialty trades.
The total savings from better sub coverage on that single project came to approximately $100,000 — all margin that would have simply been absorbed by the original pricing approach.
The GC didn't change what they built. They didn't cut scope or find a lower-quality sub. They just had more market visibility than they would have had working from their existing list.
This is the compounding value of sub coverage: every project where you have more bids is a project where you understand the market better, price more competitively, and protect more margin.
FAQ
Q: What is a good profit margin for a general contractor?
A: The average net profit margin for GCs in 2025-2026 is approximately 5-6% according to industry benchmarks. Top-performing contractors — those with disciplined estimating, strong sub networks, and tight cost control — achieve 10-12%. A healthy target for most GCs is 8-10% net, which provides a buffer for risk while allowing reinvestment in the business. If you're consistently below 5%, your estimating accuracy or overhead management needs attention.
Q: Why do construction projects so often go over budget?
A: The most common causes are inaccurate original estimates, scope changes that aren't fully priced through change orders, subcontractor scope gaps, and material cost escalation. Research from the Construction Industry Institute attributes 70% of cost overruns to errors in initial estimates. Better upfront scope review, more subcontractor bids, and real-time cost tracking are the most effective mitigations.
Q: How much should a general contractor mark up subcontractor costs?
A: Standard GC markup on subcontractor costs varies by market and project type, but a common range is 5-15% for oversight, coordination, and risk. This markup covers your general conditions costs attributable to managing that trade, your overhead allocation, and profit. Many GCs make the mistake of applying a flat markup percentage without verifying that it actually covers their overhead rate. Calculate your actual overhead percentage and build your markup from there.
Q: How do I identify which projects are most profitable for my company?
A: Track estimated vs. actual margin on every completed project, tagged by project type, size, owner type, and geographic area. After 10-20 projects, patterns emerge. Most GCs find they have one or two project categories where they consistently beat their estimate and one or two where they consistently miss. Shift your business development focus toward the types where your performance is strongest.
Q: What is the fastest way to improve construction profit margins?
A: The highest-leverage single action is improving sub coverage — getting more subcontractor bids on each project. Since subs represent 60-80% of direct project costs, having three to five competitive bids per major trade rather than one or two consistently produces sharper pricing without reducing scope or quality. Automating that outreach with tools like Bidi Contracting makes broad coverage feasible on every project, not just the ones where you have extra time.
*Reviewed by Baylor Jeppsen, Construction Estimating Expert and Founder of Bidi Contracting. Baylor has spent his career in construction estimating and bid management, working with general contractors across the Mountain West region. He founded Bidi Contracting to bring AI-powered estimating accuracy to GCs who compete on local market pricing.*