Know which jobs are making money while you can still fix it.
Billing runs ahead of the work, so the P&L shows profit you haven't earned and hides the loss already sitting in an open job. A WIP schedule, maintained every month, is the thing that tells you the difference.
A WIP schedule, every month
So the profit on your P&L is profit you have actually earned
Every cost coded to a job
So you know which jobs made money before you bid the next one
Retainage tracked both ways
So the cash you are owed stops looking like cash you can spend
Sub paperwork kept current
So W-9s, COIs, and lien waivers are never what holds up a draw
The five errors we find in almost every contractor's file
These aren't exotic. They're what a generalist bookkeeper leaves behind because nobody taught them job accounting.
No WIP schedule, over/under billing never tracked
Progress gets billed off AIA G702/G703, but nobody computes earned revenue against billed revenue. Billings in excess of costs — a liability — reads as profit; costs in excess of billings reads as a loss. The month-end P&L is meaningless, and your CPA rebuilds it every year at your expense.
Costs dumped into one COGS bucket with no job dimension
Materials, labor, subs, and equipment all hit generic accounts with nothing coded to a job. You can't tell which jobs made money until the job's already lost. Per-project margin is the whole point of contractor books, and it's the first thing missing.
Retainage booked as ordinary AR/AP
The 5–10% held back on your billings sits in regular AR, overstating what's actually collectible this quarter and wrecking the cash forecast. Retainage you hold from subs isn't segregated either, so AP is wrong in both directions.
Change orders not tracked against the original contract
Approved COs — and the ones the crew worked before the paperwork caught up — never update the contract value. Percent-complete math runs off a stale number, so the WIP is wrong even when someone bothers to build one.
Committed costs invisible
Open subcontracts and POs aren't tracked anywhere. Cost-to-complete becomes a guess, and the WIP swings every month for no real reason. A job that looks 70% complete on cost can be 90% committed — that gap is where margins die.
One job, ten months: the over/under-billing curve
What the bank balance never tells you: whether the billing is ahead of the work or behind it.
Full-cycle books built around the job, not the bank feed
Every month you get a full WIP schedule: contract value including approved change orders, estimated total cost, cost-to-date, percent complete on a cost-to-cost basis, earned revenue, billed-to-date, and the over/under billing posted to the balance sheet where it belongs. Not a spreadsheet someone updates in March — a schedule that ties to the GL every close.
Underneath it sits a job cost ledger by project, reconciled to the GL, with per-job profitability and cost-to-complete. We run QBO Projects or class tracking so every cost carries a job code, and we track committed cost from open subcontracts and POs so cost-to-complete is a number, not a feeling. AIA G702/G703 applications tie back to the books.
Retainage receivable and retainage payable get their own accounts, both directions. We maintain the sub-compliance ledger — W-9s, COIs, lien waivers, 1099-NECs at the current threshold. For prevailing-wage and Davis-Bacon jobs, we reconcile certified payroll. And the books support percentage-of-completion, or completed-contract where the small-contractor exception applies, so year-end with your CPA is a handoff instead of a rebuild. For the full teardown of how a WIP rebuild works, read the WIP rebuild in the field guide.
Where software stops and a person starts
Software can pull the transactions and flag a cost with no job code. That part's fine, and we use it. What it can't do is decide whether a cost-to-complete estimate is honest — that's a call made with your PM, and it drives every number on the WIP.
It also can't judge whether a change order is approved enough to book, whether retainage is actually collectible, or whether a billing is aggressive or just behind. Those calls are the work.
Where it lands depends on three things: how many jobs you run at once, how many entities, and what shape the books are in when we take them over. Tell us those and you'll have a real figure inside a day. A WIP rebuild, if you need one, is quoted separately as a one-off.
Get your numberWhat contractors ask us
C-1Do you build and maintain my WIP schedule, or just the bookkeeping?
Both, and they're not separable. A WIP schedule that doesn't tie to the GL is decoration, and contractor books without a WIP are wrong. We maintain the schedule monthly as part of the close — contract value, cost-to-date, earned revenue, over/under billing, posted to the balance sheet.
C-2Can you work inside QBO alongside Procore, Buildertrend, or Sage 100 Contractor?
Yes. QBO stays the book of record and we reconcile what your project software says against what the GL says. The gaps between the two are usually where the errors live, which is exactly why we look there.
C-3How do you handle retainage — what I'm owed and what I hold from subs?
Separate accounts, both directions. Retainage receivable comes out of regular AR so your collectible number is real; retainage payable to subs comes out of regular AP. Your cash forecast stops lying about when money actually moves.
C-4Do you code every cost to the job so I can see per-project margin?
Yes — materials, labor, subs, equipment, all of it carries a job code through QBO Projects or classes. Costs that show up with no job get chased down, not dumped in overhead. That's the difference between a P&L and a job cost report you can price the next bid from.
C-5Can you handle certified payroll and prevailing-wage jobs?
We reconcile certified payroll for Davis-Bacon and state prevailing-wage jobs — weekly WH-347 reporting and fringe accounting tied back to job cost. If you run public work, this is table stakes, and we treat it that way.
C-6Will my CPA get percentage-of-completion-ready books at year-end?
That's the point of the monthly WIP. Long-term contracts generally have to report profit as the job progresses rather than when it finishes — that's the percentage-of-completion method, set out in tax code §460 — unless you're small enough to qualify for the exception. Either way, your CPA gets a schedule that ties instead of a shoebox.
C-7Do you track committed costs and give me a real cost-to-complete?
Yes. Open subcontracts and POs are tracked against each job, so cost-to-complete reflects what you've committed to spend, not just what's hit the bank. It's the number that stops the WIP from swinging every month.
Show us the construction file you're least confident about.
Thirty minutes, your books on screen. We'll tell you what's actually wrong with them and what it costs to fix. If they're fine, we'll say that instead.
Run something we haven't listed?
Most of what breaks in a set of books is universal — miscoded owner money, unreconciled deposits, a plug nobody cleared. Tell us what you run and what's going wrong, and we'll tell you straight whether we're the right fit.