Client money arrives before the work does
A staged deposit is money you are holding against work you have not done yet, and books that drop it straight into income overstate the month, hide the obligation, and make a strong sales quarter look like a profitable one. We tag every payment to its project and hold it in a deposit liability account, releasing it to revenue only when the stage it funds is signed off. The invoice schedule in your contract becomes the recognition schedule in your books, which is exactly how it should work.
The test is unforgiving: if a homeowner walked away mid-project tomorrow, would your books already show what you have earned and what you would owe back? On a renovation gone sideways, a stalled permit, a dispute over tile, a fixture on backorder past your year-end, that one number decides both the refund conversation and the tax position. Revenue matched to stage completion survives that conversation. A contract recognized in full at signing does not.
What the ledger shows at each stage
Here is the shape of a healthy project in the books, from first cheque to final walkthrough:
| Project stage | Cash that has moved | What the books say |
|---|---|---|
| Contract signed | Deposit in, cabinet order part-paid | Deposit is a liability; the cabinet payment is a prepaid asset, not a cost |
| Demo and rough-in done | First draw invoiced and collected | Stage revenue recognized; trade invoices coded to the project |
| Cabinets and counters in | Second draw in; suppliers paid out | Prepaids convert to project cost as goods are installed; margin to date visible |
| Punch list signed off | Final payment collected | Remaining deposit balance releases to revenue; the project closes with a real margin number |
Read this way, the books answer the questions that matter mid-project: how much of the cash in the bank is actually yours, which projects are sitting on unearned deposits, and what each job's margin looks like before the final invoice makes it official.
Design fees are not construction revenue
A design-build renovator sells two different things. The design retainer, the fee for measured drawings, 3D renderings in 2020 Design or SketchUp, and the selections package, is earned when the design is delivered, whether or not the client proceeds to construction. If your contract credits the fee against the build, that credit is a discount on the construction price, not a reversal of design revenue. We keep the two on separate revenue lines because they carry completely different margins: blend them and you will never know whether the design side pays for itself or quietly subsidizes the showroom.
Money you paid out is not a cost yet
Custom cabinetry runs on long lead times, and the millwork shop wants a large deposit at order, weeks or months before anything is installed. Stone gets bought before template. Booked as expenses when paid, those outlays make the ordering month look disastrous and the install month look like a miracle, and both pictures are wrong. We carry supplier deposits and undelivered goods as prepaid assets, moving them into project cost when the cabinets go in and the counters are set. Each project then carries its true cost in the period the work actually happened, which is the only way a per-project margin means anything.
A monthly close built for project businesses
Our End-to-End Accounting service runs this as a rhythm, not a year-end rescue. Projects live in QuickBooks Online Projects, synced with Houzz Pro or Buildertrend where your estimates and change orders already live, so nothing is entered twice. Trade invoices from plumbers, electricians and tile setters flow through Dext with HST numbers attached, keeping your 13% input tax credits defensible, and payments run through Plooto with an approval trail. Payroll for the install crew, with its CPP, EI and WSIB burden, lands on the projects that used the labour.
Month by month you see margin per project, deposits split from earned revenue, and HST tracked as the period's real liability. At year-end, the same records feed the T2 and the T5018 slips for your trades through our corporate tax filing, with no reconstruction required. We run this from Mississauga for renovators across the GTA, and everything is quoted in writing after a free 15-minute discovery call.
