
Ask a contractor which of last year's jobs was most profitable and you will usually get an instinct rather than a number. Sometimes the instinct is right. Often it is not, and the job everyone remembers as the good one turns out to have been carried by the two nobody thinks about.
The gap is structural. In most construction books, costs land in general accounts — Materials, Subcontractors, Labor — with no job attached. Add them up and you know what you spent in total. You cannot answer what you spent on the Henderson job, which means you cannot say whether the Henderson job made money.
What job costing actually requires
Every cost gets tagged to the job that incurred it, at the point it is recorded. Four categories carry most of it:
- Labor. Hours worked on the job, at loaded cost — wages plus payroll taxes, insurance, and workers' comp, not just the hourly rate.
- Materials. Coded to the job at purchase, which means the supplier invoice needs a job reference before it gets filed.
- Subcontractors. Per job, with the added benefit that this is also what makes 1099 reporting straightforward in January.
- Equipment and other direct costs. Rentals, permits, dump fees, anything that exists because that job exists.
Loaded labor cost is where most self-managed systems go wrong. A crew member at $28 an hour does not cost $28 an hour. With payroll taxes, comp, and benefits, the real figure is frequently 25–35% higher. Every job costed at the bare wage looks more profitable than it is, uniformly, which is the worst kind of error because it never trips an alarm.
Budget versus actual, while the job is running
Costing after the fact tells you what happened. Costing against a budget tells you what is happening, in time to react.
The structure that works is a breakdown by trade category — framing, electrical, plumbing, finishes — each with a budget, actual to date, committed but not yet invoiced, and the variance. When electrical is 80% spent at 40% complete, you know in week three instead of at closeout.
That reporting can live in the accounting file, and for many contractors it also lives in a purpose-built spreadsheet alongside it, because the level of detail a project manager wants is finer than a chart of accounts should carry. Both work. What does not work is having neither.
The two things that quietly break it
Retainage recorded as revenue. Money held back until completion is a receivable, not cash and not yet fully earned. Recorded as ordinary revenue, it inflates profit on paper while the cash sits with someone else.
Work in progress ignored entirely. On jobs spanning months, costs incurred but not yet billed — and billings issued ahead of work performed — both need to be recognised, or every month-end swings wildly depending on invoice timing rather than actual progress.
What it changes
The immediate payoff is knowing where you stand. The durable payoff is bidding.
A contractor with two years of real job costs knows what a bathroom actually costs them, in their market, with their crew — not what the estimating guide says. They know which job types consistently beat budget and which consistently do not. That is the difference between pricing from data and pricing from hope, and over a few years it compounds into a materially different business.
We handle this as job costing and loan draw tracking, including draw schedules that reconcile to recorded costs — which is what a lender checks. There is also state-specific guidance for construction and trades, because how labor and materials are taxed varies enormously depending on where you work.
Behind on Your Books?
We handle your bookkeeping end-to-end — categorization, reconciliation, month-end close, and clean financial statements, so your books stay current and CPA-ready.
