Bradley & Company FRACTIONAL CFO · CMA-LED Book a Consultation
Home Services Industries Construction & Remodeling Manufacturing Food Manufacturing Professional Services AI-Driven Accounting Pricing About Contact Book a Consultation

← All Insights

INSIGHTS · CONSTRUCTION

Reading a WIP schedule: where contractor profit hides

A profitable month can hide a job that’s losing money. The work-in-progress schedule is where that shows up first, if you know how to read it.

Construction revenue doesn’t follow invoices. On a long job, billing can run well ahead of the work or well behind it, so a P&L built on billings alone can make a month look better or worse than it really was. The work-in-progress (WIP) schedule fixes that by measuring each open job on its own: how far along it is, what it has earned, what it has billed, and what it’s now expected to make. Banks and bonding companies routinely ask for it, for the same reason.

The columns that matter

  • Contract value — the original contract plus approved change orders.
  • Estimated total cost — cost to date plus the current estimate of cost to complete. This is the number that has to be updated honestly.
  • Percent complete — under the common cost-to-cost method, cost to date divided by estimated total cost.
  • Earned revenue — contract value times percent complete.
  • Billed to date — everything invoiced on the job so far, including retainage.
  • Over/(under) billing — billed to date minus earned revenue.

A worked example

JobContractEst. total costCost to date% completeEarned revenueBilled to dateOver/(under)
Job A$1,000,000$800,000$400,00050%$500,000$560,000$60,000
Job B$600,000$480,000$360,00075%$450,000$400,000($50,000)
Job C$400,000$390,000$195,00050%$200,000$220,000$20,000

Illustrative figures. Percent complete = cost to date ÷ estimated total cost. Earned revenue = contract × percent complete.

Overbilled: cash ahead of the work

Job A has billed $60,000 more than it has earned. That cash is welcome, but it isn’t profit; it’s a liability (“billings in excess of costs and estimated earnings,” a contract liability under ASC 606) because the work still has to be done. Some overbilling is normal and healthy. Spending it on overhead or the next job is how contractors end up short of cash when the remaining work comes due.

Underbilled: work ahead of the cash

Job B has earned $50,000 more than it has billed. That’s recorded as an asset (“costs and estimated earnings in excess of billings,” a contract asset), but it’s worth asking why. Sometimes billing is simply lagging. Sometimes it’s an unapproved change order, or costs running ahead of the estimate, which inflates percent complete. Large or growing underbillings are one of the first things a surety looks at.

Profit fade: the number that matters most

Job C was bid at $320,000 of cost, a 20% margin. The estimate to complete has since risen, and estimated total cost is now $390,000. Expected gross profit has fallen from $80,000 to $10,000, a margin of 2.5%, and at 50% complete the job has earned only $5,000 of gross profit to date. If the estimate to complete isn’t updated, none of this reaches the P&L until the job closes out and the overrun lands all at once. Updating every job’s estimate and comparing its current margin with the original bid, every cycle, is what turns a WIP schedule into an early warning.

If the estimate ever shows a job will lose money overall, the full expected loss is recognized right away, not spread over the rest of the job. That’s another reason the estimate to complete has to be kept current.

Keeping the schedule honest

  • Update estimates to complete every cycle, with the project manager’s input, not just at year-end.
  • Code costs to the job as they’re incurred, so cost to date is accurate.
  • Watch costs that don’t reflect progress, such as materials delivered but not yet installed; they can overstate percent complete.
  • Include only approved change orders in contract value.

How we use it

WIP schedules, estimated cost to complete, and over/under billing exposure are standard in every construction engagement, refreshed on each reporting cycle. See our construction reporting →

Want to see your WIP schedule refreshed every cycle?

A 30-minute call at no cost: how you get your numbers today, what you wish you knew sooner, and whether an engagement makes sense.