A profitable project can still create a cash-flow problem when 5% or 10% of every draw is held back. Knowing how to track retainage in QuickBooks Online gives leadership a clear view of what has been earned, what is collectible now, and what remains tied up until final completion.
For construction companies and project-based service businesses, retainage should not disappear into accounts receivable or get buried in a customer balance. It needs its own treatment. Otherwise, your aging report overstates overdue receivables, project cash forecasts become unreliable, and job profitability conversations start from the wrong numbers.
QuickBooks Online does not include a single retainage switch that handles every contract scenario. The most reliable approach is to create dedicated retainage accounts and use properly mapped items on customer invoices and vendor bills. That gives you a repeatable workflow that remains clear during month-end close, owner reviews, and audit preparation.
Start With the Right Retainage Structure in QuickBooks Online
Retainage is money earned on a project but withheld under the contract until a later milestone, final completion, or resolution of punch-list items. There are two distinct types to track:
- Retainage receivable is money your customer is holding back from your company.
- Retainage payable is money your company is holding back from subcontractors or vendors.
Keep these balances separate. Retainage receivable is generally an other current asset because it represents an amount owed to your business. Retainage payable is generally an other current liability because it represents an obligation your business will need to pay.
In QuickBooks Online, create two accounts in the Chart of Accounts:
- Retainage Receivable, categorized as Other Current Assets.
- Retainage Payable, categorized as Other Current Liabilities.
This setup protects visibility. Your accounts receivable aging will show only the amount currently due from customers, while your balance sheet will show retained amounts separately. The same logic applies to amounts withheld from subcontractors: accounts payable shows what is currently payable, while retainage payable shows the amount owed later.
Create Retainage Items for Customer Billing
To track customer retainage accurately, create a product or service item called Customer Retainage. Map its income account to Retainage Receivable rather than to a revenue account.
The item is used as a negative line on a customer invoice. For example, assume your monthly progress billing is $100,000 and the contract calls for 10% retainage. Your invoice would show $100,000 of earned work and a negative Customer Retainage line of $10,000. The customer’s current amount due is $90,000.
Behind the scenes, QuickBooks records the $100,000 as revenue and moves $10,000 to Retainage Receivable. That is the outcome you want: your books reflect the full value of work earned, but your open accounts receivable balance reflects only the amount the customer should pay now.
Use a clear description on the invoice, such as “10% contractual retainage withheld on current billing.” This detail helps project managers, customers, and your accounting team understand why the invoice total differs from the gross billing amount.
Why a Negative Retainage Line Matters
Some businesses invoice only the net amount due and leave the retained portion unrecorded until the end of the job. That may feel simpler, but it understates earned revenue and hides a meaningful asset from the balance sheet.
Others bill the full amount and leave the retained portion in accounts receivable. This records revenue correctly, but it makes the A/R aging report less useful. A balance that is contractually unavailable for six months can appear overdue even when the customer is fully compliant.
The negative retainage line approach separates these issues cleanly. It preserves revenue recognition while keeping collection reporting honest.
Record Retainage Withheld From Subcontractors
The same principle applies when your company withholds retainage from subcontractors. Create a separate item called Subcontractor Retainage and map its expense or purchase account to Retainage Payable.
Suppose a subcontractor submits a $40,000 bill and your agreement requires 10% retainage. Enter the subcontractor’s work at $40,000, then add a negative Subcontractor Retainage line of $4,000. The bill payable now is $36,000.
This entry keeps the full project cost in the correct job or cost category while moving the withheld $4,000 to Retainage Payable. You are not reducing the actual cost of subcontractor work. You are simply separating the timing of payment.
Assign the customer or project consistently on every bill line. In a job-costing environment, this discipline is what allows leaders to compare estimated cost, incurred cost, paid cost, and remaining commitments without rebuilding the numbers in a spreadsheet.
How to Release Retainage at Project Completion
When a customer releases retainage, create a new invoice using the Customer Retainage item as a positive line. If the customer releases $25,000, the invoice should include a positive $25,000 retainage line. This reduces Retainage Receivable and creates the accounts receivable balance that is now due for payment.
When you pay retained funds to a subcontractor, enter a bill using the Subcontractor Retainage item as a positive line. This reduces Retainage Payable and creates the accounts payable balance due to that vendor. Pay the bill through the normal payment workflow.
Do not release retainage simply because a project appears substantially complete. Check the contract first. Release conditions may depend on final inspection, lien waivers, customer payment, punch-list completion, or a defined warranty period. The accounting entry should follow the contractual obligation, not a verbal assumption.
Review the Reports That Protect Cash Flow
Once your workflow is established, retainage becomes visible in standard QuickBooks Online reports. Review the Balance Sheet monthly and compare Retainage Receivable and Retainage Payable to your project-level retainage schedule.
A growing Retainage Receivable balance is not automatically a problem. It may reflect healthy project volume. But it does signal that cash is delayed, and it should be included in your working-capital forecast. A company can report strong revenue and still struggle to fund payroll, materials, and subcontractors if too much cash is trapped in retainage.
Retainage Payable deserves equal attention. It represents a real future cash obligation, even if the payment date is uncertain. Review aged retainage by vendor and project so that old balances do not sit unresolved after a project is closed.
For management reporting, separate three questions: What have we earned? What can we collect now? What cash is contractually deferred? That distinction gives founders and operating leaders a more reliable picture of liquidity than revenue or bank balance alone.
Common Retainage Mistakes to Avoid
The most common mistake is posting retainage directly against revenue or expense without a separate balance sheet account. That can distort job margins and make retained balances nearly impossible to reconcile later.
Another problem is using one generic retainage account for both customers and subcontractors. Assets and liabilities should not be combined. They have different business meaning, different cash-flow implications, and different review requirements.
Also avoid relying on manual journal entries for every draw unless your accounting team has a disciplined, documented process. Journal entries can work, particularly for complex contracts or cleanup work, but invoice and bill items create a more repeatable operational workflow. They also make the retainage visible to the people issuing invoices and approving vendor bills.
Finally, confirm the sales-tax treatment before standardizing your invoice format. Construction tax rules vary by state and by the type of work performed. A retainage line may affect taxable invoice totals depending on your jurisdiction and contract structure.
Build Retainage Into Your Monthly Close
Retainage should be reconciled as part of every month-end close, not only when a project ends. Compare QuickBooks balances with contract terms, draw schedules, customer statements, subcontractor records, and any project management system your team uses.
Investigate differences promptly. A retainage balance may be wrong because a percentage changed, a change order was omitted, a release was billed twice, or a project was closed without processing final retainage. Small errors become expensive when they remain hidden across several active jobs.
Clean retainage tracking gives your business more than better bookkeeping. It gives you a defensible view of project cash, more accurate margins, and fewer surprises when a job reaches the finish line. When the numbers are organized around how your contracts actually work, leadership can make decisions with greater confidence.