JobCostKit › Guides

Progress billing with retainage, explained

On anything bigger than a few weeks' work, waiting until the end to get paid is a cash-flow risk most small contractors can't carry. Progress billing fixes that: you bill each month for the work completed so far. Retainage is the catch: the client holds back a slice of each payment until the job is finished. Here's how both work, with a full example.

The pieces

The calculation every period

Work completed to date (sum of all lines)
− Retainage (retainage % × work completed to date)
= Earned less retainage
− Previous payments certified
= Current payment due

Calculating on the to-date totals rather than "this period" is the safer habit. If a line was over- or under-reported last month, the to-date method corrects it automatically.

Worked example: a $120,000 remodel with 10% retainage

The agreed schedule of values:

LineScheduled value
Mobilization & demo$8,000
Framing$22,000
Rough plumbing & electrical$30,000
Drywall$15,000
Finishes & fixtures$35,000
Punch list & closeout$10,000
Contract sum$120,000

Period 1

Demo is done (100% of $8,000) and framing is half done (50% of $22,000 = $11,000). Work completed to date: $19,000. Retainage at 10%: $1,900. Earned less retainage: $17,100. Nothing billed before, so $17,100 is due.

Period 2

Framing finishes ($22,000) and rough-ins reach 60% ($18,000). Work completed to date: $8,000 + $22,000 + $18,000 = $48,000. Retainage: $4,800. Earned less retainage: $43,200. Less the $17,100 already certified: $26,100 due.

Period 3

Rough-ins and drywall are complete, and finishes reach 40% ($14,000). Work completed to date: $8,000 + $22,000 + $30,000 + $15,000 + $14,000 = $89,000. Retainage: $8,900. Earned less retainage: $80,100. Less $43,200 previous: $36,900 due.

Period 4 (substantial completion)

Every line is at 100%: $120,000. Retainage: $12,000. Earned less retainage: $108,000. Less $80,100 previous: $27,900 due.

Retainage release

Once the punch list is signed off and any closeout paperwork (lien waivers, warranties, manuals) is handed over, you invoice the $12,000 retainage.

InvoiceCompleted to dateRetainage heldAmount due
Period 1$19,000$1,900$17,100
Period 2$48,000$4,800$26,100
Period 3$89,000$8,900$36,900
Period 4$120,000$12,000$27,900
Retainage release$120,000$0$12,000
Total$120,000

A quick check: each period's amount due is 90% of that period's new work. In period 2, new work was $29,000 and 90% of that is $26,100.

Change orders

Approved change orders get their own lines on the schedule of values, and the contract sum goes up by the same amount. Bill them by percentage complete like any other line, with the same retainage. Don't bill a change order that hasn't been approved in writing; it's the most common reason a progress invoice gets sent back.

Things that trip people up

Setting it up in a spreadsheet

You need one row per SOV line, a scheduled value column, and a cumulative % complete column for each period. Work completed to date for a period is the sum of value × that period's percentage. Retainage, previous payments and amount due then follow from the formula above. Keep the % complete columns as inputs (yellow) and everything else as formulas so nobody overwrites a calculation by accident.

Before you bill, make sure the contract price itself carries a real margin. The free markup calculator below shows whether it does.