Roof Replacement Cost — Minnesota

What a new roof costs in Minnesota.

A typical 24-square architectural shingle roof in Minnesota costs $13,000 – $19,550 installed — about $16,300 on average. Architectural shingle runs $543 – $814 per square here, versus a national band of $450 – $675.

Deep freeze, ice dams, and strong labor rates; short season concentrates demand.

Minnesota roof cost by material

MaterialPer squareTypical 24-square roofLifespan
Asphalt Shingle — 3-Tab$422 – $573$10,150 – $13,75015-20 years
Asphalt Shingle — Architectural$543 – $814$13,000 – $19,55025-30 years
Metal — Exposed Fastener$1,025 – $1,568$24,600 – $37,65040-50 years
Metal — Standing Seam$1,327 – $2,231$31,850 – $53,55040-60 years
Cedar Shake$844 – $1,387$20,250 – $33,30025-35 years
Concrete / Clay Tile$1,447 – $2,533$34,750 – $60,80050+ years

Installed, including tear-off of one layer, underlayment, and standard flashing. Costs verified October 2026 — sources and method.

What Moves The Price In Minnesota

The honest factors.

Labor. Minnesota roofers earn a median $35.81/hr (BLS OEWS, May 2025) against a national median of $26.65/hr. Our Minnesota rates adjust the national dataset by that difference, applied to the labor share of the job.

Weather and code. Deep freeze, ice dams, and strong labor rates; short season concentrates demand.

Licensing. Minnesota residential roofers are licensed by the Department of Labor and Industry.

The invisible stuff. Decking replacement ($65–$95 per sheet, installed) and extra shingle layers are only fully countable after tear-off — which is why every number on this page is a range, and why our satellite estimate shows its imagery date.

Want your own roof measured? The satellite estimator is free and needs no signup — or price it by hand with the calculator.

Optional — Real Prices

Want real prices instead of a range?

Want real prices? We can send your roof details — size, pitch, and the estimate — to local roofers and let them send you their price. We never give them your phone number. You compare in peace, and if you like one, you decide who gets to contact you.

Coming soon to Minnesota: the real-prices step launches area by area as local roofers are vetted. The free estimate above works everywhere, today.

Roofers see

  • Roof size, sections & pitch
  • Material you picked & the estimate range
  • City & ZIP code

Roofers never see

  • Your name
  • Your phone number
  • Your email or street address

What's in it for us? If you choose one of these roofers, they pay us a small referral fee. You never pay us anything, and it doesn't change the price they give you.

No thanks — I'll just use the free estimate. That's fine. It stays free either way.

Demo mode: lead capture opens area by area as roofers are vetted (Washington first). This form currently validates your entry on this page only — nothing is sent or stored.

Fair Questions

Asked by every homeowner.

How much does a new roof cost in Minnesota?

For a typical 24-square architectural shingle roof, Minnesota homeowners pay about $13,000 – $19,550 installed, with an average near $16,300. Across all materials the range runs from roughly $10,150 for 3-tab shingles to $60,800 or more for tile.

Why do Minnesota roof prices differ from the national average?

Labor is the biggest single factor. Roofers in Minnesota earn a median of $35.81 per hour (U.S. Bureau of Labor Statistics, OEWS May 2025) versus $26.65 nationally, and we adjust our published national rates by that labor difference. Deep freeze, ice dams, and strong labor rates; short season concentrates demand.

Are Minnesota roofers licensed?

Minnesota residential roofers are licensed by the Department of Labor and Industry. Always verify registration and insurance yourself before signing — it takes two minutes and it is the cheapest protection you can buy.

Is the satellite estimate really free?

Yes — no email, no phone number, no account. If you want real prices afterward, that step is optional and roofers never see your contact details unless you choose one and tell us to share them.