A work in progress (WIP) report shows, job by job, what you have earned compared with what you have billed. Earned revenue is the contract value multiplied by how complete the job is. The gap between earned and billed is your over or under billing. Most accounting software doesn't produce this report on its own, because it records invoices and costs but not contract values, budgets or percentage complete. So many builders put the WIP report together in a spreadsheet each month. This guide explains what a WIP report is, how to calculate WIP with a worked example, why it ends up in Excel, a monthly routine, and what changes at 30 June.
What is a WIP report in construction?
A construction WIP report is a monthly (or weekly) table with one row per open job. It answers three questions the profit and loss report can't: how far through each job you are, whether your claims are ahead of or behind the work, and whether each job is still on track to make the margin you priced.
For each job, it brings together:
- Contract value, including approved variations.
- Budgeted cost, also updated for approved variations.
- Costs to date: materials, subcontractors, labour and other direct costs.
- Percentage complete.
- Revenue earned: contract value multiplied by percentage complete.
- Billed to date: progress claims invoiced so far.
- Over or under billing: earned minus billed.
- Forecast margin: contract value minus the expected final cost.
Your accountant also uses the year-end WIP to decide how much revenue belongs in the financial year. During the year, it is mainly a management report: the one place you can see every job's real position.
How to calculate WIP in construction
The most common method is cost-to-cost. You work out percentage complete from costs, then use it to work out earned revenue.
- Percentage complete = costs to date ÷ total budgeted cost.
- Revenue earned = contract value × percentage complete.
- Over or under billing = billed to date − revenue earned. A positive number is over-billing; a negative number is under-billing.
- Forecast margin = contract value − (costs to date + estimated cost to complete).
A worked example
These numbers are made up to show the method. They are not from a client.
For example, say a job has a contract value of $1,000,000, including approved variations. The budgeted cost is $850,000. Costs to date are $340,000, and you've claimed $450,000 so far.
- Percentage complete, for example: $340,000 ÷ $850,000 = 40%.
- Revenue earned, for example: $1,000,000 × 40% = $400,000.
- Over or under billing, for example: $450,000 billed − $400,000 earned = $50,000 over-billed.
- Forecast margin, for example: $1,000,000 − $850,000 = $150,000, if your budget still holds.
So, for example, that $50,000 of over-billing is cash you're holding for work you haven't done yet. It belongs on the balance sheet as a liability, not in profit. If you'd claimed only $300,000 in the same example, you'd be under-billed by $100,000: you've done work you haven't claimed, and you're funding the job yourself.
Both matter. Over-billing can make cash look healthier than it is. Under-billing often means a claim was missed or a variation wasn't billed. A normal profit and loss report shows neither.
When cost-to-cost gets it wrong
Cost-to-cost is simple and comes straight from the numbers, but it's only as good as the budget and the cost coding. A supplier bill coded to the wrong job, or a budget that ignores an approved variation, moves the percentage. A big delivery of materials that haven't been installed yet makes a job look further along than it is. Some builders use a site or quantity surveyor assessment instead, or as a check. Whichever you use, use it consistently and write down why when you override it.
How to create a WIP report
You need one row per open job and a fixed cut-off date. Then:
- Pull costs to date by job from your accounting or job system.
- Pull billed to date by job from your claims or invoices.
- Add the contract value and budget, updated for approved variations, from your estimating or job system.
- Calculate percentage complete, earned revenue, over or under billing and forecast margin, as above.
- Review the jobs that look wrong before anyone relies on the totals.
The hard part is rarely the formulas. It's that the inputs live in different places and have to be joined by job number every month.
Why WIP ends up in Excel
The accounting system usually holds two of the ingredients: costs to date and billed to date, often split by job through a tracking category or project code. The rest lives elsewhere:
- Budgets and variations sit in the estimating or job system.
- Percentage complete isn't something general accounting software calculates for a contract.
- Claims and retentions are often in a claims tool such as Payapps or in the job system.
- Job coding is limited. In Xero, for example, you get two active tracking categories, so if region or division already uses them, jobs get squeezed in.
So someone exports from each system and joins it by job number. In some businesses that's the owner or a bookkeeper; in others a financial controller, a contract administrator or the external accountant. The spreadsheet becomes the WIP system. It depends on one person, formulas get copied from last month, new jobs get missed, and nobody else can check it quickly. This is double data entry (the same information handled twice in different places) in its most expensive form, because the numbers drive cash and margin decisions.
Three ways to produce a WIP report
1. A monthly spreadsheet
Export profit and loss by job from your accounting system, add contract values, variations and budgets, and calculate earned versus billed. Enough when: you run a handful of jobs and one careful person owns the file.
2. A job system with WIP built in
Some construction and job management systems produce WIP from their own data and send invoices to the accounting system. Enough when: all costs, claims and variations go through that system. Watch for: supplier bills entered straight into the accounts and payroll costs, which leave the WIP short.
3. A connected WIP report
Budgets and variations come from the job system, costs and invoices from the accounting system (Xero, MYOB or another), and a report joins them by job automatically. When it's fixed, you open the report on Monday and it shows last week's position for every job, with nothing to rebuild. Worth it when: you run many jobs at once, more than one entity, or month-end WIP takes days and still gets questioned.
A monthly WIP checklist
- Cut-off. Agree the date. All bills, claims and timesheets up to it are in.
- Code costs to jobs. Clear anything unallocated or coded to overheads by mistake.
- Update contract values and budgets for every approved variation.
- Set percentage complete for each job, and note any override.
- Calculate earned, billed, and over or under billing.
- Check retentions held and owed by job.
- Review the outliers. Jobs where costs run ahead of claims, under-billing that should be a claim, and jobs whose forecast margin dropped.
- Post the WIP adjustment if your accountant wants it in the monthly accounts, and reverse it next month.
- Keep the month's file so you can see how each job moved.
WIP at 30 June
At year end, WIP stops being just a management report. Your accountant uses it to work out how much revenue belongs in this financial year, and that flows into the tax return and the balance sheet. For Queensland builders, the balance sheet is also what the QBCC minimum financial requirements are measured on: over-billing sits in current liabilities and under-billing in current assets, so WIP moves your current ratio and net tangible assets. See our guide to QBCC MFR annual reporting.
Get the year-end WIP right by doing the June WIP the same way as every other month, with costs coded, variations in and retentions reconciled. Then the accountant reviews it rather than rebuilds it. How WIP is treated for tax and in the accounts is a question for your accountant.
Frequently asked questions
What is a WIP report in construction?
A table, one row per open job, that compares the revenue you've earned (contract value times percentage complete) with what you've billed. It shows over and under billing and forecast margin for every job.
How do you calculate WIP in construction?
Divide costs to date by total budgeted cost to get percentage complete, multiply the contract value by that percentage to get earned revenue, then compare earned revenue with billed to date. The difference is your over or under billing.
What is over and under billing?
Over-billing means you've claimed more than the work done, so you're holding cash for work not yet done. Under-billing means you've done work you haven't claimed, so you're funding the job. A WIP report shows both, job by job.
Can Xero or MYOB produce a construction WIP report?
Not on their own. They show costs and income by job code, but they don't hold contract values, budgets or percentage complete, so they can't calculate earned revenue or over and under billing without another system or a spreadsheet.
How often should builders run a WIP report?
At least monthly. Builders with many jobs or tight cash often want it weekly, which is only realistic if the report updates itself.
Do I need new software to get a proper WIP report?
Often not. If your job system holds budgets and claims and all costs flow through it, use its reports. If the information is split between an estimating tool, the accounting system and payroll, connecting them is usually cheaper and less disruptive than replacing them.
For why WIP numbers go wrong, see Your WIP is lying to you. If WIP takes days to build or nobody trusts it, see our construction WIP reporting service, or book a free initial chat and we'll tell you whether a spreadsheet, an app or a connected report fits your business.