General Contractor Markup: How Much Should You Be Charging?
Dylan L.
Founder, EstimAI Pro · New Home Builder
Let's cut straight to it. If you're searching for the right general contractor markup percentage, you're probably not making enough money on your jobs. I've been building custom homes in New Hampshire for years, and I've watched good builders go broke charging 10% markup while thinking they were profitable. Markup is the number that keeps your doors open. Get it wrong, and no amount of volume will save you. Get it right, and you can actually pay yourself, cover overhead, and build a business that lasts.
So what's the answer? The honest one is: it depends. But I'm not going to leave you with that. I'm going to give you real numbers, explain why margin and markup aren't the same thing, and show you how to set a number you can defend to any client.
What Markup Actually Means (And Why Most Guys Get It Wrong)
Markup is what you add on top of your direct job costs. Direct costs are labor, materials, subs, and equipment for that specific job. Markup covers everything else: your office, your truck, your insurance, your phone, your software, and your profit.
Here's where contractors blow it. They confuse markup with margin. They're not the same.
- Markup is a percentage of your costs. Costs are $100,000, you add 20%, you charge $120,000.
- Margin is a percentage of the final price. On that same job, $20,000 profit divided by $120,000 is only 16.7% margin.
- So a 20% markup gives you a 16.7% margin. Not the same number. Not close enough to guess.
A 50% markup is only a 33% margin. If you're aiming for a 30% margin and charging 30% markup, you're leaving real money on the table on every single job.
This one mistake costs contractors thousands per year. If you set a 20% markup thinking you're keeping 20% of the job, you're already short. Learn the difference now, because your bank account depends on it.
General Contractor Markup Percentage: The Real Numbers
Here's what markup ranges look like across the trades in 2026. These aren't fantasy numbers. They're what it takes to stay in business.
- General contractors and custom home builders: 15% to 25% markup on standard work, higher on complex custom builds.
- Remodeling contractors: 25% to 40% markup. Remodels have more unknowns, more change orders, and more risk.
- Roofing: 20% to 40% depending on complexity and material.
- Plumbing and electrical: 30% to 50% on materials, plus marked-up labor.
- HVAC: 25% to 50%, especially on equipment.
- Trade subs on smaller service work: often 40% or more because overhead per job is high.
Notice a pattern. The smaller and riskier the job, the higher the markup. A $2 million custom home can run leaner on percentage because the dollar amount is huge. A $15,000 bathroom remodel needs a fatter markup because your fixed costs eat a bigger slice of a smaller pie.
Why 10% Markup Is a Death Sentence
I still hear guys say 10% and 10%. Ten percent overhead, ten percent profit. That was a rule of thumb from decades ago, and it doesn't hold up anymore. Insurance is higher. Materials swing wildly. Labor costs more. Fuel costs more. Software, licensing, and compliance all cost more.
Run the math on a 10% markup. One slow month, one bad change order, one job that runs two weeks over, and your entire profit is gone. You're now working for free. Worse, you might be paying to work.
How to Set Your Own Markup Number
Don't copy a number off the internet. Set your own. Here's how I do it.
- 1Add up your annual overhead. Rent, insurance, vehicles, admin, software, marketing, your salary. Everything not tied to a specific job.
- 2Estimate your annual job costs. What do you spend in a year on labor, materials, and subs across all jobs?
- 3Divide overhead by job costs to get your overhead markup. If overhead is $150,000 and job costs are $750,000, that's 20% just to break even.
- 4Add your profit target on top. Want 15% profit? Add it. Now your markup is 35% or higher.
- 5Adjust per job type. Riskier and smaller jobs get more. Big predictable jobs can run leaner.
Most contractors have never done this calculation. They pull a number out of the air and hope. Hope is not a pricing strategy.
Your break-even markup is the floor, not the goal. Anything below it and you're losing money before you swing a hammer.
This is exactly why I built EstimAI Pro. I got tired of watching builders guess. The platform learns how you price and builds estimates that protect your margin instead of shredding it. Head to estimaipro.com and see how it handles your numbers.
Pricing DNA: Stop Guessing, Start Charging Right
Here's the thing nobody tells you. Your markup isn't one number. It shifts by job type, by client, by season, by how busy you are. The best builders adjust constantly. The problem is most guys can't track all that in their head or in a spreadsheet.
That's what Pricing DNA inside EstimAI Pro does. It studies your past jobs, your win rates, and your actual costs, then builds a pricing profile that's unique to your business. It knows a kitchen remodel needs a different markup than a new deck. It knows your labor runs hot in framing and lean in finish. It stops you from underbidding the jobs you always underbid.
No generic calculator can do that, because a calculator doesn't know your business. Pricing DNA does. It's built from your real numbers, not somebody else's average.
When you bid the same way every time regardless of the job, you win the bad jobs and lose the good ones. The bad jobs are the ones underpriced enough that only you were dumb enough to take them. Pricing DNA fixes that by pricing each job for what it actually is.
How to Defend Your Markup to Clients
Clients push back on markup because they don't understand it. So teach them, quickly and confidently.
- Tell them markup is not profit. It covers the business that makes their project possible.
- Show them what the low bidder is hiding. A cheap number means cut corners, change orders, or a contractor who won't finish.
- Own your number. Don't apologize for it. If you flinch, they smell it.
- Explain that a properly funded contractor is the one who shows up, finishes, and stands behind the work.
The lowest bid is almost never the cheapest job. It's the one that balloons with change orders or gets abandoned halfway through. Good clients understand this. The clients who only care about the lowest number aren't your clients anyway.
You don't want to win every bid. If you're winning every job, your markup is too low. A healthy close rate is somewhere between 30% and 50%.
The Bottom Line on Markup
Here's what I want you to take away. Your general contractor markup percentage should cover your full overhead plus a real profit, and it should shift based on the job in front of you. For most GCs that means 20% to 35% minimum. For remodelers and trades on smaller work, often more.
Stop pulling numbers from thin air. Run your overhead math. Know the difference between markup and margin. Price each job for what it really is, not what the last guy charged. Do that and you'll stop working weekends to break even.
And if you want a tool that does the heavy lifting, that's what we built. EstimAI Pro takes your real costs and its Pricing DNA to build estimates that actually make you money.