Call (218) 590-5611

How Much Profit Should a Contractor Make?

Completed job profitability screen showing 50% actual gross margin against a 40% expected margin

TL;DR

The average contractor nets about 6% to 7% before taxes. A well run company should target 8% to 10%, and top performers clear 12%.

Most owners are working from a wrong number, usually because overhead is a guess and transactions never get allocated to the jobs they belong to.

The target matters less than the tracking. Know your overhead percentage and your job profitability every week, and the profit number stops being a surprise.

You closed a good year. Revenue was up, the crews stayed busy, and the jobs felt profitable while you were running them. Then the tax bill lands the same week a big receivable goes quiet, and there is nothing in the account. On paper you made money. In the bank, you cannot find it.

That gap is what sends owners looking for a benchmark. There is a real answer to how much profit a contractor should make, and it is lower than most people assume. The benchmark is only half of it, though. The other half is whether you can measure your own number while the year is still in front of you.

Below: what the industry data actually says, the three numbers that get confused with each other, how your overhead percentage sets your profit target, and why the figure sitting in your accounting program right now is probably wrong.

The Short Answer on How Much Profit a Contractor Should Make

Across the industry, contractors net far less than most owners guess. The Construction Financial Management Association’s 2024 Financial Benchmarker put net income before taxes at 6.3% of revenue across all responding contractors. The top quartile, what CFMA calls best in class, came in at 11.9%.

Residential numbers land in the same place. The National Association of Home Builders reported that remodelers averaged a 29.9% gross margin and a 6.3% net margin in 2024, the highest net margin since 1996. Cost of sales took 70.1% of revenue and operating expenses took another 23.6%.

Here is what that means as a working set of targets for a contracting company in the $1M to $15M range:

NumberIndustry averageA solid targetTop performers
Gross margin22% to 30%, depending on trade30% to 35%35% and up
Net profit before taxes6% to 7%8% to 10%12% and up
What that pays on $3M in revenue$180,000 to $210,000$240,000 to $300,000$360,000 and up

Overhead is the third number, and it does not get a benchmark column, because the only figure that matters is your own. Industry wide, general and administrative costs run around 12% of revenue, but that average is pulled down by large commercial firms spreading fixed costs across serious volume. A residential contractor between $1M and $15M is far more likely to be carrying 20% or more once the owner’s salary, insurance, vehicles, and marketing are all counted. Guessing low here is the single most common way a profitable-looking company ends up flat.

One more figure is worth sitting with. In NAHB’s builder study, the top 25% of companies netted 17.7% while the bottom 25% lost 1.4%. Same industry, same year, same economy. The difference was not luck or market conditions. It was whether those companies knew their numbers well enough to price and correct.

Gross Margin, Overhead, and Net Profit Are Three Different Numbers

Most arguments about contractor profit margin are really arguments about which number somebody means. Sort these three out and the benchmarks above stop being confusing.

Gross margin

Gross margin is what is left on a job after the job costs. Materials, labor, subs, equipment, dump fees, anything you would not have spent if you had not sold that job. Bill $12,000 on a job that cost $8,400 to build and your gross margin is 30%. It measures the job, not the business.

Overhead

Overhead is everything that runs whether or not you sell a single job. Office rent, insurance, truck payments, software, marketing, admin payroll, and your own salary. Overhead does not belong to any one job, which is exactly why it gets ignored until it has already done the damage.

Net profit

Net profit is what is left after both the job costs and the overhead. It is the only number that answers whether the business made money, and it is the number every benchmark in this article is measuring.

What it looks like on a $3M roofing company

Run the three together and the math gets specific fast. At a 30% gross margin, $3M in revenue produces $900,000 in gross profit. You built your pricing assuming overhead of 20%, or $600,000, which leaves a planned profit of $300,000. That is 10% net, right where you want to be.

Then the year closes and actual overhead came in at $720,000, or 24% of revenue. Net profit is $180,000. Six percent.

Nothing went wrong on the jobs. Every crew hit its margin. You lost $120,000 to four points of overhead you did not know you were carrying, and you gave it away in your estimates one job at a time.

