Balance Sheet Basics for GCs: WIP, Over/Under Billings, and Retainage Receivable
WIP, overbillings, underbillings, and retainage receivable live on the balance sheet, not the P&L. Here's a step-by-step monthly checklist to get every account right.
What Your Balance Sheet Is Actually Telling You
Most general contractors watch the P&L every month. Far fewer pay close attention to the balance sheet. That's a problem, because three of the most important numbers in construction accounting live on the balance sheet, not the income statement: work in progress (WIP), overbillings, and retainage receivable.
If these accounts are wrong, your financials are wrong. Your banker sees it. Your bonding agent sees it. And on a bad month, your lender may react to it. This checklist walks through each account, what it means, how it gets calculated, and what to verify at month-end.
The Three Accounts You Must Get Right
1. Work in Progress (WIP)
WIP is the net position of all your active jobs at a point in time. It answers one question: based on cost incurred, has each job been billed correctly relative to how far along it actually is?
The calculation runs like this for each job:
- Percent complete = Costs incurred to date / Total estimated cost
- Earned revenue = Contract value x Percent complete
- Overbilling = Billed to date is greater than earned revenue
- Underbilling = Billed to date is less than earned revenue
Example: You have a $500,000 contract. You've incurred $150,000 of a $375,000 total estimated cost. That puts you 40% complete and your earned revenue at $200,000. If you've billed $230,000 so far, you're $30,000 overbilled. If you've billed $175,000, you're $25,000 underbilled.
Both conditions show up on the balance sheet. Overbillings are a current liability. Underbillings are a current asset. They are not income or expense items. That distinction matters enormously for how you read profitability.
2. Overbillings and Underbillings
Overbillings (sometimes labeled "Billings in Excess of Costs and Estimated Earnings") represent cash you've collected or invoiced that you haven't yet earned. Think of it as a short-term obligation. If a job gets cancelled or goes sideways, that money may need to come back.
Underbillings ("Costs and Estimated Earnings in Excess of Billings") work the other direction. You've done the work, you've incurred the cost, but the invoice hasn't gone out yet. That's money sitting on the table. Chronic underbilling is one of the most common cash flow killers in the industry.
Month-end checklist for overbillings and underbillings:
- Pull the WIP schedule for every active job.
- Confirm that cost-to-date figures match your job cost ledger exactly.
- Confirm that billed-to-date figures match your accounts receivable aging.
- Update the total estimated cost for any job that has had a scope change, approved change order, or revised budget. Stale estimates produce false WIP positions.
- Book the net overbilling amount as a current liability (common account: "Billings in Excess of Cost").
- Book the net underbilling amount as a current asset (common account: "Costs in Excess of Billings").
- Reverse the prior month's entries before posting the new ones. These are point-in-time balances, not cumulative.
One warning: a large overbilling is not automatically a sign of strong cash management. It can also mean your budget estimate is too high and actual costs will catch up fast. Investigate any job where the overbilling position grew significantly month over month.
3. Retainage Receivable
Retainage is the percentage of each pay application held back by the owner until substantial completion, typically 5% to 10%. On a $2 million project with 10% retainage, you have $200,000 that will not hit your bank account until the job closes out. That's real money, and it belongs on your balance sheet as a current or long-term asset depending on when you expect to collect it.
The account is called "Retainage Receivable" and it lives separately from your standard accounts receivable. Mixing the two distorts your AR aging and makes it look like you have more immediately collectible cash than you do.
Month-end checklist for retainage receivable:
- For each active project, pull the pay application history and calculate total retainage withheld to date.
- Confirm that figure against your subcontract receivable ledger and against what the owner's records show (ask for a retainage statement if you're unsure).
- Move any retainage on substantially complete projects to current assets. If you expect collection within 12 months, it's current. If not, it's long-term.
- Track retainage separately for each project. Bundling it into one account makes reconciliation at closeout nearly impossible.
- When a certificate of substantial completion (documented on the AIA G704 form, or an equivalent) is issued, flag that project's retainage for near-term collection and follow up with the owner on release timing.
Do not forget subcontractor retainage payable on the liability side. You hold back retainage from your subs just as the owner holds it from you. That balance is a current liability and needs to match what your subcontracts say.
Putting It Together: The Month-End Balance Sheet Checklist
Run through this in order, every month, before you close the period:
- Step 1. Update all job budgets for approved change orders. Do this before running WIP, not after.
- Step 2. Pull costs to date from the job cost ledger. Reconcile to the general ledger. They must match to the dollar.
- Step 3. Pull billings to date from your pay application records. Reconcile to AR. They must match.
- Step 4. Calculate earned revenue and the overbilling or underbilling for each job.
- Step 5. Reverse prior-month WIP journal entries. Post the new overbilling liability and underbilling asset.
- Step 6. Reconcile retainage receivable by job. Confirm against pay application G703-style continuation sheets where retainage is itemized line by line.
- Step 7. Confirm subcontractor retainage payable matches your subcontract files.
- Step 8. Tie total AR (excluding retainage) to the AR aging report.
- Step 9. Review the balance sheet as a whole. Does the WIP asset or liability position make sense given what you know about each job's field progress?
That last step is the one most controllers skip. The numbers can balance and still be wrong if the underlying estimates are stale. Talk to your PMs before you close.
Why This Matters Beyond Month-End
Surety companies underwrite bonds based heavily on your WIP schedule and balance sheet. A messy or inaccurate WIP can shrink your bonding capacity fast. Lenders watch the underbilling balance. A growing underbilling balance with no corresponding increase in active work is a red flag that usually prompts a conversation you don't want to have.
Getting these three accounts right is not optional accounting housekeeping. It's the difference between a balance sheet that tells the truth and one that quietly misleads everyone who reads it, including you.
Construction accounting works better when the software understands jobs, cost codes, and pay apps natively. EZBilling does.
Ready to simplify your AIA billing?
EZBilling handles G702/G703 progress billing, job costing, and compliance tracking in one platform built for general contractors.
Start 30-Day Free Trial Schedule a DemoRelated Posts
Reading a Construction P&L: By-Job vs. Consolidated and When to Use Each
A consolidated P&L shows the whole company. A by-job P&L shows what's actually happening on each project. Here's how to read both, and when...
Chart of Accounts for General Contractors: What Goes Where
A generic chart of accounts creates billing headaches and bad job cost reports. Here's how to build one that actually works for a general co...
Percentage-of-Completion Accounting: A Real Job Walkthrough
A step-by-step walkthrough of percentage-of-completion accounting using a real $1.2M medical office buildout, covering earned revenue, WIP,...