Self-Perform vs. Subcontract: The Cost Analysis Behind the Call
Every general contractor faces the same question on most scopes of work: do we put our own crew on it, or do we buy a price from a subcontractor? It looks like a simple comparison — our cost versus their bid — and that framing is exactly why the decision is so often wrong. The self-perform number that estimators carry is usually too low, because it leaves out costs that do not show up on a pay stub. The subcontract price looks high by comparison, but that price is buying something the self-perform number does not include: risk transfer.
Getting this decision right matters more than almost any other estimating call. Self-performed work is where a contractor's margin is genuinely at risk — and also where it has the most control. Subcontracted work caps the downside but caps the upside too. The contractors who consistently make money are not the ones who always self-perform or always subcontract; they are the ones who run an honest cost analysis on each scope and know which side of the line it falls on.
0% – 25%
Typical combined overhead, profit, and risk contingency embedded in a subcontractor's lump-sum bid above their own direct cost (CFMA cost-of-doing-business data)
When an estimator says 'we can self-perform this for less,' the comparison is almost always built on direct wages and not much else. A real self-perform cost has at least six components, and the ones beyond base wages are where the comparison gets distorted.
Base wages are the visible cost. The labor burden — payroll taxes, workers' compensation premiums, general liability allocated to payroll, health and welfare, retirement contributions, paid time off, and union fringes where applicable — adds a substantial multiplier on top. Depending on trade, state, and union status, fully burdened labor commonly runs 25% to 60% above the bare wage. A self-perform estimate that uses the wage rate instead of the burdened rate understates labor cost before any other line is even considered.
Self-performing means supplying the equipment the crew needs — owned equipment charged at an internal rate, or rented equipment at the rental rate plus fuel, delivery, and operator time. A subcontractor's price already includes their equipment. Leaving equipment out of the self-perform number, or charging owned equipment at zero because 'we already own it,' is one of the most common ways the comparison gets skewed.
A self-perform crew needs a foreman, a share of a superintendent's time, layout, and coordination. A subcontractor brings their own supervision inside their price. If the self-perform estimate counts only the working hours of the installers and not the supervisory hours required to run them, it is comparing an incomplete cost against a complete bid.
Blades, bits, fasteners, blocking, layout materials, fuel for small equipment, and the steady attrition of hand tools are real costs of fielding a crew. Individually small, collectively a measurable percentage of labor. Most estimating systems carry a small-tools-and-consumables factor as a percentage of labor for exactly this reason — and a self-perform estimate that omits it is understated again.
When you self-perform, you own the quality outcome. If the work has to be torn out and redone, that cost lands on your job, not anyone else's. If a callback comes in during the warranty period, your crew handles it. A subcontractor carries that risk inside their price and their own warranty obligation. The self-perform analysis should carry an honest rework contingency sized to the crew's actual track record on that type of work.
Build a standard self-perform cost template that forces every line: burdened labor, equipment at internal rate, supervision hours, a small-tools percentage, and a rework contingency. The single most common self-perform mistake is comparing bare wages against a complete subcontract bid. A template makes the omission impossible.
A subcontractor's lump-sum bid looks expensive next to a thin self-perform estimate. But that bid is not just the sub's direct cost. It contains the sub's own burdened labor, equipment, and materials, plus three things the contractor is genuinely buying.
The components layered into a subcontract price above direct cost
- The sub's overhead — their office, estimating, project management, insurance, and bonding spread across all their jobs
- The sub's profit — the margin they need to stay in business, typically several points on top of cost
- A risk premium — a contingency the sub carries for the chance the work runs longer or harder than bid; the contractor pays this premium so the sub absorbs the overrun, not them
That risk premium is the heart of the decision. When a contractor subcontracts a scope, a meaningful slice of the price is an insurance payment. If the scope is volatile — unfamiliar work, difficult conditions, tight schedule — the premium is worth paying, because the sub eats the overrun. If the scope is routine work the contractor's crews do every week, the contractor is paying an insurance premium against a risk it could carry itself far more cheaply.
0% – 50%
Share of contract value a typical general contractor self-performs, with the remainder subcontracted; the mix varies widely by GC type and trade specialization (AGC)
Even a perfectly built cost comparison does not settle the decision, because several of the most important factors do not show up cleanly as dollars in an estimate.
Get AP insights in your inbox
A short monthly roundup of construction AP + accounting posts. No spam, ever.
No spam. Unsubscribe anytime.
A self-perform crew is yours to direct. You can accelerate it, shift it between work fronts, and resequence it without negotiating a change order. A subcontractor follows their own schedule and their own priorities across all their jobs. On a critical-path scope where schedule certainty is worth more than the lowest price, self-performing can be the right call even when it costs more on paper.
Self-performing puts the quality outcome directly under your supervision. For signature scopes, exposed finishes, or work where a defect would be expensive and visible, that direct control has real value. For commodity scopes where any competent sub produces an acceptable result, the quality argument carries far less weight.
A self-perform workforce is a fixed cost between jobs. If skilled crews are sitting idle, putting them on a scope they could do — even at a thin margin — is better than paying them to do nothing while a subcontractor takes the work. The self-perform decision is never made on one job in isolation; it is made against the backlog and the cost of keeping a workforce intact.
Subcontracting transfers risk in two directions. A bonded subcontractor stands behind their work with a payment and performance bond, and their default becomes a surety problem rather than yours. Self-performing keeps that risk entirely on your balance sheet. For a scope large enough to threaten the project if it goes wrong, the risk transfer of a bonded sub can be worth more than the premium it costs.
Self-perform analysis is not a one-job decision. Run it against your full backlog and your committed workforce. A scope that loses on a standalone cost comparison can still be the right self-perform call if it keeps a skilled crew utilized that you would otherwise pay to stand idle.
Self-perform tends to win when the scope is core to the contractor's capability, the work is routine enough that the cost is predictable, schedule or quality control carries real value on that scope, and there are skilled crews available who would otherwise be underutilized. In that combination, the contractor captures the overhead and profit a sub would have charged and keeps its workforce productive.
Subcontracting tends to win when the scope is specialized work outside the contractor's core trades, the conditions are volatile and the risk premium is worth paying, the contractor's crews are fully committed elsewhere, the scope demands licensing or equipment the contractor does not have, or the risk is large enough that a bonded sub's risk transfer is genuinely valuable. In that combination, the sub's price is buying certainty, and certainty is worth money.
A repeatable sequence for the self-perform vs. subcontract call
- Build the full self-perform cost — burdened labor, equipment at internal rate, supervision, small tools, and a rework contingency sized to your actual track record
- Compare it to the subcontract price, and explicitly identify the risk premium baked into that price
- Assess the scope's volatility — routine work favors self-perform; volatile or unfamiliar work favors paying the sub's risk premium
- Check workforce availability against the backlog — idle skilled crews tilt the call toward self-perform
- Weigh schedule and quality criticality — high-stakes scopes justify the control that self-performing provides
- Confirm capability and capacity honestly — never self-perform a scope your crews are not genuinely good at to chase a thin paper saving
The discipline is to run this every time rather than defaulting. Contractors that always self-perform end up carrying scopes they are not efficient at; contractors that always subcontract bleed margin on routine work they could do well. The framework forces the question to be answered on the merits of each scope.
Self-perform versus subcontract is not a comparison of two numbers — it is a comparison of a fully loaded cost against a price that has risk transfer built into it. Build the self-perform number honestly, with burden, equipment, supervision, consumables, and rework all included, and recognize that the sub's higher price is partly an insurance premium. Then let the non-cost factors — schedule, quality, crew utilization, risk transfer — settle the close calls. The contractors who make money are the ones who run that analysis on every scope, not the ones who have a standing answer.
Written by
Marcus Reyes
Construction Industry Lead
Spent twelve years running AP at a $120M general contractor before joining Covinly. Lives in the world of AIA G702/G703, retainage schedules, and lien waiver deadlines. Writes about the construction-specific workflows that generic AP tools get wrong.
View all posts