On the map: every storm report logged this day.
On the map
Storm reports for April 17, 2004
On April 17, 2004, 140 hail, 20 damaging-wind and 2 tornado reports were logged across 8 states.
FreeNo accountNo phone numberWe don’t keep the address
· As you type, the text is sent to Google to suggest addresses.IndependentNot affiliated with NOAA or the National Weather Service. Source: NOAA Storm Prediction Center storm reports. Data through November 6, 2026. Methodology
← Apr 16, 2004 All 2004 storm days · April 2004 Apr 18, 2004 →
On April 17, 2004, 140 hail, 20 damaging-wind and 2 tornado reports were logged across 8 states. The largest hail reported was 2.75″ (baseball size) in Palo Alto County, IA.
Storm day runs 7 a.m. to 7 a.m. Eastern (12:00–12:00 UTC), the convention the Storm Prediction Center uses. Radar hail estimates start October 2019.
Storm reports by state
| State | Hail | Wind | Tornado | Largest hail |
|---|---|---|---|---|
| MN | 39 | 4 | 0 | 2.75″ |
| IA | 33 | 3 | 1 | 2.75″ |
| WI | 24 | 9 | 0 | 2.75″ |
| OH | 29 | 1 | 0 | 1.75″ |
| SD | 11 | 0 | 0 | 1.75″ |
| MI | 3 | 3 | 0 | 1.75″ |
| IN | 1 | 0 | 0 | 0.75″ |
| OR | 0 | 0 | 1 | – |
Cities with hail reported within 5 miles
| City | Population | Largest report |
|---|---|---|
| Lonsdale, MN | 5,066 | 2.50″ |
| New Hampton, IA | 3,433 | 2.50″ |
| Farmington, MN | 24,464 | 2.00″ |
| Waukon, IA | 3,799 | 2.00″ |
| Empire, MN | 3,068 | 2.00″ |
| Ravenna, OH | 11,236 | 1.75″ |
| Rice Lake, WI | 8,971 | 1.75″ |
| Charles City, IA | 7,081 | 1.50″ |
| Mansfield, OH | 47,593 | 1.25″ |
| Faribault, MN | 24,983 | 1.25″ |
| Ontario, OH | 6,648 | 1.25″ |
| Akron, OH | 189,664 | 1.00″ |
| La Crosse, WI | 51,049 | 1.00″ |
| Stow, OH | 34,101 | 1.00″ |
| Kent, OH | 27,720 | 1.00″ |
| Northfield, MN | 21,316 | 1.00″ |
| Ashland, OH | 18,770 | 1.00″ |
| Tallmadge, OH | 18,412 | 1.00″ |
| River Falls, WI | 17,802 | 1.00″ |
| Tiffin, OH | 17,729 | 1.00″ |
| Norwalk, OH | 17,172 | 1.00″ |
| Chippewa Falls, WI | 15,075 | 1.00″ |
| Fairmont, MN | 10,176 | 1.00″ |
| Stewartville, MN | 6,919 | 1.00″ |
| La Crescent, MN | 5,257 | 1.00″ |
Hail reports (140)
| Time (UTC) | Size | Location |
|---|---|---|
| 03:15 | 2.75″ | Palo Alto County, IA |
| 04:11 | 2.75″ | Clark County, WI |
| 06:20 | 2.75″ | Lincoln County, MN |
| 04:15 | 2.50″ | Chickasaw County, IA |
| 05:25 | 2.50″ | Rice County, MN |
| 03:00 | 2.00″ | Palo Alto County, IA |
| 03:10 | 2.00″ | Palo Alto County, IA |
| 03:10 | 2.00″ | Allamakee County, IA |
| 03:30 | 2.00″ | Fillmore County, MN |
| 06:00 | 2.00″ | Dakota County, MN |
| 06:06 | 2.00″ | Pipestone County, MN |
| 22:56 | 1.75″ | Portage County, OH |
| 03:15 | 1.75″ | Palo Alto County, IA |
| 03:28 | 1.75″ | Winnebago County, IA |
| 03:51 | 1.75″ | Chickasaw County, IA |
| 04:50 | 1.75″ | Dodge County, MN |
| 05:00 | 1.75″ | Minnehaha County, SD |
| 05:24 | 1.75″ | Brookings County, SD |
| 05:33 | 1.75″ | Lincoln County, MN |
| 05:53 | 1.75″ | Moody County, SD |
| 06:00 | 1.75″ | Moody County, SD |
| 06:02 | 1.75″ | Dakota County, MN |
| 06:44 | 1.75″ | Lyon County, MN |
| 06:52 | 1.75″ | Barron County, WI |
| 07:08 | 1.75″ | Pepin County, WI |
| 07:45 | 1.75″ | Pepin County, WI |
| 10:28 | 1.75″ | Huron County, MI |
| 11:50 | 1.75″ | Vilas County, WI |
| 03:32 | 1.50″ | Floyd County, IA |
| 04:05 | 1.50″ | Worth County, IA |
| 07:24 | 1.50″ | Pine County, MN |
| 07:46 | 1.50″ | St. Croix County, WI |
| 00:30 | 1.25″ | Richland County, OH |
| 01:37 | 1.25″ | Winnebago County, IA |
| 02:31 | 1.25″ | Worth County, IA |
| 02:54 | 1.25″ | Cerro Gordo County, IA |
| 04:53 | 1.25″ | Rice County, MN |
| 21:49 | 1.00″ | Summit County, OH |
| 21:54 | 1.00″ | Summit County, OH |
| 21:57 | 1.00″ | Huron County, OH |
| 22:00 | 1.00″ | Erie County, OH |
| 22:22 | 1.00″ | Seneca County, OH |
| 23:25 | 1.00″ | Seneca County, OH |
| 23:35 | 1.00″ | Ashland County, OH |
| 23:37 | 1.00″ | Ashland County, OH |
| 23:55 | 1.00″ | Ashland County, OH |
| 00:21 | 1.00″ | Stark County, OH |
| 00:22 | 1.00″ | Columbiana County, OH |
| 00:38 | 1.00″ | Ashland County, OH |
| 01:15 | 1.00″ | Martin County, MN |
| 01:24 | 1.00″ | Holmes County, OH |
| 02:09 | 1.00″ | Worth County, IA |
| 02:23 | 1.00″ | Worth County, IA |
| 02:27 | 1.00″ | La Crosse County, WI |
| 02:57 | 1.00″ | Mower County, MN |
| 03:01 | 1.00″ | Pocahontas County, IA |
| 03:01 | 1.00″ | Olmsted County, MN |
| 03:05 | 1.00″ | Allamakee County, IA |
| 03:06 | 1.00″ | Palo Alto County, IA |
| 03:14 | 1.00″ | Kossuth County, IA |
| 03:15 | 1.00″ | Fillmore County, MN |
| 03:35 | 1.00″ | Fillmore County, MN |
| 04:22 | 1.00″ | McCook County, SD |
| 04:44 | 1.00″ | Chippewa County, WI |
| 05:03 | 1.00″ | Grant County, WI |
| 05:25 | 1.00″ | Moody County, SD |
| 05:27 | 1.00″ | Rice County, MN |
| 05:55 | 1.00″ | Moody County, SD |
| 06:03 | 1.00″ | Goodhue County, MN |
| 06:55 | 1.00″ | Pierce County, WI |
| 07:05 | 1.00″ | St. Croix County, WI |
| 09:45 | 1.00″ | Ottawa County, MI |
| 09:58 | 1.00″ | Sawyer County, WI |
| 11:30 | 1.00″ | Morrison County, MN |
| 11:45 | 1.00″ | Vilas County, WI |
| 00:25 | 0.88″ | Crawford County, OH |
| 01:50 | 0.88″ | Dodge County, MN |
| 02:06 | 0.88″ | Winnebago County, IA |
| 02:35 | 0.88″ | Worth County, IA |
| 02:40 | 0.88″ | Olmsted County, MN |
| 02:40 | 0.88″ | Olmsted County, MN |
| 02:40 | 0.88″ | Olmsted County, MN |
| 02:50 | 0.88″ | Worth County, IA |
| 02:58 | 0.88″ | Kossuth County, IA |
| 03:00 | 0.88″ | Palo Alto County, IA |
| 03:00 | 0.88″ | Olmsted County, MN |
| 03:01 | 0.88″ | Kossuth County, IA |
| 04:11 | 0.88″ | Monroe County, WI |
| 04:20 | 0.88″ | Mitchell County, IA |
| 04:45 | 0.88″ | Juneau County, WI |
| 05:25 | 0.88″ | Rice County, MN |
| 05:33 | 0.88″ | Lincoln County, MN |
| 06:37 | 0.88″ | Lincoln County, MN |
| 07:15 | 0.88″ | Barron County, WI |
| 10:15 | 0.88″ | Huron County, MI |
| 21:07 | 0.75″ | Sandusky County, OH |
| 21:37 | 0.75″ | Seneca County, OH |
| 21:40 | 0.75″ | Erie County, OH |
| 21:50 | 0.75″ | Seneca County, OH |
| 22:30 | 0.75″ | Starke County, IN |
| 23:20 | 0.75″ | Huron County, OH |
| 23:25 | 0.75″ | Columbiana County, OH |
| 00:00 | 0.75″ | Stark County, OH |
| 00:15 | 0.75″ | Wayne County, OH |
| 00:35 | 0.75″ | Ashland County, OH |
| 00:51 | 0.75″ | Columbiana County, OH |
| 01:00 | 0.75″ | Ashland County, OH |
| 01:04 | 0.75″ | Kossuth County, IA |
| 01:15 | 0.75″ | Carroll County, OH |
| 01:20 | 0.75″ | Columbiana County, OH |
| 01:45 | 0.75″ | Faribault County, MN |
| 02:20 | 0.75″ | Faribault County, MN |
| 02:21 | 0.75″ | Dodge County, MN |
| 02:25 | 0.75″ | Dodge County, MN |
| 02:31 | 0.75″ | Worth County, IA |
| 02:40 | 0.75″ | Olmsted County, MN |
| 02:50 | 0.75″ | Pocahontas County, IA |
| 02:50 | 0.75″ | La Crosse County, WI |
| 02:56 | 0.75″ | Pocahontas County, IA |
| 03:00 | 0.75″ | Olmsted County, MN |
| 03:05 | 0.75″ | Floyd County, IA |
| 03:10 | 0.75″ | Monroe County, WI |
| 03:20 | 0.75″ | Olmsted County, MN |
| 03:32 | 0.75″ | Cerro Gordo County, IA |
| 03:55 | 0.75″ | Juneau County, WI |
| 04:40 | 0.75″ | Howard County, IA |
| 04:40 | 0.75″ | Richland County, WI |
| 04:45 | 0.75″ | Clark County, WI |
| 04:51 | 0.75″ | Marathon County, WI |
| 05:01 | 0.75″ | Lake County, SD |
| 05:02 | 0.75″ | Moody County, SD |
| 05:21 | 0.75″ | Lake County, SD |
| 05:51 | 0.75″ | Yellow Medicine County, MN |
| 06:00 | 0.75″ | Lincoln County, MN |
| 06:30 | 0.75″ | Goodhue County, MN |
| 06:35 | 0.75″ | Pierce County, WI |
| 07:20 | 0.75″ | Pine County, MN |
| 07:42 | 0.75″ | Dunn County, WI |
| 11:25 | 0.75″ | Roberts County, SD |
| 11:45 | 0.75″ | Mille Lacs County, MN |
Damage, injuries and deaths
National Weather Service offices recorded about $996,000 in property damage and $25,000 in crop damage from hail, thunderstorm wind and tornadoes across the US on this storm day (162 events in 8 states). Injuries and deaths are those the events caused directly.
| County | Events | Injuries | Deaths | Property damage |
|---|---|---|---|---|
| Fond du Lac County, WI | 1 | 0 | 0 | $250,000 |
| Portage County, OH | 1 | 0 | 0 | $150,000 |
| Lincoln County, MN | 1 | 0 | 0 | $100,000 |
| Green Lake County, WI | 1 | 0 | 0 | $100,000 |
| Winnebago County, IA | 5 | 0 | 0 | $92,000 |
| Huron County, OH | 1 | 0 | 0 | $75,000 |
| Palo Alto County, IA | 5 | 0 | 0 | $62,000 |
| Waukesha County, WI | 1 | 0 | 0 | $50,000 |
| Worth County, IA | 7 | 0 | 0 | $36,000 |
| Richland County, OH | 2 | 0 | 0 | $17,000 |
| Ottawa County, MI | 1 | 0 | 0 | $10,000 |
| Ashland County, OH | 4 | 0 | 0 | $9,000 |
What the National Weather Service wrote
- Portage County, OH (near Ravenna) · Hail 1.75″ · $150,000
“Hail from nickel to golf ball size was observed in the Ravenna area for several minutes. Many automobiles and homes sustained minor damage.” - Huron County, OH (near Monroeville) · Hail 1.00″ · $75,000
“Penny to quarter size hail was observed six miles west of Monroeville in Bellvue. Hail completely covered the ground at some locations on the east side of town. Many cars were damaged in this area.” - Richland County, OH (near Mansfield) · Thunderstorm wind 58 mph · $12,000
“Thunderstorm winds downed several trees and a utility pole.” - Ottawa County, MI (near West Olive) · Hail 1.00″ · $10,000
“An isolated severe thunderstorm produced one inch diameter hail in West Olive during the early morning hours of the 18th.” - Richland County, OH (near Mansfield) · Hail 1.25″ · $5,000
“Half dollar size hail was observed seven miles east of Mansfield.” - Ashland County, OH (near Perrysville) · Hail 1.00″ · $3,000
“Penny to quarter size hail was observed.”
Event narratives from NWS Storm Data, shortened. Up to six per day, chosen by deaths, injuries, damage and size.
Source: NOAA National Centers for Environmental Information (NCEI), Storm Events Database, as entered by National Weather Service offices; data through July 31, 2026. Damage is in dollars of the year, not adjusted for inflation.
Guides: What radar-estimated hail (MESH) is and isn't · Storm reports: preliminary vs final
Hail check for any US address
Every day since October 2019 that radar estimated hail near the address, free.
Guide: How to check if it hailed at your address · Free hail alerts by email · As you type, the text is sent to Google to suggest addresses.