A WIP schedule (work-in-progress schedule) is a report that lists every open construction job and compares how much revenue each one has earned, based on its percentage of completion, with how much has actually been billed, showing whether the job is over billed or under billed.
UK readers: this is close to what you would call a WIP report, and it overlaps heavily with a cost value reconciliation (CVR). The US version leans harder on percentage-of-completion accounting.
For a contractor, the WIP schedule is one of the most important financial reports in the business. Bonding companies and banks commonly ask for it. Your CPA uses it to recognize revenue properly. And for the owner of the business, it is the clearest single view of which jobs are making money and which ones are quietly financing a customer.
What goes on a WIP schedule?
Formats vary, but most WIP schedules carry the same core columns for each open job:
- Contract amount, including approved change orders.
- Estimated total cost: the current best estimate of what the job will cost by the end, not the original bid budget.
- Estimated gross profit: contract amount minus estimated total cost.
- Cost to date: what the job has actually cost so far.
- Percent complete: usually cost to date divided by estimated total cost.
- Earned revenue: percent complete times contract amount.
- Billed to date: what you have invoiced through pay applications.
- Over billing or under billing: billed to date minus earned revenue.
- Cost to complete and backlog: what is still left to spend and still left to earn.
How percentage of completion works (the cost-to-cost method)
The most common way to measure progress on a WIP schedule is the cost-to-cost method:
Percent complete = cost to date ÷ estimated total cost
Then:
Earned revenue = percent complete × contract amount
The logic is that cost is a reasonable proxy for progress: if you have spent half of what the job will cost, you have done roughly half the work. It isn't perfect. Front-loaded material purchases or a big equipment delivery can make a job look further along than it is, which is why material delivered but not yet installed is often excluded from cost to date for this calculation. Your CPA will set the policy that applies to your business.
Over billing vs. under billing
Once you know earned revenue, compare it with what you've billed:
- Over billing (billings in excess of costs and estimated earnings): you have billed more than you have earned. The customer has paid you ahead of the work. On the balance sheet this is generally treated as a liability, because you still owe the work.
- Under billing (costs and estimated earnings in excess of billings): you have earned more than you have billed. You are financing the job. On the balance sheet this is generally treated as an asset, but it is an asset you haven't collected.
Neither is automatically good or bad. Modest over billing is normal on a well-run job with a front-weighted schedule of values. Persistent under billing is the one to worry about: it can mean pay applications are going out late, change orders are being worked but not billed, or the estimated total cost is too low and the job is worse than it looks.
How to calculate a WIP schedule (illustrative example)
Here are three open jobs for a fictional interiors contractor. The numbers are illustrative only.
Step 1: measure progress.
| Job | Cost to date | Est. total cost | % complete |
|---|---|---|---|
| A (office) | $510,000 | $1,020,000 | 50% |
| B (retail) | $297,000 | $396,000 | 75% |
| C (clinic) | $180,000 | $720,000 | 25% |
Step 2: compare earned with billed. Contract amounts are $1,200,000 for Job A, $450,000 for Job B and $800,000 for Job C.
| Job | Earned | Billed | Over / (under) |
|---|---|---|---|
| A | $600,000 | $660,000 | $60,000 over |
| B | $337,500 | $300,000 | ($37,500) under |
| C | $200,000 | $200,000 | $0 |
Reading it:
- Job A is over billed by $60,000. Its gross profit to date is $600,000 − $510,000 = $90,000. Fine, as long as the remaining work can be delivered with the cash already collected.
- Job B is under billed by $37,500. It has earned $40,500 of gross profit ($337,500 − $297,000) but hasn't billed for $37,500 of earned work. The question to ask: is a pay application late, or is there unbilled change order work?
- Job C looks neutral, but its estimated total cost was recently revised up from the bid. The WIP schedule shows that as a lower margin ($800,000 − $720,000 = $80,000, or 10%) across the whole job, which is why updating estimated total cost honestly matters more than any other column.
If a job is forecast to lose money overall, the usual accounting treatment is to recognize the whole expected loss as soon as it is known rather than spreading it over the remaining work. Your CPA will apply the rules that fit your reporting.
Why the estimated total cost column is everything
Every number on a WIP schedule flows from estimated total cost. Understate it and percent complete is inflated, earned revenue is inflated, profit is inflated, and any under billing looks smaller than it is. That is how a contractor can report a good year and then give much of it back in "fade" when jobs close out.
The best defense is a cost-to-complete estimate built from real data, not optimism: committed costs on purchase orders and subcontracts already placed, plus an honest estimate of what is still uncommitted. That is the discipline of job costing, and it is why the WIP schedule is only as good as the job cost system feeding it.
How often should you run a WIP schedule?
Monthly is the common minimum, usually in step with your pay application cycle and month-end close. Quarterly WIPs are typical for bonding and lender reporting. Many contractors look at the underlying job numbers weekly on their larger jobs, because a month is a long time for an under billing to grow unnoticed.
How Vyntworks helps with WIP
Vyntworks uses UK terms in the product, but the logic maps directly. On the cost control page you'll see company-wide WIP: earned versus invoiced, rolled up across every active project, alongside a per-project CVR that sets earned value against committed cost (purchase and subcontract orders) and actual cost. The earned side comes from an internal valuation you set line by line, and actual cost can be read from the Xero ledger where it's connected. Live CVR, WIP and the overspend report are part of the Vyntworks Intelligence add-on; see pricing for details.
If your WIP schedule is still being rebuilt from spreadsheets every month-end, book a walkthrough and we'll show you earned, committed and billed on a project shaped like yours.