July 4, 2026 · 8 min read · By Andrew Bernardo

How Construction Profit Margin by Trade Actually Compares (Real Benchmarks)

Construction profit margin by trade swings wider than most contractors realize. Pool building typically nets 18-28%, kitchen remodels 12-20%, roofing 8-15%, while HVAC service can hit 30-50%. The gap isn't random. It comes down to labor utilization, overhead per job, and how much materials volatility eats into your bid. If you're landing below the low end for your trade after every cost, you're either underpricing, overspending on labor or subs, or carrying too much overhead.

Why Service Trades Net Higher Than Project Trades

HVAC service, plumbing service, and pool service consistently post contractor net margins between 25-50%. Higher than almost any project-based trade.

Three reasons. First, truck rolls are fast. A two-hour service call books $300-600, the tech costs you $50-80 in labor, parts run $40-120. You turn the same tech five times in a day. Labor utilization stays above 80% when you dispatch tight.

Second, overhead per job is tiny. No permits, no engineering, no multi-week coordination. You're not carrying job costs across 90 days. The invoice goes out same-day and the customer pays within a week because the AC is running again.

Third, materials volatility is contained. You stock common parts, you mark them up 50-100%, and surprise price swings are rare because you're not buying truckloads of rebar that spiked 40% since you bid the job three months ago.

Pool Construction Margins and Why They Stay in the 18-28% Range

Pool building margins sit in a narrow band because the work is standardized but the schedule is long. I ran pool jobs for five years in Tampa Bay before I built Workhand, and your net margin came down to how tight you kept subs and how few change orders bled budget.

The 18-28% range breaks this way. Low end (18-20%) happens when your excavation or steel sub goes over, your permit process drags an extra two weeks so your crew sits idle, or the customer asks for a waterline move mid-build and you eat half the cost to keep them happy. High end (25-28%) happens when your subs are locked in on price, your schedule runs clean, and you bill change orders at full markup the day they're approved.

Materials volatility hits you on rebar, plaster, and stone. If you bid a job in January and don't lock supplier pricing, a March price jump on coping pavers can cost you two points of margin. The crews that stay above 20% are the ones tracking cost per job in real time and catching overruns before the slab pour.

Overhead per job includes your PM time across 60-90 days, insurance allocation, truck costs, and permit fees. If you're running three jobs at once and your PM is coordinating subs on all three, your overhead spreads. If you're running one job at a time, overhead per job climbs and your net margin drops toward 18% unless you price it in.

Kitchen Remodel and Interior Trade Profit Margins (12-20%)

Kitchen and bath remodels land between 12-20% net after full overhead. Tighter than pools, wider than roofing. The range comes from change order discipline and how well you manage the customer's expectations on lead times for cabinets and countertops.

Margins compress because material lead times are unpredictable and the customer is living in the house while you work. A cabinet delay pushes your rough-in crew back two weeks, your plumber and electrician both reschedule, and you're paying overhead on a stalled job. If you didn't build float into the bid, that two-week slip costs you three points of margin.

The remodelers netting 18-20% are the ones who walk the customer through selections before demo starts, lock supplier orders with deposits, and bill hourly for any scope change the day it happens. The ones at 12-14% are letting the customer pick tile in week three and eating the plumber's second trip because they don't want to look difficult.

Roofing Margins Stay Tight (8-15%) for Good Reasons

Roofing margins cluster at the low end of construction industry benchmarks because the work is commoditized, the competition bids tight, and weather kills your schedule. An unexpected three-day rain delay in the middle of a tear-off costs you crew wages, equipment rental, and often a hotel room for the homeowner if you promised a one-day job.

Material costs are transparent. Shingles are shingles. The customer gets three bids and they all quote the same Owens Corning product at nearly the same price. Your markup on materials is maybe 15-20%, so your margin lives or dies on labor efficiency and how few callbacks you eat for leaks six months later.

