Over-billings and under-billings are the most misunderstood concepts in construction accounting — and the most important. They determine whether a contractor's balance sheet is accurate, whether their financials are bankable, and whether they'll have a cash flow problem in three months.
The short version
Over-billing = contractor invoiced more than they've earned. It's a liability — money owed in future work. Under-billing = contractor earned more than they've invoiced. It's an asset — work performed but not yet billed. Both distort the P&L if not tracked properly.
Most businesses recognize revenue when they invoice. Construction doesn't work that way. A contractor might bill 50% of a contract upfront to cover mobilization costs — but have only completed 20% of the work. If they recognize that full invoice as revenue, their P&L is misleading.
The solution is percentage-of-completion accounting: revenue is recognized as work is performed, not when it's invoiced. The difference between what's been billed and what's been earned creates either an over-billing or an under-billing.
An over-billing (also called "Billings in Excess of Costs and Estimated Earnings" or "Contract Liabilities" under ASC 606) occurs when a contractor has billed more than they've earned.
Example: A $500,000 contract. The contractor has billed $250,000 but has only completed 30% of the work — meaning they've earned $150,000. The over-billing is $100,000.
That $100,000 is a liability. The contractor collected money for work they haven't done yet. If the job were cancelled tomorrow, they'd owe it back. It must appear on the balance sheet as "Billings in Excess of Costs" (or "Contract Liabilities").
Why large over-billings are a warning sign
A contractor with large over-billings often has a cash flow problem — they're billing ahead of their work to pay current expenses. Sureties call this "front-loading." When a project ends and the billings exceed what was earned, the contractor has to perform work without getting paid for it — and many can't.
An under-billing (also called "Costs in Excess of Billings" or "Contract Assets" under ASC 606) occurs when a contractor has earned more than they've billed.
Example: Same $500,000 contract. This time the contractor has billed only $100,000 but is 40% complete — meaning they've earned $200,000. The under-billing is $100,000.
That $100,000 is an asset. The contractor has performed work they haven't invoiced for yet. It should appear on the balance sheet as "Costs in Excess of Billings" (or "Contract Assets"). While it looks good on paper, persistent under-billing creates cash flow pressure — the contractor is fronting labor and materials before collecting payment.
% Complete (cost-to-cost)
Costs Incurred to Date ÷ Estimated Total Costs
Revenue Earned
Contract Amount × % Complete
Over-billing (if positive)
Billings to Date − Revenue Earned
Under-billing (if positive)
Revenue Earned − Billings to Date
These two balance sheet numbers must tie directly to the WIP schedule totals. If they don't, the financials aren't in balance. This is one of the first things a CPA or bonding underwriter will check.
QBO doesn't calculate over/under billings automatically. You need to:
ReconcileBook connects to your client's QuickBooks Online and calculates over/under billings for every active job automatically — no spreadsheet, no manual formulas. The WIP schedule is ready in seconds and shows exactly which jobs are over-billed, which are under-billed, and by how much.
Questions about over/under billings? Email us or browse more guides.