Anonymised, illustrative composite. An Ontario general contractor’s monthly work-in-progress review, run purely off cost data, flagged a job that looked eleven percentage points behind where its billing said it was.
At a glance
The controller’s monthly WIP schedule compares cost incurred to date against total budgeted cost for every open job, independent of whatever has actually been certified for payment. On this job the two numbers had drifted apart by more than they ever had before.
The contract was a CCDC 2 – 2020 Stipulated Price Contract, which CCDC notes “assumes monthly progress payments” certified against a schedule of values, not against raw cost incurred. If a schedule-of-values line item bundles two trades’ work into one billing line, and one of those trades is progressing faster than the other, the certified percentage for that line understates real progress until the slower trade catches up — and nothing in the monthly application process forces anyone to notice.
Cost-based percent complete (cost incurred to date divided by total budgeted cost) stood at 72%. The certified billed-to-date figure, taken straight from the last approved Application for Payment, stood at 61%. The gap: 11 points, or 11% of the $2,600,000 contract value — $286,000 of work genuinely performed that had not yet been reflected in a certified payment application.
Tracing the gap to source, two schedule-of-values lines — drywall/framing bundled together, and mechanical rough-in/trim bundled together — each carried one combined percentage even though the first trade in each pair was substantially ahead of the second. The combined line had been certified at the slower trade’s pace.
CCDC 2’s progress-payment mechanism pays what is certified against the schedule of values, not what cost accounting says is actually done — so a schedule of values that does not track the real sequence of work will systematically understate certified progress, and only a cost-based check catches it before the next application locks the same low number in again. The GC’s own WIP review, not the certification process itself, was the mechanism that surfaced the gap.
The controller split the two bundled schedule-of-values lines into separate line items reflecting each trade’s actual progress, and the consultant certified the corrected 72% on the next application, recovering the $286,000 gap in cash flow terms over that and the following month’s billing. On pricing structures generally, see the difference between stipulated price and cost-plus pricing. The related quantity-tracking problem on a unit-price job is in how margin fade got traced to two specific cost codes, and the shop-overhead reclassification on a cost-plus job is in how a job costing rebuild exposed unbilled shop overhead.
Left unaddressed, the bundled schedule-of-values line would have kept certifying at the slower trade's pace every month, with the gap between cost incurred and cash certified compounding rather than closing on its own — at a conservative 8% financing cost, carrying $286,000 of uncertified, unpaid-for work for even one additional month is roughly $286,000 × 0.08 ÷ 12, about $1,907 of avoidable financing cost stacked on top of the cash-flow strain itself.
Run a cost-based percent-complete check against the certified billed-to-date figure every month, on every job, regardless of whether the billing looks routine — a schedule-of-values line that bundles two trades progressing at different speeds will not flag itself; only a comparison against actual cost incurred will.
A schedule-of-values line covering two trades certifies at whichever pace the slower trade is progressing, because the certifier has only one combined percentage to work from — the faster trade's real progress is invisible on the application for payment even though it is fully reflected in cost incurred. That is why only a cost-based check, run independently of the certification process, could surface the gap: the certification itself was being filled in correctly against the schedule of values as written, it was the schedule of values that no longer matched how the work was actually sequenced. Splitting the two bundled lines into separate items the moment the trades inside them stop moving together is now standard practice on every job this GC certifies.
The WIP schedule is deliberately built off cost data alone, with no reference to what has already been certified — which is exactly why it could see a gap the certification process itself could not. A review that started from the payment application and worked backward would have inherited the same blind spot the bundled schedule-of-values line already had; starting from cost incurred instead gave the controller an independent number to compare against, rather than a second read of the same number.
A 30-minute call is enough to tell you whether AI pays for itself here.