"Pay on completion" means you're the bank. Every hour of labor, every material run, every subcontractor invoice — you carry all of it, interest-free, until a client decides the job is done enough to open their wallet. That's not a payment term. That's an unsecured loan you didn't agree to make.
The fix is structural: milestone-based escrow. The full contract value gets committed to a held account before you lift a tool, then released in stages as you hit verified checkpoints. The client isn't paying you early. They're proving the money exists and locking it where neither of you can touch it until the work earns it.
Why "pay on completion" is a risk transfer, not a courtesy
When a client insists on paying everything at the end, look at what they've actually done: they've moved 100% of the financial risk onto you and kept 100% of the leverage for themselves. If they run short on cash halfway through, that's now your problem. If they invent a punch-list dispute at the finish line, they're holding the entire payment hostage over it.
You've seen how this ends. The final 20% becomes a negotiation. The scope "wasn't clear." The check is "in the mail." And because you already delivered, you have nothing left to hold. Your only recourse is a lien or a lawsuit — months of your time to collect money you already earned.
A client who is solvent and acting in good faith loses nothing by funding escrow. The only client who fights it is the one who either doesn't have the money yet or wants the option to withhold it later. Either way, that's information you want before you start.
If they can't commit the funds upfront, they were never going to have the funds at the end. Escrow just tells you that on day one instead of day ninety.— GC, remodel contractor
How milestones flip the leverage back
Break the job into checkpoints that map to real, inspectable progress — demo complete, rough-in passed, drywall closed, final walkthrough. Each milestone releases a defined slice of the committed funds once the work is verified.
This does two things at once. It caps your exposure to a single stage instead of the whole contract, so a dispute over the last checkpoint can never swallow the value of everything before it. And it removes the emotional back-and-forth from getting paid: the money is already there, the trigger is objective, and release isn't a favor the client grants — it's the terms both of you agreed to in writing.
You stop chasing. The client stops stalling. The checkpoint either happened or it didn't, and the funds move accordingly.
What this changes about how you quote
Once escrow is standard on your jobs, your bid stops competing on who's willing to float the most money. A contractor who funds the whole project out of pocket has to price that risk in — or get burned pricing it out. You don't.
You also stop pre-qualifying clients by gut feel. The funding step does it for you. Serious clients fund and move forward. The ones who were going to be a collections nightmare either walk or reveal themselves before you're committed.
If you're tired of being the involuntary lender on your own jobs, the setup for milestone escrow is worth a look — it's built for exactly this handoff of risk.