QuickBooks Online doesn't have a built-in WIP schedule. But all the data you need is already in QBO — you just have to know which reports to pull and how to assemble them. Here's exactly how to do it.
What you need before you start
Each active job needs to exist as a sub-customer in QBO. Bills, expenses, and payroll must be coded to the correct job. Invoices must be linked to the right customer/job. If job coding is inconsistent, your WIP numbers will be wrong — fix that first.
A WIP (Work in Progress) schedule is a financial report that shows the status of every active construction project at a specific point in time. For each job it answers four questions:
Banks, bonding companies, and CPAs use the WIP schedule to assess whether a contractor is financially healthy. It's also the most accurate way to recognize revenue on long-term construction contracts under GAAP and ASC 606.
In QuickBooks Online, go to Reports → Job Profitability Summary (under Business Overview or by searching). This gives you for each job:
Set the date range to All Dates so you see totals from project start, not just the current period. Export this to a spreadsheet — you'll use it as the base of your WIP schedule.
The Job Profitability report only shows what's been entered — not the total contract value or the estimated costs needed to finish. For that you need:
Go to Reports → Estimates by Customer to pull all open estimates with their totals. Match each estimate to its corresponding job in your spreadsheet.
The cost-to-cost method is the industry standard and is required by most bonding companies and lenders. The formula:
For example: A job with $180,000 in estimated total costs. If $72,000 has been spent so far, the job is 40% complete.
Do not use physical completion percentages ("we're 60% done with the framing"). Bonding companies reject these — they want a number that can be verified directly from the accounting records.
This is the amount of revenue the contractor has legitimately earned based on work completed — regardless of how much has been invoiced. This is the key number in the WIP schedule. It's what gets booked to the income statement under percentage-of-completion accounting.
Compare revenue earned to billings to date (from the Job Profitability report):
Retainage is the portion of each invoice withheld by the owner or GC until project completion — typically 5–10% of contract value. It needs to be tracked separately because:
In QBO you can track retainage by creating a separate retainage receivable item on each invoice, or by using a separate retainage account. Pull the total retainage held per job and add it as a column on your WIP schedule.
⚠ Using invoice date instead of all-dates for billings
Always pull cumulative billings from project start — not just the current period. A WIP schedule shows the lifetime status of each job, not just what happened this month.
⚠ Forgetting change orders in contract value
If a change order was approved and billed, the contract amount must be updated. A stale contract value makes the % complete and over/under billing calculations wrong.
⚠ Not updating estimated costs as jobs progress
If estimated total costs change (due to scope creep, cost overruns), you must update them. Keeping stale estimates inflates % complete and hides losses.
⚠ Including completed jobs
Once a job is complete (100% billed, retainage released), remove it from the WIP schedule. Completed jobs should move to a separate completed contracts schedule.
For a contractor with 10–15 active jobs, building this schedule manually takes 2–4 hours every month. You have to export multiple QBO reports, clean the data, paste it into a spreadsheet, write or re-check the formulas, and format the output. And every month you do it again from scratch.
ReconcileBook connects directly to QuickBooks Online and generates the complete WIP schedule automatically — every job, every column, using live QBO data. No spreadsheet. No manual exports. Ready to download as a PDF and send to bonding companies or clients.
Questions about WIP schedules in QBO? Email us or browse more guides.