Construction overhead allocation explained
Every job cost has a category that never quite fits: the truck payment, the insurance premium, the office phone, the hours you spend on the business rather than on a jobsite. None of it was caused by any one job, but all of it has to be paid for by the jobs you run, or it does not get paid at all.
That category is overhead, and the mistake most small contractors make is either ignoring it — pricing jobs off labor and materials alone, and quietly losing money on every one — or overcorrecting into a system so detailed it takes hours to maintain and gets abandoned within a season. There is a middle path, and it is simpler than either extreme.
Below: what actually counts as overhead, why splitting it precisely across jobs is not worth the effort, and how to set a flat percentage that covers what the business genuinely spends.
Overhead versus direct job cost
A direct cost is caused by a specific job — the lumber for that deck, the hours a carpenter worked on that remodel, the sub who wired that kitchen. Stop the job and the cost stops with it. Overhead keeps running whether or not any job is active: it exists to keep the business capable of taking on work at all.
| Direct job cost | Overhead |
|---|---|
| Labor hours worked on a specific job | Office admin time, bookkeeping, your own management hours |
| Materials bought for a specific job | Tools and equipment not tied to one job |
| A sub hired for a specific job | Vehicle payments, fuel not billed to a job, insurance |
| Permit fees for a specific job | Phone, software, office rent, marketing |
The test is simple: if the job disappeared tomorrow, would this cost disappear with it. If yes, it is direct. If the bill shows up anyway, it is overhead.
Why splitting overhead per job wastes more time than it saves
It is tempting to want precision — to calculate exactly how much of this month insurance bill belongs to each of the four jobs running, weighted by hours or square footage or whatever seems fairest. In practice this takes real time every month, requires guessing at allocation weights that are themselves somewhat arbitrary, and produces a number barely more accurate than a much simpler method.
The insurance premium does not actually know which job it belongs to. Any formula splitting it by hours or revenue is an estimate dressed up as precision, and the extra hour spent building that formula each month is itself an overhead cost — one more thing eating time that could go toward the next bid or the next site visit.
A flat percentage applied consistently gets within a few points of the detailed method, with none of the monthly upkeep. For a business running a handful of jobs a year, that trade is not close.
Setting the right percentage
- Add up a full year of overhead costs: insurance, vehicles not billed direct, office costs, admin wages, software, and anything else that keeps running with no jobs open.
- Add up the total revenue you expect to bill across all jobs in that same year.
- Divide overhead by expected revenue. If overhead runs $72,000 against $600,000 of expected annual revenue, that is 12%.
- Apply that percentage as a line on every bid and every job cost, the same way materials or subs are applied.
- Recalculate once a year, or sooner if revenue or overhead shifts significantly — a slow year with the same fixed costs pushes the percentage up, and it should be updated rather than left stale.
A common mistake is setting the percentage once and never revisiting it. If revenue grows but the percentage does not shrink to match, jobs are overcharged for overhead they no longer proportionally need. If revenue drops and the percentage stays the same, overhead quietly goes unrecovered, and the business absorbs the gap out of margin nobody sees leaving.
A worked example
A contractor totals a year of overhead: $18,000 insurance, $14,000 vehicle costs not billed direct, $22,000 office and admin, $10,000 software and phones, $8,000 marketing — $72,000 in total, against $600,000 of expected annual revenue. That sets the overhead rate at 12%.
- A $48,000 job carries $5,760 of overhead at 12%, on top of labor, materials and subs.
- Without that line, the job is priced as if the truck, the insurance, and the office phone were free.
- Combined with a budgeted $13,200 labor, $12,000 materials, and $7,500 subs, total cost lands at $38,460 — leaving $9,540 of planned margin, about 19.9%.
Drop the overhead line entirely and the same job looks like it planned for $15,300 of margin instead of $9,540 — a number that feels better and is simply wrong, because it is missing a cost the business will still have to pay.
Once a rate is set, applying it consistently is the part that matters more than the formula. SiteLedger tracks real-time job cost and margin per job as labor and materials post, which makes it easy to see whether a flat overhead rate is actually being applied and whether it still matches what the job is earning.
Consistency beats precision
Contractors lose a lot of time arguing about whether overhead should be allocated by revenue, by labour hours or by direct cost. All three are defensible and all three are approximations. What actually causes damage is changing method, or applying overhead to some jobs and not others, because then no two jobs on your books are comparable.
Pick one, write down what it is, and apply it to everything. A slightly imperfect method used consistently gives you jobs you can rank against each other, which is the whole point. A theoretically better method applied unevenly gives you nothing.
Common questions
- What counts as overhead in a construction business?
- Costs that keep running regardless of which jobs are active: insurance, office rent, admin wages, vehicle payments not billed to a specific job, software, and marketing. If a cost would disappear along with a specific job, it is a direct cost instead.
- Should I calculate overhead separately for every job?
- Not in detail. Splitting shared costs like insurance across jobs by hours or revenue takes real time each month and produces a number only marginally more accurate than a flat percentage applied consistently. For most small contractors, the flat method is the better trade.
- How do I calculate my overhead percentage?
- Add up a full year of overhead costs, divide by expected annual revenue across all jobs. At $72,000 of overhead against $600,000 of expected revenue, the rate is 12%, applied as a line on every bid and job cost.
- How often should the overhead percentage be updated?
- At least once a year, and sooner if revenue or costs shift meaningfully. A rate that goes stale either overcharges jobs when revenue grows, or leaves overhead unrecovered when revenue drops.
- What happens if overhead is left out of job pricing?
- Jobs get priced as if the truck, insurance, and office costs were free. Margin on paper looks stronger than it actually is, and the business ends up covering real costs out of margin that was never planned to absorb them.
Keep reading
Job costing for contractors: how to know your margin before the job closes
How to tie labor, materials, subs and overhead to a job while it is still open, budget each bucket, and spot a job going bad early enough to fix it.
Markup vs margin: the difference that quietly costs contractors money
Markup is what you add to cost. Margin is what you keep. A 20% markup is a 16.7% margin — the arithmetic, a conversion table, and how to price backwards.
How to read a job cost report
How to read a job cost report: committed against actual, percentage complete against percentage spent, and the three numbers worth acting on.