The roofers hitting 12-15% are running two or three crews, keeping utilization above 70%, and walking away from jobs where the customer wants a 30-year roof at a 20-year price. The ones at 8-10% are bidding every lead that calls, running one crew, and carrying overhead for a full-time estimator who's writing 80 bids to close 10 jobs.

Weather is pure overhead. You can't bill the customer for the day you sat in the truck waiting for lightning to clear. If you run a roofing company in Florida, you price in 10-15% downtime for summer storms or your margin goes to zero by August.

What Kills Margin Across Every Trade

Three things kill trade profit margins no matter what you build. Underpricing, labor overruns, and overhead creep. Most contractors blame the first and miss the second two until the year-end tax meeting when the accountant shows them a 6% net on $900K revenue.

Underpricing happens when you're quoting from memory instead of real job cost data. You remember the last pool cost $62K in subs and materials, so you bid the next one at $95K hoping for $33K gross profit. Then you forget the last one had no engineering because it was under 400 square feet and this one needs a $4K structural letter. Gross profit just dropped to $29K and you haven't started digging yet.

Labor overruns happen when your crew is waiting on materials, your subs show up late, or you didn't build a tight schedule and the job drags two weeks past the original timeline. Every extra day is wages, truck costs, and often penalty clauses if you're past the contract completion date. I built real-time cost tracking into Workhand because I got tired of finding out I lost money on a job three weeks after I finished it.

Overhead creep is the one nobody sees coming. You hire an office admin, you move into a bigger shop, you buy a truck for the PM. Suddenly your monthly fixed costs are $18K instead of $12K and you need to close an extra job every month just to stay at the same net margin you had last year.

Where Your Margin Should Actually Land

If your net margin after every cost is below the low end of the range for your trade, you have a pricing problem, a cost problem, or both. Pool builders netting under 18%, roofers under 8%, HVAC service under 25%. You're leaving money on the table or spending it faster than you should.

Here's the benchmark again by trade:

If you're in the range, you're fine. If you're above the high end, either you've got a killer niche or you're not counting all your costs. If you're below the low end, start with job costing. Track what you actually spend on the next five jobs, compare it to what you bid, and figure out whether the gap is in labor, materials, subs, or overhead allocation. Most contractors guess they're at 20% and the real number is 11%.

Track Real Profit Per Job, Not Guesses

Workhand shows you cost vs. budget in real time so you catch overruns before they kill your margin.

See Pricing

Frequently asked questions

What's the difference between gross margin and net margin in construction?

Gross margin is revenue minus direct job costs (labor, materials, subs). Net margin is what's left after you also subtract overhead (truck, insurance, office, your own salary). Net margin is the number that matters for taxes and actual profit.

Why do service trades have higher margins than project trades?

Service trades turn jobs faster, carry almost no overhead per job, and keep labor utilization above 80%. A service call is billed same-day, a construction project carries costs for weeks or months before you invoice the final draw.

What's a realistic profit margin for a small general contractor?

10-18% net after all overhead. Low end if you're running one job at a time with high fixed costs, high end if you're running multiple jobs and your subs are locked in on price.

How do I know if I'm underpricing my jobs?

Track actual cost per job and compare it to what you bid. If you're consistently landing below the low end of the margin range for your trade, you're either underpricing or overspending on labor and subs.

What's the biggest thing that kills construction margins?

Labor overruns and overhead creep. Most contractors think they're losing money on materials, but the real bleed is crew downtime, schedule delays, and fixed costs that climbed without enough revenue to cover them.

Should I track profit per job or just look at yearly profit?

Track profit per job. Yearly profit hides which jobs made money and which ones lost it. If you wait until tax season to find out you lost money on half your jobs, you can't fix the pricing or cost problem until next year.

How much does materials volatility hurt construction margins?

Depends on the trade. Roofing and concrete see tight material pricing, so volatility is low. Pool building and remodeling can see 20-40% swings on stone, tile, and steel if you don't lock supplier pricing when you bid the job.

What margin should I target if I'm just starting a construction business?

Aim for the middle of the range for your trade. Don't underbid to win work, and don't assume you'll hit the high end without proven systems for cost control and schedule management.