Two contractors reviewing construction documents inside an unfinished renovation project

A contractor finishes a $200,000 renovation, collects the final payment, and assumes the project was profitable. Three months later, an accountant pulls the numbers and discovers that material overruns, unbilled change orders, and missed HST remittances ate most of the margin. The problem was never the work itself. It was the books behind it.

Why Standard Bookkeeping Falls Short for Contractors

Most bookkeeping systems are built around a simple model: money comes in, money goes out, and the difference is profit. That works for a consulting firm or a retail store. It does not work for construction.

Construction projects run across months, sometimes years. Revenue arrives in stages through progress billings. Costs land unevenly as materials get ordered, subcontractors invoice at different intervals, and labour hours shift week to week. A single company might have five active jobs at once, each at a different stage of completion, each with its own budget, timeline, and margin.

Without job costing, there is no way to know which projects are actually making money and which ones are bleeding. A general profit-and-loss statement will show total revenue and total expenses, but it will not tell you that Project A is 15% over budget on materials while Project B is on track. That distinction is the difference between scaling and slowly going broke.

Job Costing as the Foundation

Job costing means assigning every expense to a specific project rather than dumping everything into general categories. Materials, labour, equipment rentals, subcontractor invoices, permits, and even fuel for site visits all get coded to the job they belong to.

In QuickBooks Online, this is handled through the Projects feature or through classes and sub-accounts. Each job gets its own cost centre, and every transaction is tagged accordingly. When the project wraps, you can pull a report showing exactly what was budgeted versus what was spent, broken down by cost type.

This matters for more than internal tracking. When a client disputes a bill or requests a breakdown, job-level records give you a defensible answer. When CRA asks how you calculated your income on a long-term contract, those same records back up your return.

Canadian contractors using the percentage-of-completion method for revenue recognition need even tighter job costing. Under this method, revenue is recognized proportionally as work progresses rather than when the invoice is paid. The CRA expects the reported revenue to align with verifiable completion milestones, and the only way to substantiate those milestones is through detailed cost tracking against the project budget.

Progress Billing and Revenue Recognition

Progress billing creates a timing gap that a standard bookkeeping setup does not handle well. A contractor might bill 30% of a contract upon completing the foundation, another 30% after framing, and the final 40% at completion. Each of those invoices needs to be matched against the costs incurred during that phase, not against total project costs.

Without this matching, financial statements become misleading. Revenue shows up in the month the invoice was sent, but the costs that generated that revenue might be spread across the previous two months. A contractor could look profitable in March because a large progress bill landed, then appear to be losing money in April when material costs for the same project come through.

Holdback provisions add another layer. In most Canadian provinces, a percentage of each progress payment (typically 10%) is held back until the project reaches substantial completion and the lien period expires. Ontario’s Construction Act, for example, requires a 10% holdback on the price of services or materials. That holdback is real money owed to the contractor, but it should not be recorded as collected revenue until it is actually released. Booking it early inflates cash position and creates a mismatch between what the books say and what the bank account shows.

Payroll and Subcontractor Obligations

Construction payroll is more complex than most industries. Workers may be hourly or salaried, on-site or between jobs, and their hours often need to be allocated across multiple projects in the same pay period. Each of those allocations affects job costing accuracy.

For employees, the standard Canadian payroll and bookkeeping obligations apply: CPP contributions, EI premiums, income tax withholding, and source deduction remittances to CRA. The remittance schedule depends on the employer’s average monthly withholding amount, and construction companies with seasonal spikes in hiring can move between remittance thresholds during the year.

Subcontractors are a separate category entirely. A subcontractor is not an employee, so no source deductions are withheld. However, any subcontractor paid more than $500 in a calendar year must receive a T4A slip reporting those payments. Missing this requirement is one of the most common CRA compliance issues in construction. The penalty for failing to file T4A slips on time is $25 per day, with a minimum of $100 and a maximum of $2,500 per year.

The distinction between employee and subcontractor matters for the books and for CRA. If CRA reclassifies someone you have been treating as a subcontractor as an employee, you become liable for all the unremitted source deductions, plus penalties and interest. Proper bookkeeping documents the nature of each working relationship from the start, which is the first line of defence if CRA questions the classification.

HST on Construction Projects

HST in construction has specific rules that catch contractors off guard. New residential construction is subject to HST, but the builder may be eligible for a new housing rebate that reduces the effective rate. Renovations to existing residential properties are taxable, but the rules differ depending on whether the renovation is substantial enough to be treated as a new build.

Commercial construction is straightforward: HST applies, the contractor charges it, and input tax credits (ITCs) are claimed on business expenses. But contractors working on both residential and commercial projects need to track HST separately for each type of work, because the ITC eligibility differs.

The filing frequency depends on annual revenue. Contractors with annual taxable supplies over $1.5 million must file monthly. Those between $500,000 and $1.5 million file quarterly. Below $500,000, annual filing is permitted, though many contractors opt for quarterly to avoid a large year-end remittance.

Getting this wrong is expensive. Late HST remittances carry a penalty of 1% of the balance owing plus 0.25% for each full month overdue, up to 12 months. For a contractor billing $80,000 per month at 13% HST, that is $10,400 per month in collected tax that needs to be tracked and remitted on schedule.

Equipment and Asset Tracking

Construction companies rely on expensive equipment: excavators, loaders, scaffolding systems, generators, and specialized tools. Each piece of equipment is a capital asset that must be tracked for both job costing and Capital Cost Allowance (CCA) purposes.

CCA is the Canadian equivalent of depreciation. Different types of equipment fall into different CCA classes, each with its own depreciation rate. Class 10 (general-purpose motor vehicles) depreciates at 30%. Class 8 (machinery and equipment) depreciates at 20%. Class 53 (manufacturing and processing machinery acquired after 2015) depreciates at 50%. Applying the wrong class means claiming the wrong amount of depreciation, which affects both the tax return and the net book value of assets on the balance sheet.

For contractors who rent equipment for specific jobs, those rental costs are straightforward operating expenses coded to the relevant project. For owned equipment, the accounting for those assets gets more involved: the asset’s depreciation needs to be allocated across the jobs that used it, proportional to usage hours or days.

When to Hand Off the Books

Many contractors start by managing their own books. That works when there is one project at a time and the transactions are simple. It stops working when multiple jobs overlap, subcontractor invoices pile up, and HST remittance deadlines start competing with project deadlines for attention.

The tipping point usually comes when the cost of a bookkeeping error, a missed remittance, a misallocated expense, or an unreconciled holdback, exceeds the cost of bringing in professional bookkeeping support. For most construction businesses, that point arrives sooner than expected.

A bookkeeper familiar with construction workflows knows how to set up job costing in QuickBooks Online, track progress billings against holdbacks, allocate payroll across projects, and keep HST remittances on schedule. That is not general bookkeeping with a construction label on it. It is a fundamentally different way of organizing financial data, built around projects rather than months.

YMA works with construction businesses across Canada to set up and maintain books that reflect how the work actually happens: project by project, payment by payment, and deadline by deadline.