Three Buckets, Not Two
Most contractors split costs into direct and overhead. There is a third bucket between them that causes most of the confusion.
- Direct costs — traceable to one job. The concrete poured on that slab, the hours that crew worked there, that subcontract.
- Indirect costs — caused by construction work but not traceable to one job. The superintendent covering four sites, small tools, the pickup, equipment maintenance, the yard.
- General and administrative — costs that exist whether or not you build anything. The office, accounting, insurance on the business, the owner's salary.
Indirect costs belong on jobs. G&A generally does not. Blurring that line is where job margins stop meaning anything.
Why It Matters More Than It Sounds
Suppose you have $600,000 of indirect costs and $4m of direct job costs. That is 15% on top of every job. A job showing 22% gross margin on direct costs alone is really running about 7% once indirects land. On a thin job, it is running at a loss.
Contractors who never allocate indirects consistently bid work that looks profitable and is not. The margin looks fine on the job report, and the money quietly disappears in the overhead line at year end.
Choosing an Allocation Base
The base should be whatever actually drives the cost. Three common choices:
- Direct labor hours or dollars. The most common, and right for most trade contractors, because supervision, small tools and vehicles scale with crew size.
- Direct job cost. Simpler, but distorts on material-heavy jobs — a job with a $300,000 equipment purchase absorbs indirect costs it never caused.
- Equipment hours. Right for the equipment pool specifically. Maintenance, fuel and repairs belong to the jobs that ran the machines.
Many contractors need two bases: labor-driven indirects on labor hours, equipment-driven indirects on equipment hours. That is not over-engineering — it is the difference between a sitework job and a finish job being charged fairly.
Setting the Rate
The rate is budgeted indirect costs divided by budgeted base for the year. If you expect $600,000 of indirect costs and 40,000 direct labor hours, the rate is $15 per hour.
Two disciplines make this work:
- Review it quarterly. If volume is running below plan, your rate under-recovers and the shortfall shows up as unallocated cost. Adjust before year end, not after.
- Track the variance. Allocated indirect cost minus actual indirect cost tells you whether the rate is right. Persistent under-recovery means you are under-pricing every job.
The Mistakes That Distort Margins
Allocating G&A into jobs. It makes every job look worse and tells you nothing, because G&A does not vary with the work. Keep it below the gross profit line.
Using one rate across very different work. If you self-perform concrete and also manage subcontracted fit-out, a single labor-based rate loads the concrete work with costs the fit-out caused.
Changing the rate mid-year. It breaks comparability between jobs and makes your WIP schedule inconsistent. Set it annually, review quarterly, change it deliberately at a boundary.
Not allocating at all, then wondering where the money went. The commonest version, and the most expensive.
What It Should Change
Once indirects are allocated properly, two things become visible that were not before. Which job types genuinely make money once the supervision and equipment they consume are counted. And whether your bid markup is actually covering the cost of doing the work, as opposed to covering direct cost and hoping.
Both of those change what you bid on next.
If your job margins look healthy but your bank balance disagrees, allocation is one of the first places we look in a diagnostic.
Ready to get your finances in order?
Book a free 30-minute consultation with FinRise Advisors — no obligation.