Treadstone Associates
Article · 9 min read

Tracking committed costs while the job is live

Actual cost tells you what's already gone out the door. Committed cost tells you what's already spoken for. On a live job, the second number moves first — and matters more.

Treadstone Associates · Updated 2026

Key takeaways

  • • Committed cost = every purchase order and signed subcontract issued, whether or not it's been invoiced yet; actual cost is only what's been paid or accrued so far.
  • • The gap between committed and actual is money already obligated but not yet spent — it isn't available for anything else, even though it hasn't hit the books.
  • • The uncommitted remainder of the budget (budget minus everything committed) is the only part of a job's cost still genuinely open to change.
  • • A change order moves committed cost and the budget line together, in the same entry — not as two separate, disconnected updates.

Two contractors can look at the same job and see two different pictures if one is only reading actual costs paid to date and the other is reading what's actually been committed. Actual cost is historical — it only tells you what already happened. Committed cost is closer to real time: the moment a purchase order is issued or a subcontract is signed, that money is spoken for, even though not a dollar of it has been invoiced yet.

Three numbers, not one

A live job's cost position is really three separate figures, and conflating any two of them hides the number that actually matters. Committed cost and actual cost are the two most commonly confused: committed is everything under contract or purchase order for the job, actual is only what's been paid or accrued so far. The third figure, the uncommitted remainder of the budget, is what's left once committed costs are subtracted — and it's the only part of the job still genuinely open, because everything already committed is, for practical purposes, already spent even if the cheque hasn't cleared.

What a live tracking tool actually tracks

Procore's Commitments tool exists specifically for the first of those three numbers, letting a project team see the status and current value of all contracts and purchase orders issued against the job. The separate Budget tool carries the other two: a “Job to Date Costs” column for actual spend, and its own “Forecast to Complete” feature, with either a lump-sum or an itemized manual-entry method, for re-pricing the uncommitted remainder as the job progresses. Reading all three tools together — not just the actual-cost line — is what turns a monthly cost report into something that reflects the job's real position in real time, rather than a lagging snapshot of invoices already processed.

Worked example: reading the three numbers on one job

A mechanical subcontract carries a $340,000.00 approved budget. By the review date, committed costs total $298,000.00 — a ductwork supply contract at $145,000.00, a controls sub-subcontract at $76,000.00, and an in-house labour budget of $77,000.00, all issued or signed.

Actual costs paid or accrued to date are $210,000.00. The gap between committed and actual — $298,000.00 minus $210,000.00 — is $88,000.00: money already obligated on open purchase orders and subcontracts that simply hasn't been invoiced yet. That $88,000.00 is not available for anything else, even though it won't appear as a cost until the invoices land.

The uncommitted remainder of the budget is $340,000.00 minus $298,000.00 committed: $42,000.00, the only part of this job's cost still genuinely open — in this case, testing and balancing work not yet subcontracted.

A change order moves two numbers at once

When a scope change is priced and approved, it has to move the committed figure and the budget figure together, in the same entry — not as two separate updates that can drift out of sync. Procore's Budget tool documents exactly this kind of linked entry: a “Budget Changes” feature that lets a change be categorized by a “Type” field — transfers against contingencies, allowances or buyouts — with a full change history that can be filtered afterward. Continuing the example above, a $9,500.00 approved change order for additional ductwork insulation adds $9,500.00 to both committed costs ($298,000.00 → $307,500.00) and the approved budget ($340,000.00 → $349,500.00) at the same time, leaving the uncommitted remainder unchanged at $42,000.00. Recording only one side of that entry — adding the cost without adding the budget, or the reverse — is exactly how a job's committed figure quietly stops matching what it's actually contracted to spend.

Track it by cost code, not just by job total

A single committed-cost number for the whole job hides exactly where the risk is concentrated. Breaking commitments out against a job cost code structure — separating labour, material, equipment and subcontract cost by trade or scope, rather than one blended figure — is what lets a project manager see that the electrical scope is 95% committed against its own budget while site work is only 40% committed, instead of a single job-wide percentage that averages the two into something that looks fine. The same structure is what feeds a clean overbilling-and-underbilling check at the job level, because both calculations depend on knowing exactly which scope the committed and actual figures belong to.

Committed cost isn't the same as cash actually released

One more distinction belongs in the same tracking discipline: the committed and actual cost figures on a job describe the value of work and materials, not the cash that's actually changed hands. In Ontario, every payer holds back ten per cent of the value of the work as it is done or certified, so a subcontractor whose committed and actual cost figures both show full value delivered has still only been paid 90% of it in cash, with the remainder sitting in holdback until it's released. A committed-cost tracker that doesn't separately flag the holdback portion can make a job look more collected than it actually is, right up until the holdback comes due.

Why the committed figure matters more than actual cost, early on

On a job that's only a few weeks in, actual costs are almost always small — mobilization, an initial material deposit, maybe the first labour week. Reading actual cost alone at that stage tells you almost nothing about the job's real financial shape. Committed cost tells you immediately: once the major subcontracts and long-lead material purchase orders are issued, most of a job's total cost is already locked in, weeks or months before the invoices arrive to confirm it. That's exactly why a job going sideways is visible in the committed-cost line first — it's the earliest reliable signal available, precisely because it doesn't wait for an invoice to catch up.

Common questions

What's the difference between committed cost and actual cost?

Committed cost is everything already under a purchase order or signed subcontract for the job, whether or not it's been invoiced. Actual cost is only what's actually been paid or formally accrued to date — a smaller, more lagging number.

Why does the uncommitted remainder of the budget matter?

It's the only part of the job's cost still genuinely open to change. Everything already committed is, for practical planning purposes, already spent even before an invoice arrives, so the uncommitted remainder is what a contingency or a scope change actually has to draw from.

Should a change order be recorded before or after it's priced?

After it's priced and approved, as a single linked entry that adds to both the committed figure and the budget at the same time. Recording the cost impact without adjusting the budget line (or the reverse) is how the two drift out of sync.

How often should committed costs be reviewed on a live job?

At least as often as the progress-billing cycle, and immediately after any purchase order or subcontract is issued for a major scope — committed cost moves in real time, and a monthly review that only looks at actual cost paid will always be a step behind it.

Does tracking by cost code slow down reporting?

It adds setup work up front — assigning every purchase order and subcontract to the right code — but it pays that back on every review after, since a job-wide total can't tell a manager which specific scope is driving a variance without someone re-deriving it manually every time.

See where AI pays off first in your business.

A 30-minute call is enough to tell you whether AI pays for itself here.