Formula
Retainage withheld = amount billed this period × retainage rate.
Net payable (or receivable) now = amount billed − retainage withheld.
Retainage balance = total withheld to date − total released to date.
Retainage payable vs retainage receivable
The same withholding shows up on both sides of a contract: the party holding the money records retainage payable (a liability), and the party waiting for it records retainage receivable (an asset).
| Retainage payable | Retainage receivable | |
|---|---|---|
| Who records it | Owner or general contractor withholding from a subcontractor or supplier | General contractor or subcontractor whose billing was withheld |
| Account type | Liability | Asset |
| Created when | An approved progress bill is recorded net of the withholding | A progress billing is issued net of the withholding |
| Cleared when | Retainage is released and paid | Retainage is billed for release and collected |
| Keep it out of | Regular A/P aging — it is not due yet | Regular A/R aging — it is not collectible yet |
| Track it by | Job and vendor | Job and customer contract |
Worked example: retainage payable on a subcontractor bill
A general contractor records the full value of the work as job cost, credits accounts payable for the amount due now, and credits retainage payable for the amount withheld.
Facts: a $200,000 drywall subcontract with 10% retainage. Pay application #1 bills $50,000 of completed work. Retainage withheld is $50,000 × 10% = $5,000, so $45,000 is payable now.
1. Approve the subcontractor’s pay application
| Account | Debit | Credit |
|---|---|---|
| Job cost — subcontract (Job 2041, drywall) | $50,000 | |
| Accounts payable — Drywall Sub LLC | $45,000 | |
| Retainage payable — Drywall Sub LLC, Job 2041 | $5,000 |
2. Pay the net amount
| Account | Debit | Credit |
|---|---|---|
| Accounts payable — Drywall Sub LLC | $45,000 | |
| Cash | $45,000 |
After four equal pay applications the subcontract is complete, $200,000 of job cost is recorded, and $20,000 sits in retainage payable for this vendor and job.
3. Release retainage at completion
| Account | Debit | Credit |
|---|---|---|
| Retainage payable — Drywall Sub LLC, Job 2041 | $20,000 | |
| Accounts payable — Drywall Sub LLC | $20,000 |
4. Pay the released retainage
| Account | Debit | Credit |
|---|---|---|
| Accounts payable — Drywall Sub LLC | $20,000 | |
| Cash | $20,000 |
Step 3 moves the balance into ordinary payables only when it is actually due, which is the point at which it should appear in A/P aging and the payment run. Note that job cost was recorded in full in step 1 — retainage changes when you pay, not what the work cost.
Worked example: retainage receivable on an owner billing
A contractor billing its customer records the full billing, debits accounts receivable for the amount collectible now, and debits retainage receivable for the amount the customer withholds.
Facts: a $1,000,000 contract with 10% retainage. Progress billing #3 is for $120,000 of work, so the owner withholds $12,000 and $108,000 is due now.
1. Issue the progress billing
| Account | Debit | Credit |
|---|---|---|
| Accounts receivable — Owner | $108,000 | |
| Retainage receivable — Owner, Job 2041 | $12,000 | |
| Contract billings / revenue | $120,000 |
2. Collect the net payment
| Account | Debit | Credit |
|---|---|---|
| Cash | $108,000 | |
| Accounts receivable — Owner | $108,000 |
3. Bill retainage for release at completion (total held $100,000)
| Account | Debit | Credit |
|---|---|---|
| Accounts receivable — Owner | $100,000 | |
| Retainage receivable — Owner, Job 2041 | $100,000 |
Whether the credit in step 1 goes straight to revenue or to a billings account depends on how your company recognizes contract revenue (for example percentage of completion). Revenue recognition is a separate question from retainage; see WIP reports for how billings and earned revenue are reconciled.
Subcontractors carry both balances
A subcontractor that hires lower-tier subs records retainage receivable from the general contractor and retainage payable to its own subs on the same job.
Track the two balances by job so you can see the net cash position. Many subcontracts and several state prompt-payment statutes tie release of a lower-tier sub’s retainage to the higher-tier contractor receiving its own — see the retainage laws by state table for the rules that apply to your projects.
Controls that keep retainage balances right
Reconcile retainage payable and receivable to a job-by-vendor register every month, and treat every release as an approved, documented event rather than a new invoice.
- Use dedicated accounts (Retainage payable, Retainage receivable) — never net retainage inside A/P or A/R.
- Keep a register with contract value, rate, reduction terms, billed to date, held, released, and balance per job and vendor.
- Calculate retainage from the contract terms on each bill, including any reduction milestone (e.g. 10% to 5% at 50% complete).
- Gate release on completion evidence and the final lien waivers your contract and state require.
- Post releases against the retainage balance so the job-cost total does not double count.
- Review aged retainage: balances held long after substantial completion usually signal a missed release or a dispute.
Recording retainage in QuickBooks
Intuit’s US help documents no retainage workflow for vendor bills, so the common approach is a Retainage Payable liability account, a negative retainage line on each subcontractor bill, and a separate bill when retainage is released.
The step-by-step setup is in how to track retainage on subcontractor bills in QuickBooks Online. To size the balances first, use the retainage calculator.
Frequently asked questions
Is retainage payable a liability?
Yes. Retainage payable is an amount you owe a subcontractor or supplier for work already performed, deferred under the contract terms, so it is a liability until it is released and paid.
Is retainage receivable an asset?
Yes. It is an amount the customer owes you for work already billed, collectible when the contract conditions for release are met.
Do you record job cost on the gross or net amount?
On the gross amount. The full value of the work is the cost of the job; retainage only defers part of the payment. Recording only the net amount understates job cost until release.
Should retainage appear in A/P aging?
Not until it is released. Keep it in a retainage payable account so A/P aging shows only what is currently due, then move it into payables when the release is approved.
Does a retainage release need a new invoice?
Usually the subcontractor submits a final pay application or retainage billing, and you record it against the retainage payable balance rather than as new job cost.
Related guides and tools
Sources
This guide explains common accounting treatment. It is not accounting, tax, or legal advice; confirm account classification and revenue recognition with your CPA.
- FAR 32.103 — Progress payments under construction contracts (acquisition.gov)
- 31 U.S.C. § 3905 — Prompt Payment Act, payment provisions relating to construction contracts (Cornell LII)
- ConsensusDocs — “It’s My Retainage and I Want It Now!” (Sands & Bolte, July 2025)
- QuickBooks Community — including retainage on an invoice (Intuit-hosted answer)
- QuickBooks Community — setting up a retainage payable account
Run construction AP on QuickBooks Online
Aequo Build is the construction AP layer on top of QuickBooks Online: invoice capture, job-cost coding, approvals, lien waivers, retainage holds, and subcontractor compliance checks before payment.
Part of the Construction AP Knowledge Centre.