Cost guide · Updated October 2026
Should you repair or replace your roof?
Short answer
Repair your roof if it is under about 15 years old, the damage is in one area, and the rest of the shingles are in good shape. Replace it if it is over 20 years old, shingles are curling or losing granules across the whole roof, the deck feels soft, or new leaks keep appearing. When repairs start costing a large share of a new roof, replacing is usually better value.
| Sign | Repair | Replace |
|---|---|---|
| Roof age | Under ~15 years | Over ~20 years |
| Damage | One area or one slope | Across most of the roof |
| Shingles | Mostly flat and intact | Curling, cracked, bald of granules |
| Leaks | One leak, clear cause | Repeated leaks in new places |
| Roof deck | Solid | Soft or sagging spots |
Typical Metro Vancouver / BC market prices from the sources below. Smart Earth Group's own quotes are usually lower.
Questions to ask before deciding
- How old is the roof, and what material is it?
- Is the problem in one place or everywhere?
- Is the plywood underneath still solid?
- How long do you plan to stay in the house?
- Are you selling soon? A new roof can help a sale.
How Smart Earth Group helps you decide
- Free on-site inspection with photos of what we find
- We tell you which option we'd choose if it were our own house
- Written quote for the repair, the replacement, or both
Common questions
How long does a roof last in Vancouver?
Asphalt shingles commonly last 15–30 years here, metal 40–70 years and cedar 25–50 years with maintenance.
Can I put new shingles over old ones?
Sometimes, but we usually recommend a full tear-off so the deck can be checked and repaired.
Does a new roof add value to my home?
It removes a big worry for buyers and inspectors, and it can make a home easier to sell.
Sources
- Green Building Canada — Average roof replacement cost in BC
- HomeStars — Roofing cost in Vancouver (updated Aug 2026)
Written by the Smart Earth Group team — 35 years of roofing and exterior work across Metro Vancouver and the Fraser Valley.