The “10 and 10” Rule Is Quietly Costing You Money

Somewhere along the way, 10% overhead and 10% profit became accepted shorthand in the trades. It came out of an era of smaller companies, thinner insurance requirements, and owners running the business off a truck seat with almost no fixed cost. It survives because it is easy to remember and it sounds reasonable to the person on the other side of the table.

For a contracting company under $15M today, 10% overhead is fiction. The industry-wide average is closer to 12%, and residential companies routinely run north of 20% once you count the owner’s salary, insurance, vehicles, and marketing. Price off 10% and you are underwater before the first truck rolls.

The second half of the rule does more damage than the first, because it hides inside the arithmetic. Markup and margin are not the same thing.

A job costs you $10,000. Add a 20% markup and you bill $12,000. Your gross profit is $2,000 on $12,000 of revenue, which is a 16.7% gross margin, not 20%. To actually hold a 20% gross margin on that job, you have to bill $12,500, which is a 25% markup.

Markup is calculated on your cost. Margin is calculated on your price. Every time you use one and mean the other, the difference comes out of your profit.

That 3.3 point gap looks academic on a single job. Spread across a year of work at $3M in revenue, it is roughly $100,000 you thought you were charging for and never collected.

Your Overhead Percentage Sets Your Profit Target

You cannot pick a profit target until you know your overhead percentage, because overhead is the number your prices have to clear before profit even starts.

How to calculate your overhead percentage

Total annual overhead ÷ Total annual revenue = Your overhead percentage

Overhead is every cost that is not tied to a specific job: office rent, insurance, admin payroll, vehicles, software, marketing, and your own salary.

Example: $720,000 in overhead ÷ $3,000,000 in revenue = 24% overhead

That company needs 24 points of margin on every job just to break even, before a single dollar of profit shows up.

Most owners are working from a number they set years ago and never revisited. Overhead creeps. You added a project manager, upgraded the insurance, put two more trucks on the road, and doubled ad spend, and the percentage you are still estimating with has not moved since.

The fix is not a better guess. It is an overhead plan built from real transactions, tracked against actuals every month, so you can see which categories are drifting while there is still time to do something about it. Marketing running $17,500 over plan is a decision you get to make. Marketing running $17,500 over plan without you knowing is a decision that already got made for you.

Get the number right and every bid you write gets more accurate. See how overhead planning and tracking works.

Overhead plan versus actual by category showing marketing and payroll running over plan

Why the Profit Number in Your Accounting Program Is Probably Wrong

Your accounting program is not lying to you on purpose. It is reporting exactly what was entered, and for most contracting companies that is the problem. Three things go wrong.

Transactions sit unallocated. Material buys and sub payments never get assigned to the job they belong to, so they pile up in a general bucket and your P&L is off by whatever is sitting in it. On a busy company that pile can run into six figures before anyone looks at it.

Costs get lumped by category instead of by job. You can see that you spent $214,000 on materials last quarter. What you cannot see is which jobs made money and which ones quietly did not, which means you keep bidding the same losing work the same way.

The reports arrive after the fact. Month-end close means the earliest you can react to a margin problem is thirty days after it happened, and by then the crew is already three jobs down the road.

Add those together and the profit figure on your report is a rough estimate of a season that already ended. That is not a knock on the software. It was built to record history and file taxes, not to run a company week to week.

TradeBooks does not replace that system. It sits on top of it. Your team supplies a few daily inputs, and TradeBooks does the organizing, allocating, and maintaining, keeping your numbers current within about 48 hours of receiving what it needs. See what the full platform covers.

How to Know Your Real Profit Before December

Waiting until the books close means the year is already decided. The alternative is a weekly rhythm, and it comes down to five steps.

  1. Plan. Set the targets before the year starts: leads, sales, production, gross margin, overhead, and net profit. A target you did not write down is a hope.
  2. Collect. Capture the few daily inputs that show what actually happened. Not a data entry project, just the handful of numbers that move.
  3. Compare. Put actual against plan every week. Your bank balance is not a performance report and neither is your gut.
  4. Correct. Find the one thing costing you the most right now and fix that. Not all of it, the one thing.
  5. Repeat. Run it weekly until the company can operate without one person carrying every number in their head.

