Iowa Environment & Hazard Risk
0 counties rated high or very high risk. 61,957 storm events since 1996, #5 among states.
- Expected yearly loss
- $1.83B
- $575 per person
- Storm events since 1996
- 61,957
- Most often thunderstorm wind
- Flood insurance policies
- 6,602
- $357M in claims paid
- Superfund sites
- 25
- 463 toxic release facilities
Risk by county
FEMA National Risk Index rating, highest risk first
| County | Overall risk | Top hazard | Flood policies | Flood claims paid |
|---|---|---|---|---|
| Polk County | Moderate | Strong wind | 670 | $38.52M |
| Johnson County | Moderate | Strong wind | 360 | $31.94M |
| Linn County | Moderate | Strong wind | 655 | $69.43M |
| Scott County | Moderate | Strong wind | 553 | $34.93M |
| Woodbury County | Moderate | Tornado | 173 | $1.95M |
| Pottawattamie County | Low | Hail | 557 | $11.05M |
| Black Hawk County | Low | Drought | 448 | $27.33M |
| Cerro Gordo County | Low | Drought | 80 | $3.48M |
| Story County | Low | Drought | 95 | $13.08M |
| Wapello County | Low | Drought | 23 | $2.43M |
| Clinton County | Low | Strong wind | 108 | $1.28M |
| Dubuque County | Low | Hail | 76 | $2.18M |
| Lee County | Low | Hail | 38 | $3.99M |
| Marshall County | Low | Drought | 27 | $175K |
| Crawford County | Low | Drought | 2 | $1.7M |
| Dallas County | Low | Drought | 76 | $639K |
| Cass County | Low | Drought | 19 | $338K |
| Webster County | Low | Drought | 23 | $2.77M |
| Hardin County | Low | Hail | 29 | $211K |
| Muscatine County | Low | Hail | 130 | $5.64M |
| Carroll County | Low | Hail | 14 | $360K |
| Des Moines County | Low | Hail | 129 | $9.37M |
| Sioux County | Low | Hail | 151 | $3.97M |
| Fayette County | Low | Drought | 39 | $866K |
| Davis County | Low | Drought | - | - |
| Delaware County | Low | Hail | 66 | $4.06M |
| Union County | Low | Drought | 14 | $134K |
| Adair County | Low | Drought | - | - |
| Plymouth County | Low | Hail | 20 | $606K |
| Floyd County | Low | Drought | 87 | $4.46M |
| Tama County | Low | Drought | 35 | $1.53M |
| Calhoun County | Low | Drought | 3 | - |
| Washington County | Low | Strong wind | 84 | $189K |
| Jasper County | Low | Drought | 24 | $1.34M |
| Hamilton County | Low | Drought | 6 | $189K |
| Emmet County | Very Low | Drought | 12 | $81.09K |
| Clayton County | Very Low | Landslide | 85 | $3.37M |
| Wright County | Very Low | Drought | 16 | $2,369 |
| Appanoose County | Very Low | Drought | 3 | $103K |
| Page County | Very Low | Heat wave | 2 | $6,833 |
| Buena Vista County | Very Low | Hail | 11 | - |
| Audubon County | Very Low | Drought | - | $127K |
| Taylor County | Very Low | Drought | - | $27.87K |
| Allamakee County | Very Low | Landslide | 29 | $101K |
| Mitchell County | Very Low | Strong wind | 9 | $467K |
| Clay County | Very Low | Hail | 133 | $5.48M |
| Dickinson County | Very Low | Winter weather | 31 | $311K |
| Winneshiek County | Very Low | Hail | 60 | $365K |
| Warren County | Very Low | Drought | 28 | $287K |
| Jackson County | Very Low | Landslide | 23 | $384K |
| Madison County | Very Low | Drought | 5 | $98.91K |
| Marion County | Very Low | Drought | 9 | $486K |
| Cherokee County | Very Low | Hail | 43 | $1.68M |
| Montgomery County | Very Low | Drought | 78 | $240K |
| Van Buren County | Very Low | Drought | 30 | $546K |
| Pocahontas County | Very Low | Drought | 1 | - |
| Jones County | Very Low | Drought | 42 | $4.12M |
| Kossuth County | Very Low | Drought | 3 | $22.66K |
| Greene County | Very Low | Drought | 2 | $6,005 |
| Chickasaw County | Very Low | Drought | 29 | $498K |
| Harrison County | Very Low | Drought | 177 | $3.44M |
| Poweshiek County | Very Low | Drought | 7 | - |
| Henry County | Very Low | Heat wave | - | - |
| Winnebago County | Very Low | Drought | 1 | $186 |
| Mahaska County | Very Low | Drought | 12 | $134K |
| Lucas County | Very Low | Drought | - | $19.11K |
| Benton County | Very Low | Drought | 70 | $2.12M |
| Hancock County | Very Low | Drought | 6 | $7,979 |
| Boone County | Very Low | Drought | 25 | $448K |
| Iowa County | Very Low | Strong wind | 98 | $267K |
| Sac County | Very Low | Drought | 4 | - |
| Butler County | Very Low | Drought | 113 | $7.43M |
| Jefferson County | Very Low | Drought | 4 | - |
| Guthrie County | Very Low | Drought | 17 | $157K |
| Monona County | Very Low | Drought | 29 | $701K |
| Bremer County | Very Low | Drought | 107 | $14.76M |
| Humboldt County | Very Low | Drought | 15 | $231K |
| Buchanan County | Very Low | Drought | 65 | $3.38M |
| Decatur County | Very Low | Drought | - | $24.32K |
| Shelby County | Very Low | Drought | 19 | $258K |
| Wayne County | Very Low | Drought | - | - |
| Franklin County | Very Low | Drought | 8 | $41.01K |
| Keokuk County | Very Low | Drought | 4 | $31.71K |
| Cedar County | Very Low | Drought | 27 | $974K |
| Adams County | Very Low | Drought | 2 | $221K |
| Lyon County | Very Low | Hail | 39 | $1.68M |
| Mills County | Very Low | Landslide | 44 | $6.16M |
| Clarke County | Very Low | Drought | - | - |
| Ida County | Very Low | Hail | 7 | $35.67K |
| Louisa County | Very Low | Strong wind | 97 | $4.48M |
| O'Brien County | Very Low | Hail | 5 | $144K |
| Howard County | Very Low | Drought | 14 | $31.85K |
| Palo Alto County | Very Low | Drought | 8 | $37.7K |
| Fremont County | Very Low | Drought | 61 | $10.65M |
| Osceola County | Very Low | Hail | 12 | $21.35K |
| Ringgold County | Very Low | Drought | - | - |
| Grundy County | Very Low | Drought | 3 | $31.4K |
| Monroe County | Very Low | Drought | - | $355 |
| Worth County | Very Low | Drought | 4 | $7,347 |
Costliest hazards
Expected annual loss in Iowa, all counties combined
- Tornado$354M/yr · 8 counties high
- Drought$223M/yr · 45 counties high
- Cold wave$164M/yr · 2 counties high
- Hail$129M/yr · 9 counties high
- Strong wind$124M/yr · 14 counties high
- Heat wave$61.36M/yr · 1 county high
- Lightning$16.64M/yr · 2 counties high
- Winter weather$12.49M/yr · 9 counties high
- Ice storm$12.37M/yr · 4 counties high
- Earthquake$7.85M/yr
Storm events by type
Since 1996: 152 deaths, $12.46B in property and crop damage
- Thunderstorm Wind14,030 · 16 deaths
- Hail13,740
- Flood4,760 · 8 deaths
- Winter Storm3,848 · 11 deaths
- Heavy Rain3,554
- High Wind2,700 · 2 deaths
- Flash Flood2,629 · 10 deaths
- Drought2,605
- Winter Weather2,490 · 22 deaths
- Tornado1,966 · 38 deaths
- Heavy Snow1,737 · 3 deaths
- Blizzard1,703 · 9 deaths
Events per year
Most damaging storms
Since 2017, ranked by deaths, injuries and damage
- TornadoEF3, 8.41 mi path, 1,200 yd wide07/19/2018
Marietta, Marshall County
23 injured, $200M damage
What happened
This tornado developed northwest of Marshalltown west of the little hamlet of Marietta. The tornado traveled southeast on the western side of the Iowa River producing extensive crop and tree damage. The tornado strengthened quickly and took on a wedge appearance as it entered northwest Marshalltown. The tornado tracked more easterly as it entered town producing widespread EF1 and EF2 damage. The tornado went directly through the business district of Marshalltown with EF2 and EF3 damage to many structures including the county courthouse which lost the spire off the clock tower. The tornado continued east through housing areas before encountering the Lennox plant on the east side of town, producing EF3 damage once again. The tornado began to weaken rapidly after this point and dissipated near power plant located on the east side of town. The tornado produced a total of 22 direct injuries. An additional indirect injury resulted during the clean-up of storm debris when a tree fell on a man.
- Thunderstorm Wind122 kt wind08/10/2020
Covington, Linn County
1 death, 200 injured
What happened
Widespread straight-line winds that produced extensive damage were reported throughout Linn County, associated with a derecho. These winds lasted around an hour in total at any one location, even though the initial line of storms moved out quickly. Damaging straight-line winds continued and were associated with the rear inflow jet. Maximum wind speeds were estimated to be 80 to 100 MPH for much of the county, with areas in central Linn County that had wind speed estimates that were 120 MPH or higher. The highest estimated wind speed were in the Cedar Rapids area where extensive damage to an apartment complex occurred with damage indicating winds about 140 MPH. A radio transmission tower also collapsed with wind speed estimated at 130 MPH. These estimates were determined based off damage reports and photos submitted through social media as well as a damage survey. The peak thunderstorm wind gust measured at the Cedar Rapids airport ASOS before it lost power was 68 MPH. The duration of strong winds caused extensive damaged most if not all trees, crops, and structures in their path. Due to the widespread damage, long duration power outages occurred. One fatality occurred here when...
- TornadoEF4, 24.86 mi path, 900 yd wide03/06/2022
Macksburg, Madison County
6 deaths, 5 injured, $75M damage
What happened
This is the first segment of this devastating tornado which passed through four counties including Madison, Warren, Polk and Jasper. The tornado began northwest of Macksburg in western Madision county. The tornado remained in mostly rural cropland and wooded areas of western Madison county. The tornado passed through Pammel State Park southwest of Winterset producing extensive tree damage as the tornado continued to widen into a wedge tornado. Upon exiting the park, the tornado travelled along Carver Road. Several residential homes were extensively damaged or destroyed along Carver Road and six deaths occurred along this stretch of road. The tornado was at peak intensity at this time with EF4 damage occurring west of the intersection of Carver Road and Highway 169 with a house completely destoyed and removed from the foundation. After departing the Carver Road corridor, the tornado progressed just southeast of Winterset and eventually passed east of town and crossing State Highway 92. Damage in these areas was primarily to trees and outbuildings although a few homes were also impacted with mostly EF1 to EF2 damage. From Highway 92 to where the tornado exited the...
- TornadoEF3, 5.11 mi path, 800 yd wide07/19/2018
Pella, Marion County
13 injured, $120M damage
What happened
Tornado developed about 3 miles north of Pella and moved southeast for its entire length. The tornado initially remained in rural areas just north and northeast of the town producing crop, tree and minor structural damage to houses. The tornado began to intensify just northeast of town and shifted a house off of its foundation. The tornado then encountered the Vermeer facility on the east side of town producing EF3 damage to one of the large buildings along with tossing numerous cars about the facility. 13 injuries occurred at the Vermeer facility with 6 requiring transport to the hospital. The tornado then turned slightly eastward before passing into Mahaska county.
- TornadoEF4, 15.74 mi path, 1,100 yd wide05/21/2024
Fisk, Adair County
4 deaths, 35 injured, $30M damage
What happened
This large and violent tornado entered into south central Adair County from Adams County. The tornado remained a multi-vortex circulation as it moved into the county producing high end damage for much of its remaining path. The tornado encountered several houses in the vicinity of Fontanelle Road and 320th Street. Many of the structures received at least EF2 damage with one house north of the intersection receiving up to EF4 damage with a sufficiently anchored structure destroyed and slumped into a debris field nearby. Additional EF4 damage was noted at a farmstead on Jordan Avenue south of 280th Street with the house destroyed and trees chewed down to only the largest trucks and portions of the bark removed. The path then passed through another wind mill area with additional turbines collapsing west of Kent Avenue. The tornado then passed over Nodaway Park Ponds and entered the southwest side of Greenfield along SW 3rd Street. Several structures over the next several blocks had up to EF4 damage from SW 3rd Street over the SE 3rd Street and South of Linn Street and north of Oak and Noble Streets. Most of these saw complete destruction of the house with much of the...
- Flood04/01/2019
Bartlett, Fremont County
$100M damage
What happened
Flooding continued on the Missouri River due to snow melt in the Dakotas and over the Northern Rockies, a few episodes of rain, and increased discharges from dams on the Missouri River over the Dakotas. In addition flooding continued due to levee breaks on the river. Towns that continued to have flooding included Bartlett, McPaul, Thurman, Percival and Hamburg. Interstate 29 remained closed with water over the road through much of the county. Iowa Highway 2 was also under water and suffered extreme damage. Businesses just west of Interstate 29 on Highway 2 were also under water.
Hurricanes and tropical storms
Storms whose track crossed the state, newest first
- Tropical Storm Cristobal (2020)06/02/2020 · Landfall: LA · 982 mbTropical storm58 mph peak
- Unnamed storm (1900)08/27/1900 · Landfall: TX · 936 mbCategory 4144 mph peak
Flood insurance
National Flood Insurance Program policies and claims
6,602 homes in Iowa have flood insurance, about 0.5% of residential buildings. In high-risk flood zones, 4,307 of 30,404 homes (14%) are insured.
- Storm$76.73M · 1,597 claims
- Midwest Flooding$22.12M · 1,381 claims
- March 2019 Midwest Flooding$17.55M · 315 claims
- June Midwest Flooding$11.09M · 159 claims
- Late spring storms$9.93M · 338 claims
- Flooding$7.36M · 694 claims
Drinking water
1,082 community water systems serve about 3,043,606 people
Since 2021, 53 systems reported 152 health-based violations. 77 systems had a violation of any kind still open at last report. These had the most:
- Mcbride Pointe Third Master MaintenanceServes 25 · Groundwater · Private19 health violations+8 monitoring or reporting
- Grinnell Water DepartmentServes 9,564 · Groundwater · Local government14 health violations+5 monitoring or reporting
- Mallard Water SupplyServes 257 · Purchased groundwater · Local government9 health violations+3 monitoring or reporting
- Iowa Valley EstatesServes 46 · Groundwater · Private9 health violations
- Lanesboro Water WorksServes 119 · Purchased groundwater · Local government7 health violations+2 monitoring or reporting
- Dawson Water WorksServes 116 · Groundwater · Local government7 health violations+9 monitoring or reporting
- Kesslers Homeowners AssnServes 60 · Groundwater · Private7 health violations+1 monitoring or reporting
- Hastings Water SupplyServes 152 · Groundwater · Local government6 health violations+3 monitoring or reporting
Select a county above to see every system that serves it.
Climate in the largest cities
1991-2020 normals from the nearest NOAA weather station
| City | July high | Jan low | Rain | Snow |
|---|---|---|---|---|
| Des Moines | 86°F | 14°F | 36.5 in | 36.5 in |
| Cedar Rapids | 83°F | 11°F | 35.9 in | - |
| Davenport | 84°F | 13°F | 38.8 in | - |
| Sioux City | 86°F | 9°F | 30.3 in | - |
| Iowa City | 86°F | 15°F | 35.7 in | - |
| Ankeny | 86°F | 12°F | 37.1 in | 24.7 in |
| Ames | 84°F | 11°F | 35.9 in | - |
| Waterloo | 85°F | 11°F | 36.3 in | 39.1 in |
Pollution sites
25 Superfund sites and 463 toxic release facilities
Superfund sites
- Des Moines TCEFinal NPL Site, Des Moines
- Fairfield Coal Gasification PlantFinal NPL Site, Fairfield
- Highway 3 PCEFinal NPL Site, Le Mars
- Iowa Army Ammunition PlantFinal NPL Site, Middletown
- Lawrence Todtz FarmFinal NPL Site, Camanche
- Lot 46 Valley Gardens TCEFinal NPL Site, Des Moines
- Mason City Coal Gasification PlantFinal NPL Site, Mason City
- Midwest Manufacturing/North FarmFinal NPL Site, Kellogg
Largest toxic releases
- Ssab Iowa Inc.3.1 million lbs, Muscatine
- Climax Molybdenum Co2.7 million lbs, Fort Madison
- CF Industries Nitrogen Llc-Port Neal Nitrogen Complex2.4 million lbs, Sergeant Bluff
- ADM Corn Processing2.1 million lbs, Clinton
- Equistar Chemicals Clinton Plant2.0 million lbs, Clinton
- Tyson Fresh Meats Inc-Louisa County1.6 million lbs, Columbus Junction
- ADM Corn Processing1.4 million lbs, Cedar Rapids
- Midamerican Energy Co Walter Scott Jr Energy Center1.4 million lbs, Council Bluffs
Facilities in Iowa reported 34.8 million lbs of toxic releases in 2024, 18.4 million lbs of it into the air.
Frequently asked questions
- What is the biggest natural hazard in Iowa?
- By expected annual loss, tornado costs the most in Iowa ($354M a year), according to FEMA's National Risk Index.
- How many storms hit Iowa each year?
- NOAA recorded 61,957 storm events in Iowa since 1996, about 1,999 a year. The most common type is thunderstorm wind.
- How many homes in Iowa have flood insurance?
- 6,602 residential flood insurance policies are in force in Iowa. Since 1978 the National Flood Insurance Program has paid $357M on 14,688 claims here.
- How many Superfund sites are in Iowa?
- Iowa has 25 Superfund sites on or deleted from EPA's National Priorities List.
Source: FEMA, NOAA, EPA · Last updated 08/01/2026 · Storm counts include events in forecast zones that touch each county. This product uses the FEMA OpenFEMA API, but is not endorsed by FEMA.