Skip to content
CostLocal

Roof replacement cost in Minnesota

Statewide estimate from BLS wages and BEA prices. Reviewed Nov 4, 2026.

Statewide range (2,000 sq ft of roof)
$7,600 – $14,900
Per sq ft of roof
$3.75 – $7.20
before permit
Versus US midpoint
+21%
US $9,300
Metros covered
4

Minnesota prices for roof: $7,600 to $14,900 for 2,000 sq ft of roof, or $3.75 to $7.20 per sq ft of roof without the permit. The state midpoint is 21% above the national one. Local wages for roofers are $35.81 an hour.

Inside Minnesota, the metros we cover range from $9,900 (Rochester) to $11,400 (Minneapolis) at the midpoint. Pick your closest city in the table for a tighter number.

Estimate your roof replacement cost

Pick a size, a quality level and where you live. Prices update as you type.

Quality level

Architectural shingles, standard pitch and tear-off

Estimated cost for 2,000 sq ft of roof in Minnesota (statewide), standard level

$9,750 to $12,700

About $4.75 to $6.15 per sq ft of roof before permits. Labor is about 68% of the bill.

Cost breakdown
PartLowHigh
Materials$2,650$4,000
Labor$6,900$8,300
Permits and fees$220$370
Total$9,750$12,700
Save and get a PDF report

Cost breakdown for 2,000 sq ft of roof in Minnesota

Part of the jobLowMidpointHighShare
Materials$1,600$3,300$5,05030%
Labor$5,850$7,600$9,35068%
Permits and fees$100$300$4903%
Total$7,600$11,200$14,900100%

When Minnesota weather lets you replace

Season matters for roof. For each Minnesota metro below we took NOAA's 1991-2020 monthly normals from the nearest suitable station and counted comfortable months for exterior installation.

Every Minnesota metro on the list has 7 comfortable months, though rainfall ranges from 28 inches a year in St. Cloud to 35 in Rochester.

We do not adjust prices by month, because we have no reliable published data on seasonal pricing. Timing is still worth raising when you collect bids.

Climate by metro (NOAA 1991-2020 normals)
MetroJan avg low °FJul avg high °FPrecip (in/yr)Comfortable months
Minneapolis883347: April through October
Duluth278317: April through October
Rochester780357: April through October
St. Cloud382287: April through October

Other Minnesota jobs that often go with roof

The table prices neighboring jobs at their usual sizes using statewide Minnesota wages and prices. Against national midpoints, metal roof comes out highest (+17%) and attic insulation lowest (+5%), because each job leans on different trades.

Related projects with local prices
ProjectSizeRangevs. US
Metal roof2,000 sq ft of roof$12,600 – $37,400+17%
Gutters160 linear ft$1,450 – $4,600+10%
Vinyl siding2,100 sq ft of wall$9,050 – $27,100+8%
Attic insulation1,000 sq ft$1,050 – $4,200+5%

Minnesota against its neighbors

Minnesota ranks 3 of 51 (the 50 states plus DC) for roof, where 1 is the most expensive. The costliest is New Jersey at $11,700 and the cheapest Oklahoma at $7,900, both for 2,000 sq ft of roof at the midpoint. Minnesota sits at $11,200. The five states closest by workforce center are listed below.

States near Minnesota, same project and size
StateDistanceRangeMidpointvs. here
Iowa240 miles away$5,550 – $11,400$8,500−24%
Wisconsin260 miles away$6,400 – $12,800$9,600−14%
North Dakota270 miles away$6,350 – $12,700$9,550−15%
South Dakota290 miles away$5,500 – $11,400$8,400−25%
Nebraska320 miles away$5,400 – $11,200$8,300−26%

Quality levels and sizes in Minnesota

The cited range is cut into three overlapping bands (basic, standard and premium) and scaled to statewide Minnesota wages and prices. The grid prices the same bands at 4 common sizes.

Basic

$7,600 to $10,500

3-tab shingles, single layer, simple roof

Standard

$9,750 to $12,700

Architectural shingles, standard pitch and tear-off

Premium

$11,900 to $14,900

Heavy architectural, steep or cut-up roof, decking repairs

Cost by size and quality level
SizeBasicStandardPremium
small (1,200 sq ft of roof)$4,600 – $6,400$5,950 – $7,750$7,300 – $9,100
average (2,000 sq ft of roof)$7,600 – $10,500$9,750 – $12,700$11,900 – $14,900
large (2,800 sq ft of roof)$10,600 – $14,600$13,600 – $17,600$16,600 – $20,600
very large (3,600 sq ft of roof)$13,600 – $18,700$17,400 – $22,500$21,200 – $26,300

Which Minnesota city is cheapest for roof?

2 of the 4 metros sit above the statewide midpoint of $11,200, and the top-to-bottom gap is 15%. Each row prices the default size with that metro's own BLS wages and BEA price levels, so the gap between rows is real local variation rather than a flat markup.

MetroRange (2,000 sq ft of roof)Midpointvs. state
Minneapolis, MN$7,700 – $15,200$11,400+2%
St. Cloud, MN$7,750 – $15,000$11,400+2%
Duluth, MN$7,400 – $14,400$10,900−3%
Rochester, MN$6,650 – $13,200$9,900−12%

