How to read a job cost report
A job cost report looks like a simple table — a few columns, some dollar amounts, maybe a percentage at the bottom. Most contractors glance at it, see a number that is not glaringly red, and move on. That is how a job goes bad without anyone noticing until the very end, because a job cost report only helps if you know what each number is actually telling you.
The words on these reports get used loosely in conversation but mean specific, different things: committed is not the same as actual, budget is not the same as profit, and on budget is not the same as profitable. Mixing those up is not a small error. It is the difference between catching a problem in week three and discovering it after the final invoice.
Below: what each figure on a job cost report means, how they relate to each other, and the signs that a job is quietly losing money even while every number looks close enough.
The four numbers that actually matter
| Term | What it means |
|---|---|
| Budgeted cost | What you planned to spend on the job, broken into labor, materials, subs and overhead — pulled straight from the estimate. |
| Committed cost | Money you have agreed to spend but has not been paid yet — a signed sub quote, a material order placed but not delivered. It is real cost you are on the hook for, even before an invoice arrives. |
| Actual cost | Money that has genuinely been spent — hours logged and approved, receipts posted, sub invoices paid. This is the only number that reflects what has truly happened, not what is expected to happen. |
| WIP (work in progress) | The value of work that has been done but not yet billed. On a job billed in stages, WIP tells you whether your billing is keeping pace with the actual work, or falling behind it. |
Committed cost is the one contractors most often leave out, and it is the one that causes the ugliest surprises. A $7,500 sub job that has been awarded but not yet invoiced is a $7,500 cost that belongs on the report today, not on the day the invoice happens to arrive.
On budget is not the same as profitable
A job can be exactly on budget and still be losing money, if the budget itself was wrong. And a job can be running over budget in dollars while still being perfectly healthy, if the overrun is matched by billed extras. The report only tells you what it is asked, and on budget by itself only answers one question: are we spending what we planned to spend, regardless of whether that plan was any good.
The number that actually answers whether a job is profitable is margin: contract value, including any billed change orders, minus total cost — budgeted, committed and actual combined — divided by contract value. That is a different calculation from spent versus budget, and a report that only shows the second one is only telling half the story.
A $48,000 job with $38,460 in cost has $9,540 of margin, roughly 19.9%. That figure only means something if the cost side includes committed subs, not just the checks already written, and if any unbilled change order work has already been added to the contract side. Skip either adjustment and the margin figure flatters the job.
Red flags to watch for
- Actual cost is close to budgeted cost, but the job is nowhere near finished. Spending 80% of the labor budget on 50% of the scope is the earliest and most reliable warning sign there is.
- Committed cost keeps growing without a matching change to the contract value. Every sub award should either fit inside the original budget or come with an approved price increase — if neither is happening, margin is eroding quietly.
- WIP keeps climbing on a job billed in stages. It means work is getting ahead of billing, and cash is funding a job the client has not paid for yet, even if the job is still profitable on paper.
- A report that only shows budget versus actual with no committed column. It looks clean because it is hiding the costs that have not landed yet, not because those costs do not exist.
- A margin percentage that has not moved in weeks on an active job. On a job with real activity, margin should shift as costs post — a flat number for too long usually means costs are not being recorded, not that nothing is happening.
Reading a report in five minutes
- Check actual plus committed cost against budgeted cost — this is the real spend position, not just what has cleared the bank.
- Ask what percentage of the physical scope is actually done, from whoever is on site, not from the percentage of budget spent.
- Compare those two percentages. If cost-spent is ahead of work-done, the job is trending over budget even if the dollar figures still look close.
- Check whether every committed sub cost and every completed change order has a matching adjustment to contract value.
- Look at margin last, as the summary of everything above it, not as the first and only number you check.
That five-minute check only works if the report is current. SiteLedger updates job cost and margin in real time as hours are approved and receipts are scanned, so the numbers on the report reflect what has actually happened on the job, not what was true a few weeks ago.
Percentage spent is not percentage complete
The single most misread pair of figures on any job cost report is budget consumed and work completed. Sixty per cent of the budget spent is only good news if more than sixty per cent of the work is done, and a report that shows one without the other invites exactly the wrong conclusion.
Most cost overruns are visible in that gap long before they are visible in a total. A job that is forty per cent complete and fifty five per cent spent is in trouble in a way that no single number on the page states outright.
Three numbers worth acting on
- Cost to date against budget at the same point in the programme, not against the whole budget.
- Committed but not yet invoiced, because that is the money already promised and not yet visible.
- Rate of spend over the last two weeks, which tells you whether a problem is getting better or worse.
A report that gives you those three is worth reading weekly. One that gives you a single margin percentage at the end is a historical document.
Common questions
- What is the difference between committed cost and actual cost?
- Actual cost is money that has already been spent — approved labor hours, posted receipts, paid invoices. Committed cost is money you are on the hook for but have not paid yet, like an awarded sub contract. Both belong in a true cost position; leaving out committed costs makes a job look healthier than it is until the invoices catch up.
- Can a job be on budget and still lose money?
- Yes. On budget only means spending is tracking to the original plan — it says nothing about whether that plan was priced correctly in the first place. A job can spend exactly what was budgeted and still deliver a thin or negative margin if the estimate itself was too low.
- What does WIP mean in construction job costing?
- Work in progress — the value of work that has been completed but not yet billed. Rising WIP on a job billed in stages usually means billing has fallen behind the actual work, which strains cash flow even on a job that is otherwise profitable.
- What is the single most useful red flag on a job cost report?
- Cost spent running ahead of work completed. If 80% of the labor budget is gone but the crew lead says the job is 50% done, that gap will not close on its own — it is the earliest reliable sign a job is heading over budget.
- How is margin calculated from a job cost report?
- Contract value, including any billed change orders, minus total cost — actual plus committed — divided by contract value. A $48,000 job with $38,460 in total cost has a margin of $9,540, or about 19.9%.
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.
Construction overhead allocation explained
How to allocate overhead across jobs without pretending to a precision you do not have, and why the method matters less than applying it consistently.