Construction Contractor Invoice Guide: Progress Billing & Holdbacks
Construction contractors face invoicing requirements unique to the trades: progress billing tied to project phases, statutory holdbacks governed by provincial lien legislation, and the need to separate materials from labour. This guide explains how to invoice correctly so you protect your lien rights and get paid without disputes.
Required Fields for Construction Invoices
A valid construction invoice in Canada must include:
- Contractor's full legal name and business address
- GST/HST registration number (required once you exceed $30,000 annual revenue)
- Client name and project address — use the site address, not just the billing address
- Sequential invoice number
- Invoice date and due date
- Description of work completed — reference the project phase or contract milestone
- Separate line items for labour and materials
- Holdback amount deducted (if applicable under provincial legislation)
- GST/HST calculated on the invoice total before holdback
- Payment terms and method
Progress Billing: How It Works
Construction projects are rarely paid in a single lump sum. Progress billing ties payment to the completion of defined phases of work. Common structures include:
Percentage of Completion
The contractor invoices based on the percentage of the total contract value completed. For example, if a $100,000 contract is 40% complete, the contractor invoices $40,000 (minus applicable holdback).
Milestone-Based Billing
Each invoice is tied to a specific deliverable: foundation complete, framing complete, drywall complete, etc. This requires a clear schedule of values in your original contract, specifying the dollar amount attributable to each milestone.
Time and Materials (Cost-Plus)
Commonly used for renovation work or contracts where the full scope is unknown. The contractor invoices for actual hours worked and materials purchased, usually with a markup for overhead and profit.
Holdbacks: What Every Contractor Must Know
Canadian construction lien legislation — such as Ontario's Construction Act — requires owners to hold back a statutory percentage of each progress payment. This holdback protects subcontractors and suppliers who have lien rights against the property.
- The standard holdback rate is 10% in most provinces
- The holdback is retained by the owner (or general contractor if you are a sub) until the lien period expires
- Your invoice should show the gross amount, the holdback deducted, and the net amount due now
- GST/HST is calculated on the gross amount, not the net after holdback
Separating Labour and Materials
Always separate labour and materials on your invoices. This matters for three reasons:
- Client verification: Clients and general contractors want to see exactly what they are paying for
- Tax purposes: Some provinces apply PST differently to materials vs labour
- Dispute resolution: Itemised invoices are harder to dispute
List materials as individual line items where possible, or group them as "Materials — [project phase]" with a total. Attach a materials list or receipts for cost-plus contracts.
Sample Construction Progress Invoice
| Field | Example Value |
|---|---|
| From | Kowalski Framing Ltd. [email protected] | Calgary, AB |
| GST Number | 876543210 RT0001 |
| Invoice # | INV-2026-014 |
| Invoice Date | March 5, 2026 |
| Due Date | March 19, 2026 (Net 14) |
| Project | Residential Addition — 45 Maple Ave, Calgary AB |
| Bill To | Birchwood Homes Inc., 800 Crowchild Trail NW, Calgary AB |
| Framing Labour — Phase 2 (200 hrs @ $65/hr) | $13,000.00 |
| Lumber and structural materials | $4,200.00 |
| Hardware and fasteners | $380.00 |
| Gross Amount | $17,580.00 |
| Less: Statutory Holdback (10%) | –$1,758.00 |
| Net Amount Before Tax | $15,822.00 |
| GST (5%) on Gross Amount | $879.00 |
| Total Due Now | $16,701.00 |
| Holdback Due After Lien Period | $1,758.00 + GST |
| Payment | EFT — Royal Bank, Transit 10203, Institution 003, Acct 9876543 |
Common Construction Invoicing Mistakes
1. Not including the project site address
Always reference the specific project address. In lien disputes, the property address is what ties your invoice to lien rights against that land.
2. Calculating GST on the net amount after holdback
GST/HST must be calculated on the full contract amount before holdback. Undercharging GST is a CRA compliance issue you are responsible for correcting.
3. Lumping labour and materials together
Itemise labour and materials separately. Clients and general contractors use these figures for their own accounting and cost reporting. Lumped invoices are frequently returned for revision.
4. Not tracking holdback release dates
Follow up on holdback releases after the lien period expires. Many contractors leave holdback money uncollected simply because they forget to invoice for it.