Progress Billing Mistakes That Drain Cash From Bigger Jobs

If you bill in stages instead of all at once at the end, whether it’s a landscape install, a re-roof, or a multi-week construction project, progress billing is supposed to keep cash moving alongside the work. Most of the time it does. When it breaks down, the math on the invoice is usually fine. The trouble is that the people who know the job is 60% done and the people who send the invoice are looking at different information, or aren’t talking to each other at all.
Where the Disconnect Happens
On a lot of the jobs we look into, several people are touching one project and none of them have the full picture. The project manager knows how much work is done in the field. The person ordering materials (usually whoever handles A/P) knows what’s been committed but maybe not delivered yet. The billing person on the A/R side is working off whatever the contract says the schedule should be, which may not match what’s happening on site. And whoever’s tracking change orders is often a step behind all of them.
The systems usually have the same problem as the people. The estimate lives in the CRM, the schedule lives in a project management tool, materials get ordered through a supplier portal, and the invoice goes out of the accounting software or ERP. If those don’t talk to each other, somebody is retyping numbers from one into another, and every handoff is a chance for a change order or a finished milestone to fall through the cracks.
None of that shows up as one big mistake. It shows up as a bill going out three weeks after the milestone hit, or a change order that got approved on-site with a handshake but never made it onto the invoice, or a job that’s 70% done getting billed at 50% because that’s what the contract calendar says. Each one is small, but add them up across a job that runs six months and it’s real money sitting uncollected the whole time.
What Underbilling Costs You
Let’s say you’re running a $200k install, and by the end of month three the job is about 60% complete based on what you’ve spent against the budget. That means you’ve earned roughly $120k of the contract. If your billing schedule only lets you invoice 40% at that point, you’ve billed $80k, so you’re carrying about $40k of work you’ve paid for but haven’t billed. That’s cash you fronted out of your own account to fund someone else’s project, and it stays that way until the next billing milestone catches up, if it ever fully does.
Overbilling has the opposite problem. It feels good in the short term since the cash comes in ahead of the work, but it can hide a job that’s behind or running over budget, and it means you owe the client work you’ve already been paid for on a project you might not finish the way you priced it.
A Monthly WIP Check
You don’t need construction billing software to fix most of this. A monthly work-in-progress check, even a basic one, catches the gap before it turns into a cash problem. For every open job, we compare how much of the contract we’ve earned (based on percent of budgeted cost spent) to how much we’ve billed. It can be as simple as this:
| Job | Contract | Percent complete | Earned so far | Billed so far | Over / (under) billed |
|---|---|---|---|---|---|
| Job A | $200k | 60% | $120k | $80k | ($40k) |
| Job B | $85k | 30% | $26k | $40k | $14k |
| Job C | $150k | 90% | $135k | $120k | ($15k) |
Job A needs an invoice. Job B is overbilled, which is fine as long as we know it and don’t spend that cash like it’s profit, since the work still has to get done. Job C is almost finished and still has $15k to bill, which is the easiest money in the business to forget about once the crew moves to the next job.
Five Ways to Tighten It Up
1. Get everyone on the same numbers, on a schedule
This is the big fix. Whoever’s in the field, whoever’s ordering materials, and whoever’s billing should be looking at the same job numbers on a set schedule instead of each working off their own version of where the job stands. A short weekly check-in on open jobs usually does it. If the systems can be connected so the project status flows into billing without retyping, even better, but the meeting works while you get there.
2. Put change orders in writing before the work starts
“While you’re out here, can you also…” is how a lot of margin walks off the job site. Every change should get a written price and a signature (a text or email approval is better than nothing) before the crew does the work, and it should go on the very next invoice. If the change order lives only in the project manager’s memory, it tends to stay there.
3. Front-load the billing schedule when you can
Most of the cash on a bigger job goes out early, for materials, mobilization, and equipment. When the contract allows it, a deposit at signing and a billing schedule weighted toward the early stages keeps us from funding the first half of the job out of pocket. It’s a lot easier to negotiate before the contract is signed than to ask for it halfway through.
4. Bill on a set day, and tie milestones to a sign-off
Picking a set day each month for progress invoices, and having the project manager confirm milestones within a day or two of hitting them, cuts out the three-week lag between finishing the work and asking to get paid for it. The work is already done, so the only thing a late invoice changes is how long we wait for the money.
5. Track retainage separately
On commercial work, the customer often holds back a percentage of each invoice until the job is finished and signed off. That money is ours, but it’s easy to lose track of since it doesn’t come in with the regular payments. I’d track retainage as its own line, put the release date on the calendar, and bill for it as soon as the job closes out, since nobody on the customer’s side is going to remind you.
Where to Start
If you want one thing to do this week, list every open job with its contract amount, how much you’ve spent against the budget, and how much you’ve billed. Even a rough version shows which jobs are underbilled and how much cash is sitting in them.
If progress billing on bigger jobs is where your cash flow gets murky, a free Cash Clarity Call is a good place to see where the gap is, and we can look at your open jobs together.