Construction Library  ›  Contractor Operations
Contractor Excel

What’s being held back, and when you get it

Retainage is the one number a contractor reliably loses track of. A slice of every pay app, held back per job, released on a date nobody puts in the calendar. On one job you remember it. Across nine you don’t, and the owner has no reason to remind you.

Most of what’s written about retainage is written by lawyers, and it answers a different question: what your rights are when it goes wrong. This answers the one that comes first. What’s being held, and when does it come back?

How it shows up on a pay app

On an AIA-style pay app the retainage sits on the summary page (G702), worked out from the continuation sheet (G703):

So retainage never disappears from the paperwork. It just stops being anyone’s job to chase.

How much can be held: it depends on the state

Ten percent is the habit, but a growing number of states cap it lower on private work, and several stop the GC holding more from a sub than the owner holds from the GC. A few examples, as of October 2026:

StatePrivate-work rule (summary)
CaliforniaContracts from Jan 1, 2026: capped at 5% of each progress payment and of the contract price (SB 61). The GC can’t hold more from subs than the owner holds from the GC. Most non-mixed-use residential of four stories or fewer is excluded.
New YorkPrivate projects of $150,000 or more: 5% cap at every tier, released within 30 days of final approval. Most small residential work is excluded.
IllinoisUp to 10% until the job is half done, then no more than 5%. Single-family and small residential (12 units or fewer) excluded.
Washington5% on private work; single-family residential under 12 units excluded.
Minnesota5%, released within 60 days of substantial completion; the GC then has 10 days to pass it on to subs.
TexasNo percentage cap, but the owner must keep back 10% of the contract price for 30 days after completion as a lien reserve.
FloridaNo percentage cap; released 14 days after the punch list is substantially complete.
PennsylvaniaNo cap; under the Contractor and Subcontractor Payment Act it’s due 30 days after final acceptance.

These rules change often, and each has exceptions this table leaves out: public work, project size, contract wording. Check the current rule for your state and project before you price your cash flow around it.

The dates that actually release the money

Release hangs off events, not on how long the job took:

Why the tracker is a tracker and not a column

The instinct is to add a retainage column to each job’s spreadsheet. It stops working at about the fourth job at once, because retainage isn’t a number, it’s a schedule. Each job has a rate, maybe a cap, a completion date that hasn’t happened yet, and one or two releases still to come. What you need to see isn’t how much is held, but what’s due this month, and from whom.

A tracker worth keeping has one row per job and answers four questions at a glance:

  1. What’s been billed to date, and what share of it is held.
  2. Which completion events have happened, and when.
  3. What can be invoiced now, and what’s still waiting on a date.
  4. What’s overdue: the release event has happened and the money hasn’t arrived.

That last one pays for the exercise. Most retainage isn’t lost in a dispute. It’s lost because substantial completion was signed in March, the release was never invoiced, and by the time anyone looks, everyone has moved on.

Before you chase it

This is practical guidance on tracking money, not legal advice. Where retainage is in dispute, or held long past closeout, talk to a construction attorney in your state. Where your contract or your state’s law says something different from this page, they win.

The Retainage Tracker

One sheet for every job: what’s held, the release date it hangs on, and an OVERDUE flag when it’s late. A second sheet for what you hold from your subs. Excel, so it opens on anything.

One email, the file, and nothing else. No list, no drip campaign; to unsubscribe, just reply.

The same tracker, keeping itself

A spreadsheet only knows what you last typed into it. siteMargin builds the retainage register from the pay apps already on each job, works out which jobs have reached substantial completion, and tells you what’s due for release this month, across every job at once.

Try siteMargin free →