If you’ve worked on any mid-size or large construction project, you’ve encountered retainage — the portion of your contract payment that the owner holds back until the work is complete. On paper, retainage is a simple concept. In practice, it creates some of the most significant cash flow challenges contractors face, and failing to account for it correctly in your books can lead to inaccurate financial statements and missed collections. This guide explains exactly what retainage is, how it affects your cash flow, how to track it in QuickBooks, and what your rights are under California law.
What Is Retainage (Retention)?
Retainage — also called retention — is a percentage of each progress payment that the project owner withholds until the project reaches substantial completion. It’s a financial incentive designed to ensure contractors and subcontractors fully complete their work before receiving final payment. Retainage has been standard practice in construction for over a century.
Typical retainage rates are 5–10% of each progress billing. On a $600,000 contract with 10% retainage, you’ll never receive more than $540,000 until the project is done — and then you wait for that final $60,000. Meanwhile, you’ve been paying for materials, labor, and subcontractors in full throughout the project.
How Retainage Affects Contractor Cash Flow
Retainage is one of the biggest cash flow challenges in construction, and here’s why: your costs are incurred upfront, but a portion of your revenue is deferred until project completion. This gap between costs paid and revenue received is called the “retainage float,” and it can put significant strain on your working capital.
Consider a 12-month, $1,000,000 project with 10% retainage. Over the course of the project, you invoice $1,000,000 but only receive $900,000. That $100,000 sits with the owner. If you have three or four similar projects running simultaneously, you might have $300,000–$400,000 in outstanding retainage at any given time — money you’ve earned but can’t access. For many contractors, this is their single largest accounts receivable balance.
The impact is compounded for subcontractors, who often face retainage from the general contractor in addition to general cash flow delays in the construction payment chain.
California Retainage Law
California has specific laws governing retainage that every contractor working in the state should know.
Public Works Projects
On California public works contracts, retainage is capped at 5% (California Public Contract Code Section 7201). Once the project is substantially complete, the contractor may submit a final pay estimate. The public agency must pay all undisputed amounts within 60 days of final acceptance. Withholding more than 5% or delaying payment beyond these deadlines can entitle the contractor to interest on the withheld amount.
Private Works Projects
On private construction projects, California law doesn’t cap retainage, though 10% is the most common rate. However, California Civil Code Section 8814 requires that retainage be paid within 45 days after the work of improvement is completed. Failure to pay within this timeframe can trigger interest obligations and strengthen your basis for a mechanics lien claim.
Subcontractor Retainage
California Civil Code Section 8814 also protects subcontractors: a general contractor must pay a subcontractor any retainage within 10 days of receiving payment from the owner for that subcontractor’s work. This flow-down of payment is important for subs to understand and enforce.
How to Track Retainage in QuickBooks Online
Proper retainage accounting requires setting up a separate accounts receivable account in QuickBooks specifically for retainage. Here’s the correct workflow.
Step 1: Create a Retainage Receivable Account
In QuickBooks, go to Chart of Accounts and create a new account: Account Type = Accounts Receivable, Name = “Retainage Receivable” (or “Retention Receivable”). This is separate from your regular Accounts Receivable account.
Step 2: Set Up a Retainage Item
Create a Service item in QuickBooks called “Retainage Withheld” and map it to the Retainage Receivable account with a negative amount (it reduces the current invoice amount but creates a separate receivable).
Step 3: Invoice with Retainage
When creating progress invoices, add a line item for “Retainage Withheld” as a negative percentage of the invoice total. The client pays the net amount, and the withheld retainage posts to your Retainage Receivable account. Your Balance Sheet now correctly shows both what the client currently owes and what is being retained.
Step 4: Invoice for Retainage at Project Completion
When the project is complete and the owner releases retainage, create a final invoice for the retainage amount and apply it against the Retainage Receivable account. When the payment comes in, apply it to this invoice. Your retainage receivable balance goes to zero for that project.
Strategies to Reduce Retainage Impact on Cash Flow
There are several strategies to reduce the cash flow impact of retainage. First, negotiate a lower retainage rate (5% instead of 10%) at contract signing — especially if you have a strong track record with this owner or GC. Second, negotiate for retainage reduction at project milestones — for example, reducing from 10% to 5% once the project is 50% complete. Third, include retainage release in your substantial completion punch list so you have a clear trigger for payment. Fourth, on larger projects, consider whether a construction line of credit makes sense to bridge the retainage float.
Frequently Asked Questions
Is retainage taxable when earned or when received?
On a cash basis, retainage is income when received — so you don’t owe taxes on it until the money is in your account. On accrual basis, retainage is income when earned (when the work is done). Most smaller contractors use cash basis, which defers the tax on retainage. Consult your CPA about which method is best for your situation.
What can I do if an owner refuses to release retainage?
Your primary tool in California is the mechanics lien. If you filed a Preliminary Notice within 20 days of starting work, you have the right to record a mechanics lien on the property for unpaid amounts including retainage. A mechanics lien must be recorded within 90 days of project completion. Beyond that, you can file a lawsuit for breach of contract. Consult a construction attorney if you’re facing retainage disputes.
Should I use cash or accrual accounting for retainage?
For accurate financial reporting, accrual accounting better reflects your true financial position — it shows retainage as earned income and a receivable asset even before payment is received. For tax purposes, cash basis defers the tax obligation. Many contractors use accrual for internal management reporting and cash basis for taxes. Your bookkeeper and CPA can help you set this up properly.
For more information, see our guide on accounts receivable management.
For more information, see our guide on mechanics liens to secure your retainage.
For more information, see our guide on managing construction project finances.
For more information, see our guide on job costing including retainage.
Get Your Retainage Accounting Right
Bookkeeping Champs helps contractors in Los Angeles, Ventura County, and the San Fernando Valley account for retainage correctly in QuickBooks — ensuring your balance sheet is accurate, your cash flow is tracked, and you never leave earned money uncollected. Call (818) 679-4451 for a free consultation.

Leave a Reply