Progress billing with holdback, explained simply
How to bill a contract as the work gets done, and how holdback (retainage in the U.S.) is kept back and paid.
On a bigger job you don’t wait until the end to get paid. You bill as the work gets done, usually once a month. That’s progress billing.
In most provinces, lien law also has the client keep back part of every payment until a while after the work is finished. That’s the holdback.
In the United States it’s usually called retainage, set by the contract and, on many public jobs, by law. Either way it’s your money, paid late, and it needs keeping track of.
How progress billing works
The contract price is split into the pieces of work it pays for. On a small job that can be one line: the whole contract.
On a bigger one it’s a schedule of values: a line for each part of the work, like foundations, framing, mechanical and finishes, each with its share of the price.
Each billing period, you say how far along the work is and bill that share, less what you’ve already billed. There are two common ways to do it:
- By percent complete. The whole job is 40% done, so you’ve earned 40% of the contract.
- By item. Foundations are 100% done, framing 80%, finishes not started. Each line is billed on its own.
Signed change orders go on the schedule as lines of their own, so they’re billed on the same schedule as the base work.
Agree on the schedule of values with the client before the first bill. An argument about whether framing is 80% done is easier when everyone agreed what framing is worth.
Don’t load extra value onto the early lines to get paid sooner. A lopsided schedule gets checked line by line.
Work out the holdback
The holdback is a percentage of each payment for work done. In Ontario, the Construction Act sets it at 10%.
Other provinces have their own rates and rules. In the United States, retainage is usually set by the contract, commonly somewhere from 5% to 10%. Check what applies to your job.
| Contract, with signed changes | $200,000.00 |
|---|---|
| Complete to date, 40% | $80,000.00 |
| Less billed before | −$50,000.00 |
| Work this invoice | $30,000.00 |
| Less holdback, 10% | −$3,000.00 |
| Due on this invoice, before tax | $27,000.00 |
The $3,000 isn’t gone. It’s still owed to you, and it’s paid when the holdback is released.
Keep a running total of holdback on every job: kept back, released and still owed. It’s easy to forget once the crew has moved on, and on a tight job it can be most of your profit.
Ask about tax on holdback
Whether sales tax on holdback is charged when it’s kept back or when it’s released depends on where you work. Ask your accountant.
Get the holdback released
Holdback is paid out once the job, or your part of it, is finished and the time for lien claims has run out. Each province’s lien law and your contract say when that is.
- Know your dates. Write down when your work was substantially complete and when the lien period ends, and put the day the holdback should be paid on the calendar.
- Bill the release. Send the holdback release as an invoice of its own, so it shows up as money owed and not as a note on an old bill.
- Follow up on the day it’s due. A holdback is easy for a client to forget. Ask for it on the day, in writing.
This isn’t legal advice
Holdback, lien and prompt payment rules differ by province and state, and they change. Check yours, and ask a construction lawyer before you rely on a deadline.
Mistakes that cost you money
- Billing ahead of the work. Bill 60% when the job is 45% done, and expect the bill to come back cut and the next one to be checked line by line.
- Forgetting the change orders. A signed change that isn’t on the schedule of values never gets billed.
- Losing track of the holdback. Keep one running number for each job, so nothing is left with the client at the end.
- Not billing the release. A holdback doesn’t pay itself. Send the invoice.
How CrewLog does it
In CrewLog you bill a contract from the job: part of it by a percent or an amount, or line by line on a schedule of values, with each signed change order on its own line.
A deposit comes off the next invoices. Holdback is a line at the rate your contract sets, taken off before tax, and the invoice says the tax on it is charged when it’s released.
CrewLog keeps a running total of the holdback held on each job, and releasing it is an invoice of its own.
The client’s copy shows the contract summary and the schedule of values: scheduled, billed before, this invoice, to date and the balance.
Invoices, progress billing and holdback are on every plan, from $39 a month. Compare the plans.
More on progress billing on the features page.

