ZIP Codes Tracked
689
U.S. Treasury FIO data for 689 ZIP codes in Minnesota (MN).
The verdict
According to U.S. Treasury FIO filings, Minnesota ranks #18 of 51 by average premium ($1,928/yr) ≠ #45 of 50 by nonrenewal (0.65%). Cost rank is not withdrawal rank.
Premium rank counts states with a reported average premium, highest first, abbreviation tiebreak. Nonrenewal rank counts states that publish a rate. In-state ZIP #1s are separate extracts.
Minnesota vs all states by ZIP-mean homeowners premium
Where this state's average ZIP premium sits among every state that reports one (lower is better for homeowners)
$1,928 Around the middle lower premium than 33% of 51 states
States, banded by ZIP-mean annual homeowners premium (FIO)
Each bar is a $0.001K-wide band; taller bars hold more states. The dashed line + filled bar mark this entry. Hover or tap any bar for its full count and share, and where it sits relative to this entry.
Source U.S. Treasury FIO Homeowners Insurance Markets Report · 2018–2022
Homeowners in Minnesota pay an average of $1,928 per year for home insurance - 9% above the national average of $1,776. That ranks Minnesota as the 18th most expensive state out of 51 for homeowners insurance. Between 2018 and 2022, premiums rose by 12.8%; loss ratios above 100% indicate insurers paid more in claims than they collected, a leading indicator of future rate increases; nonrenewal rates climbed by 22.3% over the same period.
On five-year premium growth (2018–2022), Minnesota ranks 8th out of 51 states. Its nonrenewal rate (0.65%) ranks 45th out of 50 - nonrenewal is an early warning indicator of insurer retreat, often tied to disaster risk.
According to the U.S. Department of the Treasury, Federal Insurance Office - "Analyses of U.S. Homeowners Insurance Markets, 2018–2022." Premium values are five-year averages across all ZIP-level observations. See methodology for how the state rank and comparison are calculated.
Across the 689 Minnesota ZIP codes in the U.S. Treasury FIO data, the average annual home insurance premium is $1,928. That is an average of ZIP codes, in which a ZIP of a few hundred people counts the same as one of tens of thousands. Weighting each ZIP by its population, closer to what a typical Minnesota homeowner pays, gives $2,387 per year. That is 9% above the national average of $1,776 per year reported by the Federal Insurance Office. Minnesota ranks 18th most expensive out of 51 states and territories on annual premium, with ZIP-level observations ranging from $1,095 in 55602 to $5,811 in 55403.
Between 2018 and 2022, average premiums rose by 12.8% in Minnesota, placing the state 8th nationally on five-year premium growth. The state-level loss ratio averaged 117.2%, meaning insurers paid out more in claims than they collected in premiums, a leading indicator of future rate increases. Nonrenewal rates, the share of policies insurers decline to extend at expiration, averaged 0.65% across the ZIP codes that report one (82% of the state's ZIP codes; those without a published rate are smaller and higher-premium on average, so this figure is likely conservative), a climb of 22.3% over the study period (ranking 45th out of 50 states).
Within Minnesota, premium dispersion across ZIP codes is substantial: the most expensive ZIP (55403 in Minneapolis) charges 431% more than the least expensive (55602 in Brimson), reflecting local differences in catastrophe exposure, construction costs, and claims history. The FIO dataset aggregates voluntary reporting from the 40 largest homeowners insurers covering roughly 80% of the U.S. market, so ZIP-level figures represent market averages rather than individual quotes; actual premiums vary with dwelling value, deductible, coverage limits, and insurer-specific underwriting. This page is a FIO registry extract, not a quote or a recommendation.
How to read these figures: state averages on this page are computed from U.S. Treasury Federal Insurance Office data, which the office collects directly from the largest homeowners insurers and reports at the ZIP-code level. A statewide average blends expensive coastal and wildfire-exposed markets with lower-cost inland areas, so the figure is a useful benchmark but will understate what some residents pay and overstate what others pay. The loss ratio is the share of every premium dollar that insurers returned as claims; sustained ratios near or above one signal a market under pressure, where rate increases, tighter underwriting, or nonrenewals tend to follow. Claim frequency and nonrenewal rates show how often policies result in claims and how often insurers decline to renew, both of which track local catastrophe exposure. Treat the state number as a registry average, then open the ZIP table below for the same filing year's local premium and nonrenewal extracts.
Minnesota statewide - FIO 2018-2022 average: 117% (Underwriting loss) - paid out more than collected, rate increases virtually guaranteed.
ZIP Codes Tracked
689
Reporting Period
2018-2022
Source
U.S. Treasury FIO
| Year | Avg Premium | Median Premium |
|---|---|---|
| 2018 | $1,708 | $1,603 |
| 2019 | $1,761 (+3.1%) | $1,663 |
| 2020 | $1,801 (+2.3%) | $1,715 |
| 2021 | $1,868 (+3.7%) | $1,788 |
| 2022 | $1,928 (+3.2%) | $1,857 |
689 ZIP codes sorted by premium (highest first). Click column headers to sort.
| ZIP | City | Premium |
|---|---|---|
| 55403 | Minneapolis | $5,811 |
| 55391 | Wayzata | $4,839 |
| 55356 | Long Lake | $4,509 |
| 55424 | Minneapolis | $3,840 |
| 55436 | Minneapolis | $3,822 |
| 55331 | Excelsior | $3,656 |
| 55439 | Minneapolis | $3,615 |
| 55405 | Minneapolis | $3,426 |
| 55359 | Maple Plain | $3,332 |
| 55347 | Eden Prairie | $3,311 |
| 55340 | Hamel | $3,297 |
| 55001 | Afton | $3,297 |
| 55344 | Eden Prairie | $3,101 |
| 55127 | Saint Paul | $3,081 |
| 55305 | Hopkins | $3,079 |
| 55435 | Minneapolis | $3,064 |
| 55357 | Loretto | $3,027 |
| 55364 | Mound | $3,022 |
| 55446 | Minneapolis | $2,985 |
| 55317 | Chanhassen | $2,975 |
| 55372 | Prior Lake | $2,943 |
| 55088 | Webster | $2,920 |
| 55311 | Maple Grove | $2,868 |
| 55386 | Victoria | $2,842 |
| 55047 | Marine On Saint Croix | $2,785 |
| 55447 | Minneapolis | $2,775 |
| 55120 | Saint Paul | $2,767 |
| 55442 | Minneapolis | $2,765 |
| 55408 | Minneapolis | $2,756 |
| 55077 | Inver Grove Heights | $2,746 |
| 55384 | Spring Park | $2,745 |
| 55129 | Saint Paul | $2,737 |
| 55410 | Minneapolis | $2,736 |
| 55416 | Minneapolis | $2,730 |
| 55082 | Stillwater | $2,729 |
| 55345 | Minnetonka | $2,688 |
| 55438 | Minneapolis | $2,687 |
| 55089 | Welch | $2,682 |
| 55020 | Elko New Market | $2,668 |
| 55441 | Minneapolis | $2,650 |
| 55042 | Lake Elmo | $2,640 |
| 55115 | Saint Paul | $2,637 |
| 55375 | Saint Bonifacius | $2,634 |
| 55105 | Saint Paul | $2,632 |
| 55346 | Eden Prairie | $2,626 |
| 55387 | Waconia | $2,609 |
| 55123 | Saint Paul | $2,595 |
| 55419 | Minneapolis | $2,566 |
| 55031 | Hampton | $2,564 |
| 55125 | Saint Paul | $2,562 |
Two FIO peer sets for Minnesota: nearest other states by average homeowners premium and by statewide nonrenewal rate. These are cross-state neighborhoods, not the in-state ZIP table above.
Nearest states by average homeowners premium ($1,928/yr here).
Nearest states by average nonrenewal rate (0.65% here).
Minnesota in the FIO registry
State averages sit next to ZIP-level premium and nonrenewal extracts from the same filing year.
State figures are five-year ZIP-level averages from U.S. Treasury FIO data, a benchmark, not a quote for any individual home.
Source: U.S. Department of the Treasury, Federal Insurance Office (FIO) Homeowners Insurance Data (2018-2022). Premiums are ZIP-level averages and may not reflect individual policy costs
Source data: U.S. Treasury FIO · FEMA National Risk Index · NOAA Storm Events. See our methodology.
Every figure on PlainInsure is rendered directly from U.S. Treasury Federal Insurance Office data, no number is typed in by an editor. This state's figures are rendered directly from U.S. Treasury FIO data, no figure is typed in by an editor. See our editorial standards & corrections policy, the methodology behind these numbers, or report a data error.