Free Guide
Your bonding agent keeps asking for one. Your accountant wants it monthly. And somewhere deep down, you know it's probably more useful than your gut feeling about how the jobs are going. Here's everything you actually need to know.
The Quick Answer
A Work-in-Progress (WIP) schedule is a financial snapshot of every open job you're running. It shows how much revenue you've actually earned (based on job progress) versus how much you've billed — and whether the difference is working for you or against you.
Bonding agents and banks require it. Accountants use it for your financial statements. And if you use it correctly, it's the earliest warning system you have for a job that's quietly going sideways.
This is the part where every contractor nods and then immediately goes back to checking their bank balance to decide how the business is doing. We get it. When money is in the account, things feel fine. When it's not, they don't. But here's the problem with that approach.
Cash in the bank tells you what already happened. A WIP schedule tells you what's about to happen. Those are very different things when you're running three to thirty open jobs at once.
Your bank balance doesn't know you just billed ahead $90,000 on a job that's only 40% complete. It doesn't know you're going to owe that back in labor and materials. It just says “$90,000.” Feels great. Isn't.
The AICPA has found that only about 35.9% of construction firms survive their first 10 years. That's not because the work was bad. It's usually because the financials were invisible until the problem was already a crisis. The WIP schedule is the thing that makes problems visible in time to actually do something about them.
If your bonding agent called tomorrow and asked for your current WIP — today, not Friday — would you have one? Is it current? Does it accurately show where every open job stands? If the honest answer to any of those questions makes you a little uncomfortable, keep reading.
A WIP schedule is a table — one row per open job. Each row tracks five things that, together, tell you exactly where you stand financially on that job. Here's what each column means in actual English (not accountant English).
The total amount the customer agreed to pay you — your original contract plus any approved change orders. This number should move when your scope moves.
Where it comes from: Your contract documents + signed COs
What you expect it will cost to complete the entire job — labor, material, subcontractors, the works. Your original bid plus any cost adjustments. This is the hardest number to keep accurate (more on that later).
Where it comes from: Your PM + your job cost system
What you've actually spent on the job so far. This comes straight from your job cost reports — no guessing involved.
Where it comes from: Your QuickBooks or accounting software
How much you've invoiced the customer or GC. This is what you've asked to be paid — not what you've earned, and definitely not what you've collected.
Where it comes from: Your billing records
How far along the job is, expressed as a percentage. Calculated automatically as Cost to Date ÷ Estimated Total Cost — but you can override it if the math doesn't match reality on the ground.
Where it comes from: Calculated (or your PM's judgment)
They're deciding whether to back your next job. They want to see profit trends, billing patterns, and whether your backlog is healthy. A clean WIP = more bonding capacity.
If you have a line of credit, your bank wants to know your jobs are performing. Consistent overbilling or shrinking margins are red flags.
They need the WIP to prepare accurate financial statements and tax returns. Revenue recognition in construction is different from other industries.
The most important reader. A current WIP tells you which jobs are heading for trouble before the trouble becomes a cash flow crisis.
There are exactly four calculations that power a WIP schedule. They're all multiplication and subtraction. You learned this in seventh grade. The only trick is understanding what each number means, not just what it is.
In English: How far along the job is, based on how much of your expected cost you've spent. If your budget is $500K and you've spent $250K, you're 50% done. You can override this if costs don't reflect physical progress.
In English: Your original contract plus any approved change orders. This is the total you expect to bill when the job is done. It changes when your scope changes — and it must.
In English: The revenue you've actually earned based on job progress. This is a calculation — not what you've billed, not what you've collected. A $1M job that's 40% done has earned $400K, full stop.
In English: The difference between what you've invoiced and what you've earned. Positive = overbilled (a liability — you've collected money you haven't yet earned). Negative = underbilled (an asset — you've earned money you haven't invoiced yet).
A note on AIA billing vs. a WIP schedule
Your AIA Schedule of Values tells you what you've billed. Your WIP schedule tells you what you've earned. They're related but not the same. Many contractors run their AIA draws, consider themselves done, and miss the fact that their billing is completely disconnected from actual job performance. Don't be those contractors.
Enough theory. Let's run three fictional trade contractor jobs through three months of a real WIP schedule and watch what happens. Meet the jobs.
Rooftop unit installation on a new office building. A clean, well-scoped job — until copper prices decide to be copper prices.
Tenant improvement for a retail build-out. Starts fine. Then the GC asks for "a little extra work" and somehow never gets around to signing a change order.
Three-phase plumbing package on a condo development. Big job, aggressive early billing, and a WIP schedule that's about to save Summit from itself.
Your bank account agrees. Life is good. But look at Summit's billing.
| Job | Contract | Est. Cost | Cost to Date | % Done | Earned Rev. | Billed | Over/(Under) |
|---|---|---|---|---|---|---|---|
Apex Mechanical HVAC | $820,000 | $680,000 | $204,000 | 30% | $246,000 | $246,000 | — |
Brightline Electric Electrical TI | $340,000 | $272,000 | $81,600 | 30% | $102,000 | $102,000 | — |
Summit Plumbing Multi-phase condo | $1,200,000 | $900,000 | $180,000 | 20% | $240,000 | $300,000 | +$60,000 |
| Total | $2,360,000 | $1,852,000 | $465,600 | $588,000 | $648,000 | +$60,000 |
Your WIP is screaming.
| Job | Contract | Est. Cost | Cost to Date | % Done | Earned Rev. | Billed | Over/(Under) |
|---|---|---|---|---|---|---|---|
Apex Mechanical HVAC | $820,000 | $748,000 | $448,800 | 60% | $492,000 | $533,000 | +$41,000 |
Brightline Electric Electrical TI | $340,000 | $296,000 | $177,600 | 60% | $204,000 | $185,000 | ($19,000) |
Summit Plumbing Multi-phase condo | $1,200,000 | $930,000 | $372,000 | 40% | $480,000 | $576,000 | +$96,000 |
| Total | $2,360,000 | $1,974,000 | $998,400 | $1,176,000 | $1,294,000 | +$118,000 |
This is why you run a WIP every month.
| Job | Contract | Est. Cost | Cost to Date | % Done | Earned Rev. | Billed | Over/(Under) |
|---|---|---|---|---|---|---|---|
Apex Mechanical HVAC | $895,000 | $748,000 | $598,400 | 80% | $716,000 | $680,000 | ($36,000) |
Brightline Electric Electrical TI | $375,000 | $296,000 | $251,600 | 85% | $318,750 | $300,000 | ($18,750) |
Summit Plumbing Multi-phase condo | $1,200,000 | $930,000 | $558,000 | 60% | $720,000 | $648,000 | ($72,000) |
| Total | $2,470,000 | $1,974,000 | $1,408,000 | $1,754,750 | $1,628,000 | ($126,750) |
Build your WIP in 15 minutes, not 4 hours.
Import your QuickBooks data and Track WIP calculates earned revenue, over/under billing, and percent complete automatically — on every open job.
Overbilling happens when you've invoiced more than you've earned. In the example above, Apex Mechanical billed $533,000 but only earned $492,000 — so they were overbilled by $41,000.
Overbilling isn't automatically bad. A lot of contractors bill ahead on mobilization and early phases — it's common practice and often appropriate. The cash comes in early, which helps with up-front costs. The issue is when overbilling grows unchecked.
Think of overbilling as a liability. You've collected money you haven't yet earned. You're going to “owe” it back in the form of labor and materials on the back half of the job. That money needs to still be there when you need it.
Underbilling is the opposite — you've earned more than you've billed. Brightline Electric earned $204,000 but only billed $185,000 — underbilled by $19,000.
Underbilling is an asset — someone owes you money and you haven't collected it yet. But an uncollected asset doesn't pay your payroll. The most common causes: falling behind on billing (too busy running jobs to send invoices), unapproved change orders where you did the work but can't bill yet, and billing conservatively to avoid disputes. Whatever the reason, if you're consistently underbilled, you're lending your customers free money.
Job borrow is what happens when overbilling on a job exceeds the total gross profit that job will ever generate. At that point, you've spent money this job can't pay back.
In our example, Summit Plumbing had $96,000 in overbilling by Month 2. Their total gross profit on the job was $270,000 ($1,200,000 contract − $930,000 estimated cost). The overbilling was 36% of their gross profit — not yet in job borrow territory, but heading there fast.
Here's what job borrow actually looks like in practice: You bill ahead on Job A. You spend that cash — payroll, material, whatever. Later in the job, you need cash to cover the work you overbilled for. But you already spent it. So you use cash from Job B. Job B eventually needs that cash. You use Job C's money. Now you have three jobs silently funding each other, and if any one of them hits a delay or a dispute...
The WIP catches this before it starts, if you run it monthly and look at it honestly.
Nobody plans to job borrow. It just sort of happens while you're busy running jobs and the bank balance looks fine.
Every article about WIP schedules will tell you that “estimating cost to complete is critical.” Every single one. And then they move on without actually explaining how to do it when your key sub just walked off a job in the middle of a rough-in and you're three weeks behind on a critical path that your GC is already emailing you about.
Estimating cost to complete is genuinely hard. It requires a PM who's actually current on the job, an honest conversation about where things stand, and the willingness to update a number that might make the job look worse than you want it to. Here's how to make that conversation productive.
Once a month, before you run your WIP, have a short conversation with your PM on each active job. These are the five questions that matter:
Force a specific answer — not 'we're getting there,' but actual remaining scope: two more floors of rough-in, final trim, commissioning.
This is your estimated cost to complete. Add it to cost to date to get your revised estimated total cost.
Verbal add-ons, directed work, scope that expanded quietly. If it's been done and not documented, it needs a CO.
Material price changes, labor productivity surprises, equipment rentals that ran long. If costs are moving, the WIP needs to know.
The one nobody wants to ask. Punch list risk, owner disputes, weather, missing materials. A good PM thinks about this constantly. Your WIP should reflect it.
Fix: When a CO is approved, you must update both the contract value AND the estimated total cost simultaneously. Both numbers move together. One without the other corrupts your WIP.
Fix: Your bid was a guess made before work started. Update estimated total cost monthly based on what you now know. The original estimate is a starting point, not a locked value.
Fix: A WIP run once a year is a forensic accounting exercise, not a management tool. Monthly is the minimum for active job management. Big jobs warrant more frequent updates.
Fix: Accountants are great at running the numbers. They're not great at knowing that your HVAC sub is behind and the main gear order is delayed six weeks. That information lives with your PM.
When you open your WIP and something looks off, this table tells you what it means and what to do about it. Print it out. Tape it to your monitor. Whatever it takes.
| If your WIP shows... | It means... | What to do |
|---|---|---|
| A job over 100% complete | Cost overrun OR stale estimate — actual costs exceeded your original budget | Get a PM update immediately and revise estimated total cost |
| Growing underbilling month over month | You're earning faster than you're billing — someone owes you money | Send an invoice — you're lending free money to your customer |
| Overbilling approaching or exceeding gross profit | Job borrow risk — you may be spending money this job won't earn | Slow billing, review cost estimate, flag for management |
| Percent complete not moving month to month | Data is stale — nobody updated estimated total cost or cost to date | Get a current cost-to-complete from your PM |
| Earned revenue dropping on a healthy job | Contract value or cost estimate changed unfavorably | Check for unrecorded cost increases or missing change orders |
| Multiple jobs showing profit fade simultaneously | Systemic estimating problem — your bids may be consistently light | Review bidding assumptions; consider a post-mortem on completed jobs |
| Large underbilling on a job near completion | Work is done but billing wasn't sent — this is money sitting on the table | Final invoice is overdue — collect it now |
Most WIP guides are written for general contractors. But electrical, HVAC, plumbing, and mechanical subs have their own specific flavors of WIP headaches. Here are the ones that don't show up in the generic articles.
Copper, refrigerant, PVC — these prices can swing 15–30% mid-job. Your WIP doesn't capture this automatically. You have to update estimated total cost when material costs move, or your percent complete is built on a fantasy. By the time the quarterly report shows the margin squeeze, you've already spent the money.
Typically 5–10% of every payment gets withheld until final completion. If you're not tracking retainage separately, your WIP may show receivables you won't collect for months — or ever, on disputed jobs. Make sure your WIP reflects what you'll actually be paid, not just what you've billed.
You get paid when the GC gets paid. The GC gets paid when the owner pays. The owner pays when the bank is satisfied with draw documentation. This means your cash timing and your work timing are completely disconnected. The WIP reflects work progress — your cash flow plan has to account for the lag separately.
If you're running 40 simultaneous service jobs alongside 5 commercial projects, you can't spend 20 minutes per job updating a WIP. Focus your detailed attention on the big jobs where a 5% margin swing actually hurts. For small jobs, batch them or review them as a group rather than individually.
The GC says "just do the work, we'll get the paperwork done later." You do the work. The paperwork never comes. Now your WIP shows underbilling with no clear path to collection, and you have a dispute on your hands. If you've ever heard a GC say this, you know how the story ends. Get it in writing — a text, an email, anything — before you mobilize on extra scope.
If you've ever applied for a bid bond or a performance bond, you've seen the request: “Please provide your current WIP schedule.” Most contractors cobble something together in Excel at the last minute and hope the underwriter doesn't ask questions. Let's talk about why they're asking and what a good WIP actually does for your bonding capacity.
A surety isn't a bank — they don't just look at your balance sheet. They want to know if you can finish the jobs you've already started. The WIP tells them three things no balance sheet can:
Significant overbilling (billed well ahead of earned revenue) is a red flag. It means you've already collected cash for work you haven't done yet. If the job goes sideways, that cash is gone and the surety is on the hook to finish the work.
Chronic underbilling can signal poor cash flow management or scope disputes. It also means you have uncollected receivables — which a surety will want to understand before extending capacity.
Your WIP shows how much work is left to earn. Sureties use this to judge whether you have the cash flow, labor, and management capacity to carry your current workload — and whether adding a new bonded project is realistic.
Sureties and their agents have seen thousands of WIP schedules. The ones that help your case — and can increase your single and aggregate bond limits — share a few traits:
“A clean, current WIP schedule is the single most powerful document you can hand a surety underwriter. It says: I know exactly where I stand on every job. That kind of confidence — backed by data — is what gets bond limits increased.”
— Common feedback from surety agents
Sureties typically look at two numbers when setting your bonding capacity:
The maximum bond on any one project. Based largely on the largest job you've successfully completed and your current working capital relative to that project size.
The total bonded backlog you can carry at once. Your WIP is the primary input — sureties want to see your current backlog vs. your working capital and credit facilities.
Contractors who submit accurate, consistent WIP schedules month over month build a track record with their surety. That track record — more than any single financial metric — is what opens the door to higher limits and faster approvals on new bonds. Contractors who produce a WIP only when the underwriter asks for one are playing catch-up every single time.
Build your WIP in 15 minutes, not 4 hours.
Import your QuickBooks data and Track WIP calculates earned revenue, over/under billing, and percent complete automatically — on every open job.
Monthly at minimum for any business with a bonding agent or bank relationship. On large jobs or fast-moving projects, weekly updates on cost-to-complete are worth the time. The accountant who runs it once a year for your tax return is not your financial management system.
It's a team effort. Your PM provides the cost-to-complete estimate for each job — they're on the ground and know what's left. Your accountant or bookkeeper pulls cost-to-date from the job cost system and runs the calculations. You review it and make decisions. If only one of these three people is involved, the WIP will be wrong.
Your AIA Schedule of Values is what you've billed — a billing document. Your WIP is what you've earned — a financial calculation. They're related but not the same. A job can be billed to 70% on the AIA and only be 50% earned based on actual progress. Your WIP catches that gap. Your AIA doesn't.
Three things: profit trend (are your margins holding or fading?), overbilling patterns (are you systematically billing ahead in a way that suggests cash flow problems?), and backlog health (do you have enough work to stay busy, and is it profitable work?). A WIP that shows consistent, modest underbilling and stable margins is a very good sign. Overbilling on multiple jobs simultaneously raises flags.
Yes. Plenty of contractors do, and it works. The downsides: formulas break, someone enters a value in the wrong cell, the file gets emailed around and you end up with three versions, and building it from scratch every month takes half a day. Tools like Track WIP import your QuickBooks data and handle the calculations automatically — the WIP is done in 15 minutes instead of 4 hours.
Track WIP calculates everything automatically. Import your QuickBooks data, review, and export a formatted WIP schedule for your bonding agent — in 15 minutes.