HomePro

How much does a new roof cost?

Short answer

A new asphalt shingle roof on a typical single-family home generally runs $8,000–$20,000, with most homeowners around $12,000. Cost is driven mainly by square footage, pitch, the number of existing layers to tear off, and material choice — metal, tile and slate cost substantially more than asphalt.

Typical range
$8,000–$20,000
Most homeowners pay
$12,000
Expected lifespan
20–30 years

Where the money goes

Materials (architectural asphalt)$3,000–$8,000
Labour$3,000–$8,000

Typically the largest single line

Tear-off & disposal$1,000–$3,000

More for multiple existing layers

Underlayment & ice barrier$500–$1,500
Flashing & vents$300–$1,200
Decking repair$0–$3,000

Only discovered once the old roof is off

Permits$150–$700

What changes the price

  • Roof size, measured in squares (100 sq ft each)
  • Pitch and complexity — steep roofs and many valleys cost more to work on safely
  • Material: asphalt, metal, tile or slate
  • Number of existing layers to remove
  • Hidden decking damage found during tear-off
  • Regional labour rates and post-storm demand surges

Repair or replace?

Repair makes sense for isolated damage on a roof with years of life left. Replace when the roof is near the end of its service life, leaks are appearing in multiple places, or shingles are widely curling and losing granules. Patching an old roof repeatedly usually costs more over a few years than replacing once.

Get a real quote

HomePro knows your home's equipment and history, so pros quote against the same facts — and you can compare them fairly.

Find a pro

Related problems

Learn about roof

Last reviewed August 8, 2026. These are typical US ranges for orientation, not quotes. Pricing varies significantly by region, home and contractor — always get written estimates before committing.