On the map: every storm report logged this day.
On the map
Storm reports for June 23, 2004
On June 23, 2004, 90 hail, 127 damaging-wind and 24 tornado reports were logged across 15 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
← Jun 22, 2004 All 2004 storm days · June 2004 Jun 24, 2004 →
On June 23, 2004, 90 hail, 127 damaging-wind and 24 tornado reports were logged across 15 states. The largest hail reported was 3.00″ (teacup size) in Ozaukee County, WI. Tornadoes killed 1.
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 |
|---|---|---|---|---|
| WI | 40 | 42 | 17 | 3.00″ |
| MN | 13 | 24 | 0 | 1.00″ |
| NC | 3 | 13 | 3 | 1.00″ |
| SC | 0 | 18 | 0 | – |
| ND | 14 | 1 | 2 | 1.50″ |
| GA | 0 | 17 | 0 | – |
| MI | 11 | 4 | 0 | 1.00″ |
| MT | 6 | 3 | 0 | 1.50″ |
| TX | 0 | 1 | 1 | – |
| MS | 0 | 2 | 0 | – |
| AL | 0 | 2 | 0 | – |
| IA | 1 | 0 | 0 | 0.88″ |
| SD | 1 | 0 | 0 | 0.75″ |
| IL | 1 | 0 | 0 | 0.75″ |
| OR | 0 | 0 | 1 | – |
Cities with hail reported within 5 miles
| City | Population | Largest report |
|---|---|---|
| Mequon, WI | 25,329 | 3.00″ |
| Cedarburg, WI | 13,011 | 3.00″ |
| Brown Deer, WI | 12,527 | 3.00″ |
| Thiensville, WI | 3,299 | 3.00″ |
| Fort Atkinson, WI | 12,377 | 1.75″ |
| Waupun, WI | 11,131 | 1.75″ |
| Racine, WI | 78,057 | 1.00″ |
| Greenfield, WI | 37,232 | 1.00″ |
| Franklin, WI | 36,591 | 1.00″ |
| West Bend, WI | 32,149 | 1.00″ |
| Greendale, WI | 14,455 | 1.00″ |
| Plover, WI | 14,208 | 1.00″ |
| Hales Corners, WI | 7,766 | 1.00″ |
| Newaygo, MI | 2,556 | 1.00″ |
| Flint, MI | 79,735 | 0.88″ |
| Burton, MI | 29,420 | 0.88″ |
| Mount Pleasant, WI | 28,184 | 0.88″ |
| Mount Morris, MI | 3,095 | 0.88″ |
| Mondovi, WI | 2,870 | 0.88″ |
| Ithaca, MI | 2,813 | 0.88″ |
| Madison, WI | 285,300 | 0.75″ |
| Grand Forks, ND | 59,845 | 0.75″ |
| Maplewood, MN | 40,142 | 0.75″ |
| Muskegon, MI | 37,287 | 0.75″ |
| Roseville, MN | 35,637 | 0.75″ |
Hail reports (90)
| Time (UTC) | Size | Location |
|---|---|---|
| 02:59 | 3.00″ | Ozaukee County, WI |
| 00:23 | 2.00″ | Juneau County, WI |
| 00:33 | 1.75″ | Adams County, WI |
| 01:05 | 1.75″ | Marquette County, WI |
| 01:30 | 1.75″ | Green Lake County, WI |
| 01:40 | 1.75″ | Fond du Lac County, WI |
| 01:45 | 1.75″ | Dodge County, WI |
| 02:21 | 1.75″ | Jefferson County, WI |
| 15:53 | 1.50″ | Grand Forks County, ND |
| 22:10 | 1.50″ | Glacier County, MT |
| 15:40 | 1.00″ | Grand Forks County, ND |
| 17:15 | 1.00″ | Norman County, MN |
| 19:25 | 1.00″ | Caswell County, NC |
| 21:25 | 1.00″ | Milwaukee County, WI |
| 23:20 | 1.00″ | Trempealeau County, WI |
| 00:31 | 1.00″ | Juneau County, WI |
| 00:40 | 1.00″ | Portage County, WI |
| 01:30 | 1.00″ | Saginaw County, MI |
| 02:19 | 1.00″ | Washington County, WI |
| 03:08 | 1.00″ | Racine County, WI |
| 03:48 | 1.00″ | Newaygo County, MI |
| 17:50 | 0.88″ | Becker County, MN |
| 21:51 | 0.88″ | Gates County, NC |
| 22:05 | 0.88″ | Racine County, WI |
| 22:05 | 0.88″ | Racine County, WI |
| 22:48 | 0.88″ | Fillmore County, MN |
| 22:52 | 0.88″ | Buffalo County, WI |
| 23:21 | 0.88″ | Jackson County, WI |
| 23:25 | 0.88″ | Houston County, MN |
| 23:28 | 0.88″ | Allamakee County, IA |
| 00:00 | 0.88″ | Redwood County, MN |
| 00:10 | 0.88″ | Richland County, WI |
| 00:48 | 0.88″ | Gratiot County, MI |
| 02:04 | 0.88″ | Genesee County, MI |
| 02:10 | 0.88″ | Genesee County, MI |
| 02:15 | 0.88″ | Jefferson County, WI |
| 14:30 | 0.75″ | Walsh County, ND |
| 14:45 | 0.75″ | Walsh County, ND |
| 14:57 | 0.75″ | Nelson County, ND |
| 15:10 | 0.75″ | Walsh County, ND |
| 15:40 | 0.75″ | Grand Forks County, ND |
| 15:50 | 0.75″ | Grand Forks County, ND |
| 16:05 | 0.75″ | Steele County, ND |
| 16:05 | 0.75″ | Steele County, ND |
| 16:10 | 0.75″ | Grand Forks County, ND |
| 16:12 | 0.75″ | Grand Forks County, ND |
| 16:30 | 0.75″ | Traill County, ND |
| 16:55 | 0.75″ | Traill County, ND |
| 17:08 | 0.75″ | Polk County, MN |
| 17:14 | 0.75″ | Norman County, MN |
| 17:30 | 0.75″ | Norman County, MN |
| 18:40 | 0.75″ | Traverse County, MN |
| 18:50 | 0.75″ | Marshall County, SD |
| 19:09 | 0.75″ | Stearns County, MN |
| 19:47 | 0.75″ | Warren County, NC |
| 20:20 | 0.75″ | Stearns County, MN |
| 21:20 | 0.75″ | Ramsey County, MN |
| 21:50 | 0.75″ | Racine County, WI |
| 22:19 | 0.75″ | Winona County, MN |
| 22:45 | 0.75″ | McHenry County, IL |
| 22:53 | 0.75″ | Eau Claire County, WI |
| 23:11 | 0.75″ | Muskegon County, MI |
| 23:15 | 0.75″ | Trempealeau County, WI |
| 23:23 | 0.75″ | Jackson County, WI |
| 23:30 | 0.75″ | Muskegon County, MI |
| 23:30 | 0.75″ | Jackson County, WI |
| 23:35 | 0.75″ | Vernon County, WI |
| 23:45 | 0.75″ | Monroe County, WI |
| 23:47 | 0.75″ | Clark County, WI |
| 23:47 | 0.75″ | Jackson County, WI |
| 23:49 | 0.75″ | Clark County, WI |
| 23:50 | 0.75″ | Clark County, WI |
| 23:58 | 0.75″ | Crawford County, WI |
| 00:00 | 0.75″ | Monroe County, WI |
| 00:20 | 0.75″ | Wood County, WI |
| 00:20 | 0.75″ | Meagher County, MT |
| 00:27 | 0.75″ | Meagher County, MT |
| 01:17 | 0.75″ | Saginaw County, MI |
| 01:30 | 0.75″ | Dane County, WI |
| 01:40 | 0.75″ | Shiawassee County, MI |
| 01:42 | 0.75″ | Fond du Lac County, WI |
| 01:45 | 0.75″ | Dane County, WI |
| 01:55 | 0.75″ | Genesee County, MI |
| 02:01 | 0.75″ | Jefferson County, WI |
| 02:28 | 0.75″ | Ozaukee County, WI |
| 02:30 | 0.75″ | Glacier County, MT |
| 02:35 | 0.75″ | Milwaukee County, WI |
| 02:35 | 0.75″ | Lapeer County, MI |
| 02:50 | 0.75″ | Cascade County, MT |
| 03:45 | 0.75″ | Cascade County, MT |
Damage, injuries and deaths
National Weather Service offices recorded about $29.1 million in property damage, $3.1 million in crop damage, 23 injuries and 1 death from hail, thunderstorm wind and tornadoes across the US on this storm day (250 events in 15 states). Injuries and deaths are those the events caused directly.
| County | Events | Injuries | Deaths | Property damage |
|---|---|---|---|---|
| Green Lake County, WI | 3 | 1 | 1 | $2.1 million |
| Adams County, WI | 4 | 18 | 0 | $162,000 |
| Monroe County, WI | 3 | 3 | 0 | $77,000 |
| Wood County, WI | 1 | 1 | 0 | – |
| Dodge County, WI | 3 | 0 | 0 | $8 million |
| Fond du Lac County, WI | 4 | 0 | 0 | $7.7 million |
| Outagamie County, WI | 1 | 0 | 0 | $6.8 million |
| Dane County, WI | 3 | 0 | 0 | $1.5 million |
| Marquette County, WI | 2 | 0 | 0 | $1 million |
| Waupaca County, WI | 1 | 0 | 0 | $915,000 |
| Portage County, WI | 1 | 0 | 0 | $200,000 |
| Jefferson County, WI | 2 | 0 | 0 | $160,000 |
What the National Weather Service wrote
- Green Lake County, WI (near Markesan) · Tornado F3 · $675,000 · 1 death · 1 injury
“A strong tornado spun up about a mile directly east of Lake Maria in southeastern Green Lake County, or about 4.2 miles SSE of Markesan, moved east along Sunny Drive with F3 strength (estimated 175-200), and exited Green Lake County along Mielke Rd., or about 6.8 miles SE of Markesan.” - Dodge County, WI (near Waupun) · Tornado F3 · $8 million
“This tornado was a continuation of the tornado that moved east-southeast from Markesan (Green Lake Co.) through the southwest corner of Fond du Lac County (civil Town of Alto).” - Fond du Lac County, WI (near Alto) · Tornado F3 · $6 million
“This tornado was a continuation of the tornado that moved through the southern part of the city of Markesan (Green Lake Co.). It entered Fond du Lac County just south of Lake Maria Road, about 4.7 miles SW of Alto.” - Fond du Lac County, WI (near Alto) · Tornado F3 · $1.6 million
“This tornado was a continuation of the tornado that moved east from the Lake Maria area of extreme southeastern Green Lake County. It maintained its F3 strength (175-200 mph) and moved east along Marshview Rd, only to merge with the F3 tornado moving east/southeast out of the Markesan area of…” - Dane County, WI (near Middleton) · Tornado F1 · $1.5 million
“A weak F1 tornado (100-110 mph) spun up just west of the southwest Beltline at a point 2.5 miles SW of Middleton (half-mile north of intersection of CTH S and Pleasant View Rd.).” - Green Lake County, WI (near Manchester) · Tornado F3 · $1.4 million
“A strong tornado spun up near the intersection of STH 73 and CTH H, about 2 miles north of the village of Manchester. It increased its strength to F3 (estimated 175-200 mph) as it moved southeast across the southern part of the city of Markesan. Numerous trees were uprooted.”
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.