Minnesota labor market for roof

Statewide wages come from BLS's state-level estimates, which blend big cities with small towns and rural areas. 2 trades drive the labor line for this job, and the weighted ratio against the national wage level is 1.33 for Minnesota.

For roofers (47-2181, weighted 85%) the local median is $35.81 an hour, which is 34% above the national $26.65. The middle half of them earn between $26.76 and $44.05 an hour. BLS counts 1,890 of them working in the state, 6.4 for every 10,000 jobs (US: 8.7), so the local bench is thinner than average.

Construction laborers (47-2061), 15% of the weighting: a median of $28.97 an hour, 28% above the US median of $22.66. The middle half of them earn between $23.28 and $38.32 an hour. About 28,530 work in the state. That is 96.7 per 10,000 jobs, compared with 70.5 nationally, which suggests plenty of local crews to bid.

A crew paid at the 75th percentile for roofers ($44.05 an hour) would add about $1,500 to the statewide midpoint; one at the 25th percentile ($26.76) would take off about $1,650. Use that as a rough guide to how far a bid can sit from our midpoint on wages alone.

BLS counts 2,949,820 jobs across Minnesota (May 2025), which is 1.9% of US employment.

Median hourly wages behind the labor line (BLS OEWS, May 2025)
TradeWeight25th pctMedian75th pctUS medianRatioLevel used
Roofers (47-2181)85%$26.76$35.81$44.05$26.651.34state
Construction laborers (47-2061)15%$23.28$28.97$38.32$22.661.28state
Blended100%1.33

Roof replacement: what moves the price in Minnesota

  • Shingle type

    3-tab asphalt is $3-$5 per sq ft installed; architectural is $4-$6 (HomeGuide). Metal, tile and slate are separate projects with much higher ranges.

  • Roof area, not floor area

    Pitch and complexity mean roof surface is larger than the house's footprint. A 1,500 sq ft ranch can have 1,800-2,200 sq ft of roof.

  • Tear-off and layers

    Removing a second layer or rotted decking adds cost, and the contractor can only see decking damage after tear-off.

  • Tear-off

    Removing the old roof is $1-$5 per sq ft depending on the material and number of layers (HomeGuide). Check that your quote includes it.

  • Permit

    Roof replacement permits run $100-$500 depending on the location.

Get 3 local quotes

Tell us about the job and we will try to connect you with up to three local contractors for written quotes. It is free and you are under no obligation to hire. Your estimate of $9,750 to $12,700 for Minnesota is attached.

A detailed PDF report of this estimate, $9

The report lays out the roof replacement numbers for Minnesota line by line, with the local wage and price inputs, permit and timing notes, a quote comparison sheet and the full method. Save your estimate above, preview page 1 free, and unlock the full report for $9 one-time, or get every report with CostLocal Pro.

Roof replacement in Minnesota: your questions

+How much does it cost to replace a roof in Minnesota?

$7,600 to $14,900 for 2,000 sq ft of roof, using statewide wages and prices. Metro areas inside Minnesota can sit above or below that.

+Which city in Minnesota is cheapest for roof?

Rochester at about $9,900 (midpoint, 2,000 sq ft of roof). The priciest is Minneapolis at $11,400.

+Is roof cheaper in Minnesota than the US average?

It is 21% more expensive: $11,200 against $9,300 for 2,000 sq ft of roof at the midpoint.

+What share of the price is labor in Minnesota?

About 68% ($7,600). Materials are 30%. Statewide labor for this job is weighted 1.33x the national wage level.

+What do roofers earn in Minnesota?

The BLS statewide median is $35.81 an hour, against $26.65 for the US. The 25th to 75th percentile range is $26.76 to $44.05.

+Where does Minnesota rank for roof costs?

3rd most expensive of 51 (the 50 states plus DC) at the midpoint, $11,200 for 2,000 sq ft of roof. Rank 1 is the costliest.

+What do basic and premium roof work cost in Minnesota?

For 2,000 sq ft of roof, basic work runs $7,600 to $10,500 and premium work $11,900 to $14,900. Basic means: 3-tab shingles, single layer, simple roof. Premium means: heavy architectural, steep or cut-up roof, decking repairs.

+Does the season matter for roof in Minnesota?

Yes where winters or summers are hard. Of the Minnesota metros we cover, Minneapolis has the most comfortable months (7 of 12) based on NOAA 1991-2020 normals. Our prices do not change by month, so ask contractors whether they charge more or less in busy and slow seasons.

Roof replacement by city in Minnesota

Roof replacement: all pricesMinnesota cost hub

Where these numbers come from

Base prices are national ranges from the sources below. We scale labor by local BLS wages, materials by BEA goods prices and permits by the BEA all-items price level. Full method on the methodology page.

Note on derived figures: Materials = HomeGuide's asphalt shingle price of $80-$250 per roofing square (100 sq ft), i.e. $0.80-$2.50 per sq ft. The rest of the installed price covers roofer labor ($1.50-$3.00/sq ft), tear-off, disposal, underlayment and contractor overhead.