How we estimate roof replacement cost
Every estimate combines a national price for each part of the job with a local labor adjustment for your province. Here is exactly how that works and where the numbers come from.
The formula
For each line item we multiply a quantity (driven by your roof size, pitch, number of stories, material grade, and whether the old roof is removed) by a national unit cost, then apply a quality-grade factor. A regional labor multiplier is applied to the labor portion only — materials are priced nationally. We show the itemized result as a ±15% range.
National unit costs
| Line item | National unit cost | Source |
|---|---|---|
| Tear-off | $1.50 / sq ft | ref |
| Underlayment | $0.55 / sq ft | ref |
| Roofing material | $2.66 / sq ft | ref |
| Installation labor | $3.41 / sq ft | ref |
| Flashing & vents | $0.41 / sq ft | ref |
| Disposal | $0.41 / sq ft | ref |
Regional labor multipliers
Each province's labor multiplier is its median roofer wage relative to the national median, from the Government of Canada Job Bank wage data (Roofers and shinglers, NOC 73110) — territorial wages are suppressed by Job Bank, so the three territories use a disclosed northern-premium proxy. Multipliers are bounded to a sane range and applied to the labor share of each line item, so materials stay nationally priced while labor tracks local wages.
Data vintage & limitations
Compiled June 2026 from public cost aggregators and government wage data — these are derived estimates, not live contractor quotes. Local prices vary with project complexity, access, and material availability; always confirm with a licensed contractor before budgeting.