How to Calculate Overhead for a Construction Company (the Math That Sets Your Markup)
Total your annual overhead, set a profit target, set a revenue target, and derive your markup from those three numbers. Worked example for a $5M California residential GC.
Your markup is probably a number you inherited. Somebody at a trade meeting said "10 and 10," which is the old rule of adding 10 percent for overhead and 10 percent for profit on top of what the job costs you. It sounded reasonable, and it has been riding on every bid since. That number came from a company with a different payroll, a different insurance renewal, and a different revenue target than yours. Using it is a guess wearing a suit.
To calculate overhead for a construction company, total every annual expense that no single job pays for, owner salary included, then divide that total by your annual revenue target. For a $5M California residential GC that pays its owner a real salary, that total runs about $1,285,000, or roughly 26 percent. Take overhead and your profit target off the revenue target, divide the revenue target by what is left, and you have the markup multiplier your bids actually need.
Overhead is the input that sets markup. Get the overhead number right and markup stops being an opinion. It becomes arithmetic you can defend to a homeowner, and to yourself at 11pm when you are deciding whether to chase a job.
Here is the math for a California residential GC doing around $5M a year.
How do I calculate overhead for a construction company?
Total every annual expense no single job pays for, owner salary included, then divide by your revenue target. On a $5M California residential shop that is about $1,285,000, or roughly 26 percent. Add your profit target, back into job-cost dollars, and divide revenue by what is left to get your markup.
What counts as overhead
Overhead is every dollar your company spends that no single job pays for. The office stays open whether you have four jobs running or one. Insurance renews either way.
The line items GCs consistently miss are the ones closest to home.
Owner salary is the big one. If you are running estimating, sales, and PM oversight and paying yourself out of whatever is left at the end of the year, you have not priced your own labor. Put a real number on the seat. Price what it would cost to hire someone to do your office work if you stepped away tomorrow. That number belongs in overhead. What is left after that is profit, and profit and owner pay are two different things. For the $5M shop below it lands at $535,000, and if that sounds high, the four seats that add up to it are worth walking through one at a time.
Vehicles that never get charged to a job. Your truck, the estimator's truck, fuel, insurance, and the transmission that went out in March. If a pickup is not billed to a job, it is overhead.
Bad debt and warranty callbacks. The $18,000 you never collected on the Danville job is a real cost of doing business. So is the crew day you spent chasing a leak on a house you closed out fourteen months ago. Both belong in the overhead number, or every other job you sell ends up paying for them out of margin you thought you had.
Here is a realistic annual overhead build for a $5M residential GC in California with three office staff besides the owner.
| Overhead line | Annual |
|---|---|
| Owner compensation, loaded (estimating, PM, sales, executive) | $535,000 |
| Office manager / bookkeeper | $85,000 |
| Estimator (office portion, not job-billed) | $95,000 |
| Project manager (office portion, not job-billed) | $70,000 |
| Payroll taxes on office payroll | $77,000 |
| Health insurance and benefits for office staff | $45,000 |
| General liability and umbrella insurance | $48,000 |
| Workers comp on office payroll | $12,000 |
| Vehicles not billed to jobs (fuel, insurance, maintenance) | $38,000 |
| Field supervision not charged to a job (windshield time, punch walks) | $63,000 |
| Office rent and utilities | $45,000 |
| Software and phones | $22,000 |
| Marketing and website | $35,000 |
| Licenses, bond, association dues | $9,000 |
| Legal and CPA | $18,000 |
| Small tools and shop supplies not job-charged | $14,000 |
| Bad debt and warranty callbacks | $40,000 |
| Interest and fees on the line of credit | $22,000 |
| Training, travel, misc | $12,000 |
| Total annual overhead | $1,285,000 |
Against a $5M revenue target, that is a 25.7% construction overhead percentage.
Watch what drives that number. Strip the owner's $535,000 back out and the same company reports $750,000, or 15%, and 15% is what most GCs in this band would quote you if you asked them over a beer. The 15% version is not a different accounting opinion. It is the same company declining to pay one of its employees, and it produces a markup nobody can live on.
What is not overhead
Anything a specific job pays for is job cost. Framing labor, lumber, your plumbing sub's invoice, the building permit for that address, the dumpster and the rented lift, and the superintendent's hours when they are charged to a project.
Mixing job cost into overhead inflates your markup until you stop winning work. Push overhead into job cost and it hides, making every job look more profitable than it was.
The test is simple. If the job goes away and the cost goes away with it, that is job cost. If the cost stays, it is overhead.
The three-number method
The approach here comes from Michael Stone's Markup & Profit: A Contractor's Guide, Revisited, which is the clearest treatment of contractor overhead and profit I have found. Stone's argument, paraphrased: markup is not a percentage you pick, it is a result you calculate from your own annual numbers.
You need three inputs.
- Total annual overhead. The number you just built.
- Desired net profit. What the business earns after overhead and after you are paid a real salary. Pick a percentage of revenue.
- Annual revenue target. What you honestly expect to sell and build next year, based on your crew, your pipeline, and your capacity. Not a stretch goal.
From those three, you back into dollars available for job costs. Whatever is left after overhead and profit come off the top is what you can actually spend building. Divide the revenue target by that number and you have your markup multiplier.
The worked example
Revenue target: $5,000,000 Annual overhead: $1,285,000 (25.7%) Desired net profit: 8%, which is $400,000
Dollars available for job costs:
$5,000,000 - $1,285,000 - $400,000 = $3,315,000
Markup multiplier:
$5,000,000 / $3,315,000 = 1.5083, call it 1.51
Every dollar of direct job cost gets multiplied by 1.51. A kitchen and primary suite remodel that costs you $100,000 in labor, materials, subs, and permits sells for $151,000. A whole-house that costs $620,000 sells for $936,200.
Run that markup across the full $3,315,000 of job cost and you land on about $5,000,000 in revenue, $1,285,000 of overhead covered, and $400,000 of net profit. The math closes.
That $3,315,000 is also a ceiling, and it is worth sitting with. It is the most work this company can afford to put in the ground in a year. The same shop in our profit benchmarks post is running $3,500,000 of direct cost through it, $185,000 more than the pricing supports, and that $185,000 is the entire distance between the 4.3% net it actually posts and the 8% it thinks it is aiming at.
Those are one company's numbers, and yours will not match them. Drop your own overhead total, revenue target, and profit target into the free overhead calculator and it runs the same three-number math and hands you your multiplier.
One adjustment worth making: small jobs carry a higher share of your office time per dollar of cost, so a $20,000 bath needs a fatter multiplier than a $600,000 addition. Scale the base multiplier up on small work rather than pricing everything off one flat number.
What "10 and 10" costs this company
Same GC, same $3,315,000 of job cost, but priced with the borrowed rule of thumb. Ten points for overhead, ten points for profit, added to cost.
Worth pausing on what those twenty points actually buy you, even if you have run this rule for years. Stacked the way almost everyone stacks it, the ten and the ten get added to cost while margin gets measured against price, so a job that costs you $100,000 sells for $120,000 and the $20,000 you made is 16.7 percent of what the homeowner paid. Not twenty. You are more than three points light before a single thing on the job goes sideways.
$3,315,000 x 1.20 = $3,978,000 in revenue
Gross profit: $3,978,000 - $3,315,000 = $663,000 Minus actual overhead of $1,285,000. Net profit: negative $622,000
Nobody writes that check, of course. What happens instead is that the owner's $535,000 never gets paid, and even with that seat working for free the company is still $87,000 short of covering the rest of its overhead. Twenty points did not produce a thin year here. They produced a company that cannot pay the person running it, which is the same 4.3% shop from the profit post wearing a different hat. Nothing went wrong on the jobs. The pricing was wrong before the first shovel hit dirt.
That gap does not show up in your bank account until March, when the CPA hands you a P&L and you spend a week trying to figure out which job lost the money. No single job lost it. Every job did, a little.
If you want to pressure-test where else this leaks on your current projects, grab the 12-point margin leak checklist and run it against your last three completed jobs.
The red line on a single estimate
The annual math sets your markup. The per-job math tells you whether a specific bid is worth signing.
Every job you sell carries a share of the company's overhead. At 25.7% overhead, a $151,000 contract owes the business $38,800 in overhead coverage. That is the job's share of keeping the lights on.
Compare that against the gross profit on the job, meaning sale price minus direct job cost.
- Sell at $151,000 on $100,000 of cost. Gross profit is $51,000 against $38,800 of overhead coverage. The job clears its share and contributes $12,200 in profit, which is your 8 percent.
- Sell at $130,000 on the same $100,000 of cost, because the homeowner pushed and you wanted the work. Gross profit is $30,000 against $33,400 of overhead coverage. The job comes up $3,400 short of paying its own share of the office.
That second bid is below the red line, which means the job consumes company money to build. Every hour your crew spends on it is an hour they are not spending on work that pays the overhead.
Name it out loud with your team. "This bid is below the red line" ends a bad negotiation faster than any spreadsheet. GCs bidding ADUs hit this constantly, since the price ceiling is set by comps and the cost floor is set by California code. Our guide to bidding an ADU in California walks that squeeze.
Overhead you calculated in 2023 is wrong today
The most common version of this failure is a GC who ran the numbers once, three years ago, and never touched them again.
Say this company did the math in 2023 on $600,000 of overhead and a $4.5M target, with the owner's own pay nowhere in it. That produced a 1.27 multiplier, and 1.27 has been on every bid since. Insurance renewed twice, the office manager earned a raise, a project manager came on, and the owner finally went on payroll. Overhead is $1,285,000 now, which puts the real multiplier at 1.51.
Twenty-four cents of markup is not a rounding error, and the size of the gap is the point. Priced at 1.27, that same $3,315,000 of annual job cost sells for $4,210,000 instead of $5,000,000. The company books a $390,000 loss in a year it should have cleared $400,000, and not one thing went wrong in the field to cause it. The number went stale while the costs underneath it kept climbing and the owner kept working for free.
Recompute annually, at minimum. Run the numbers again any time your revenue target moves, you add an office seat, or your insurance renewal jumps. Overhead percentage moves when either the top or the bottom of that fraction moves, and the top moves more often than GCs expect.
The same discipline applies downstream on change orders. A change priced at cost plus 10 while your contract carries 1.51 dilutes the whole job, which is why reading a change order before you approve it matters as much as pricing the original bid.
Where Baxie fits
Baxie bakes this exact calculation into estimating. You enter your annual overhead, your revenue target, and your profit target once in settings, and Baxie derives your markup multiplier from those three numbers. Every estimate you build gets checked against it, and any bid whose gross profit falls below its overhead coverage amount gets flagged before it leaves your office. Baxie is pre-launch for California residential GCs at $2M to $20M. Founding pricing is on the pricing page.
Do this today
Open your P&L and pull every expense line that is not charged to a specific job. Add them up, including a real salary for yourself, then divide by next year's revenue target. That is your overhead percentage, probably for the first time.
Then subtract overhead and your profit target from the revenue target, divide the revenue target by what remains, and put that multiplier on your next bid.
Then find out where the rest of it is leaking. The 12-point margin leak checklist covers the twelve places margin most often walks out the door on residential jobs, from allowances to unpriced schedule impact. Run it on your last three completed jobs and you will see the pattern.
FAQ
What counts as overhead for a construction company?
Overhead is every annual expense that no single job pays for: owner salary, office payroll, rent, insurance, trucks not billed to jobs, software, marketing, bad debt, and warranty callbacks. If the job goes away and the cost stays, it is overhead.
How do I calculate the overhead percentage?
Total annual overhead, then divide by your realistic annual revenue target. A $5M California residential GC that pays its owner a real salary often lands near $1,285,000 of overhead, about 26 percent of revenue.
How does overhead set markup?
Add overhead and desired net profit, subtract from revenue to find dollars left for job cost, then divide revenue by that remainder. That quotient is your markup multiplier. Markup is a result you calculate, not a percentage you borrow.