That loop is what turns a profit target into an actual result. A margin problem caught in week six is a pricing conversation. The same problem found in April is a lost year.

You can walk through how the rhythm works, or book a demo and we will run it against your numbers instead of ours.

Contractor Profit Margin Questions

Is a 10% profit margin good for a contractor?

Yes. Ten percent net is above the industry average of roughly 6% to 7% and puts you in the stronger half of contractors. It is not the ceiling, though. Best in class companies clear 12%, and the gap between 10% and 13% usually comes down to overhead discipline rather than better pricing.

What is a good gross profit margin for a roofing company?

Most roofing companies should target 30% to 35% gross margin per job, which sits at or above the 29.9% average NAHB reported for residential remodelers. Retail and insurance work often runs higher, while builder and new construction work runs thinner. Measuring it per job matters more than the target, since a company averaging 32% can still be losing money on a third of its work.

Should the owner’s salary come out before profit?

Yes. Pay yourself a market salary as an overhead expense, then measure profit after that. NAHB counts owner compensation inside operating expenses for exactly this reason. If your profit only exists because you are working for free, the business is not profitable, it is subsidized.

How often should I be checking job profitability?

Weekly while the job is running, and again at closeout. Checking only at closeout tells you what already happened. Checking weekly lets you catch a labor overrun or a change order that never got billed while the job is still open and something can still be done about it.

Does more revenue mean more profit?

Not automatically. Revenue growth adds overhead before it adds profit, since the project manager, the extra truck, and the bigger insurance policy all land before the added volume pays for them. If your margin is thin or unmeasured, growing revenue scales the problem instead of solving it. Fix the margin first, then grow.

Is a 10% profit margin good for a contractor?

Yes. Ten percent net is above the industry average of roughly 6% to 7% and puts you in the stronger half of contractors. It is not the ceiling, though. Best in class companies clear 12%, and the gap between 10% and 13% usually comes down to overhead discipline rather than better pricing.

What is a good gross profit margin for a roofing company?

Most roofing companies should target 30% to 35% gross margin per job, which sits at or above the 29.9% average NAHB reported for residential remodelers. Retail and insurance work often runs higher, while builder and new construction work runs thinner. Measuring it per job matters more than the target, since a company averaging 32% can still be losing money on a third of its work.

Should the owner’s salary come out before profit?

Yes. Pay yourself a market salary as an overhead expense, then measure profit after that. NAHB counts owner compensation inside operating expenses for exactly this reason. If your profit only exists because you are working for free, the business is not profitable, it is subsidized.

How often should I be checking job profitability?

Weekly while the job is running, and again at closeout. Checking only at closeout tells you what already happened. Checking weekly lets you catch a labor overrun or a change order that never got billed while the job is still open and something can still be done about it.

Does more revenue mean more profit?

Not automatically. Revenue growth adds overhead before it adds profit, since the project manager, the extra truck, and the bigger insurance policy all land before the added volume pays for them. If your margin is thin or unmeasured, growing revenue scales the problem instead of solving it. Fix the margin first, then grow.

Stop Finding Out in April

The real answer to how much profit a contractor should make is 8% to 10% net for a well run company, and 12% or better if you are serious about it. Those numbers are reachable at $1M and at $15M. What decides whether you hit them is not the size of the company. It is whether you know your overhead percentage, your gross margin per job, and your plan against actual while there is still time to correct.

Most contractors are flying blind and calling it instinct. It works right up until it does not. TradeBooks was built by a contractor to close that gap, with pricing published at $2,500 per month for companies up to $1M in revenue, no contracts, and setup measured in days. If you want to see your own numbers run through it, schedule a free 30-minute demo and we will show you exactly where your margins stand.

No contracts. Cancel anytime. Setup in days, not months.

Get a FREE estimate

What's on this page?

Book A Demo