On the map: every storm report logged this day.
On the map
Storm reports for July 28, 2002
On July 28, 2002, 99 hail, 200 damaging-wind and 7 tornado reports were logged across 18 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
← Jul 27, 2002 All 2002 storm days · July 2002 Jul 29, 2002 →
On July 28, 2002, 99 hail, 200 damaging-wind and 7 tornado reports were logged across 18 states. The largest hail reported was 4.50″ (softball size) in Kingsbury County, SD.
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 |
|---|---|---|---|---|
| KS | 16 | 36 | 0 | 1.00″ |
| MN | 27 | 18 | 1 | 2.75″ |
| SD | 17 | 12 | 3 | 4.50″ |
| IA | 13 | 19 | 0 | 1.25″ |
| PA | 1 | 21 | 1 | 0.75″ |
| OH | 0 | 22 | 0 | – |
| WI | 3 | 16 | 0 | 1.75″ |
| TX | 8 | 11 | 0 | 1.75″ |
| MO | 6 | 8 | 0 | 1.00″ |
| NY | 2 | 10 | 1 | 1.00″ |
| OK | 0 | 12 | 0 | – |
| MI | 1 | 6 | 1 | 1.75″ |
| IL | 2 | 3 | 0 | 1.75″ |
| CO | 2 | 3 | 0 | 0.88″ |
| NE | 1 | 0 | 0 | 1.00″ |
| TN | 0 | 1 | 0 | – |
| AL | 0 | 1 | 0 | – |
| MS | 0 | 1 | 0 | – |
Cities with hail reported within 5 miles
| City | Population | Largest report |
|---|---|---|
| Lake City, MN | 5,306 | 1.75″ |
| Dell Rapids, SD | 3,825 | 1.75″ |
| Romeo, MI | 3,758 | 1.75″ |
| Jamestown, NY | 27,699 | 1.00″ |
| Brookings, SD | 24,555 | 1.00″ |
| Red Wing, MN | 16,788 | 1.00″ |
| Elko New Market, MN | 5,193 | 1.00″ |
| Cannon Falls, MN | 4,201 | 1.00″ |
| Whitesboro, NY | 3,596 | 1.00″ |
| Lakewood, NY | 2,933 | 1.00″ |
| Le Center, MN | 2,528 | 1.00″ |
| San Angelo, TX | 100,159 | 0.88″ |
| Marion, IA | 42,542 | 0.88″ |
| Kirksville, MO | 17,841 | 0.88″ |
| Belle Plaine, MN | 7,444 | 0.88″ |
| Hiawatha, IA | 7,347 | 0.88″ |
| Estherville, IA | 5,796 | 0.88″ |
| Montgomery, MN | 3,537 | 0.88″ |
| Bloomington, IL | 79,232 | 0.75″ |
| Normal, IL | 53,304 | 0.75″ |
| Liberty, MO | 31,245 | 0.75″ |
| Aberdeen, SD | 27,919 | 0.75″ |
| Liberal, KS | 19,184 | 0.75″ |
| New Prague, MN | 8,235 | 0.75″ |
| Edinboro, PA | 5,814 | 0.75″ |
Hail reports (99)
| Time (UTC) | Size | Location |
|---|---|---|
| 18:40 | 4.50″ | Kingsbury County, SD |
| 18:45 | 2.75″ | Kingsbury County, SD |
| 20:19 | 2.75″ | Lyon County, MN |
| 20:23 | 2.75″ | Lincoln County, MN |
| 14:08 | 1.75″ | Peoria County, IL |
| 17:42 | 1.75″ | Macomb County, MI |
| 18:52 | 1.75″ | Kingsbury County, SD |
| 20:13 | 1.75″ | Lincoln County, MN |
| 20:25 | 1.75″ | Minnehaha County, SD |
| 20:28 | 1.75″ | Lyon County, MN |
| 20:55 | 1.75″ | Lyon County, MN |
| 20:58 | 1.75″ | Murray County, MN |
| 23:34 | 1.75″ | Pepin County, WI |
| 01:30 | 1.75″ | Taylor County, TX |
| 01:56 | 1.75″ | Taylor County, TX |
| 22:33 | 1.25″ | McLeod County, MN |
| 22:47 | 1.25″ | McLeod County, MN |
| 01:25 | 1.25″ | Marion County, IA |
| 14:25 | 1.00″ | Scotland County, MO |
| 18:45 | 1.00″ | Kingsbury County, SD |
| 19:30 | 1.00″ | Brookings County, SD |
| 20:05 | 1.00″ | Chautauqua County, NY |
| 21:14 | 1.00″ | Redwood County, MN |
| 21:15 | 1.00″ | Clay County, NE |
| 21:20 | 1.00″ | Le Sueur County, MN |
| 21:30 | 1.00″ | Trego County, KS |
| 21:30 | 1.00″ | Ness County, KS |
| 21:45 | 1.00″ | Brown County, MN |
| 22:15 | 1.00″ | Jewell County, KS |
| 22:17 | 1.00″ | Goodhue County, MN |
| 22:20 | 1.00″ | McLeod County, MN |
| 22:50 | 1.00″ | Goodhue County, MN |
| 23:00 | 1.00″ | Stanton County, KS |
| 23:00 | 1.00″ | Scott County, MN |
| 23:10 | 1.00″ | Oneida County, NY |
| 23:45 | 1.00″ | Goodhue County, MN |
| 00:04 | 1.00″ | Sherman County, TX |
| 00:17 | 1.00″ | Palo Alto County, IA |
| 00:22 | 1.00″ | Comanche County, KS |
| 00:33 | 1.00″ | Sherman County, TX |
| 01:38 | 1.00″ | Hamilton County, KS |
| 02:45 | 1.00″ | Franklin County, KS |
| 20:28 | 0.88″ | Moody County, SD |
| 21:04 | 0.88″ | Lyon County, MN |
| 21:18 | 0.88″ | Cottonwood County, MN |
| 21:37 | 0.88″ | Le Sueur County, MN |
| 21:40 | 0.88″ | Brown County, MN |
| 22:25 | 0.88″ | Scott County, MN |
| 22:30 | 0.88″ | Stanton County, KS |
| 22:45 | 0.88″ | Osceola County, IA |
| 23:25 | 0.88″ | Adair County, MO |
| 23:45 | 0.88″ | Sherman County, TX |
| 00:00 | 0.88″ | Emmet County, IA |
| 00:30 | 0.88″ | Buffalo County, WI |
| 00:30 | 0.88″ | Kiowa County, CO |
| 00:43 | 0.88″ | Tom Green County, TX |
| 01:45 | 0.88″ | Emmet County, IA |
| 01:54 | 0.88″ | Jasper County, IA |
| 03:07 | 0.88″ | Linn County, IA |
| 17:35 | 0.75″ | Beadle County, SD |
| 18:05 | 0.75″ | Kingsbury County, SD |
| 18:11 | 0.75″ | Kingsbury County, SD |
| 18:31 | 0.75″ | Kingsbury County, SD |
| 18:40 | 0.75″ | Sanborn County, SD |
| 18:58 | 0.75″ | Miner County, SD |
| 19:05 | 0.75″ | Brookings County, SD |
| 20:26 | 0.75″ | Pipestone County, MN |
| 20:30 | 0.75″ | McLean County, IL |
| 20:45 | 0.75″ | Murray County, MN |
| 20:45 | 0.75″ | Lyon County, MN |
| 21:25 | 0.75″ | Clay County, MO |
| 21:25 | 0.75″ | Erie County, PA |
| 21:35 | 0.75″ | Cottonwood County, MN |
| 21:40 | 0.75″ | Clinton County, MO |
| 21:40 | 0.75″ | Clay County, MO |
| 22:05 | 0.75″ | Russell County, KS |
| 22:08 | 0.75″ | Scott County, MN |
| 22:57 | 0.75″ | Dickinson County, IA |
| 23:10 | 0.75″ | Ellsworth County, KS |
| 23:20 | 0.75″ | Palo Alto County, IA |
| 23:20 | 0.75″ | Pepin County, WI |
| 23:30 | 0.75″ | Knox County, MO |
| 23:31 | 0.75″ | Dakota County, MN |
| 23:38 | 0.75″ | Ford County, KS |
| 00:15 | 0.75″ | Ford County, KS |
| 00:15 | 0.75″ | Emmet County, IA |
| 00:20 | 0.75″ | Tom Green County, TX |
| 00:40 | 0.75″ | Clark County, KS |
| 00:43 | 0.75″ | Kiowa County, KS |
| 00:44 | 0.75″ | Prowers County, CO |
| 01:00 | 0.75″ | Clay County, IA |
| 01:25 | 0.75″ | Clay County, IA |
| 01:32 | 0.75″ | McPherson County, SD |
| 01:50 | 0.75″ | Clay County, IA |
| 02:15 | 0.75″ | Taylor County, TX |
| 02:18 | 0.75″ | Edmunds County, SD |
| 02:30 | 0.75″ | Comanche County, KS |
| 02:30 | 0.75″ | Brown County, SD |
| 03:15 | 0.75″ | Seward County, KS |
Damage, injuries and deaths
National Weather Service offices recorded about $8.8 million in property damage, $2.6 million in crop damage and 4 injuries from hail, thunderstorm wind and tornadoes across the US on this storm day (306 events in 19 states). Injuries and deaths are those the events caused directly.
| County | Events | Injuries | Deaths | Property damage |
|---|---|---|---|---|
| Kingsbury County, SD | 5 | 2 | 0 | $1.3 million |
| Steuben County, NY | 1 | 2 | 0 | $2,000 |
| Brookings County, SD | 4 | 0 | 0 | $3.3 million |
| Onondaga County, NY | 2 | 0 | 0 | $3 million |
| Midland County, TX | 1 | 0 | 0 | $250,000 |
| Jewell County, KS | 3 | 0 | 0 | $175,000 |
| Lincoln County, MN | 1 | 0 | 0 | $100,000 |
| Lorain County, OH | 3 | 0 | 0 | $90,000 |
| Cuyahoga County, OH | 3 | 0 | 0 | $70,000 |
| Brown County, MN | 2 | 0 | 0 | $60,000 |
| Sedgwick County, KS | 1 | 0 | 0 | $50,000 |
| Chautauqua County, NY | 2 | 0 | 0 | $50,000 |
What the National Weather Service wrote
- Kingsbury County, SD (near Lake Preston) · Hail 2.75″ · $500,000 · 2 injuries
“Large hail broke windows, and heavily damaged vehicles and boats. Holes were punched by the hail in some of the boats. Two boaters on Lake Thompson were injured by the hail. One was taken to the hospital with a head injury, and the other suffered several welts on the back from hailstone hits.” - Steuben County, NY (near Hornell) · Thunderstorm wind 58 mph · $2,000 · 2 injuries
“Trees and wires were downed in Hornell and North Hornell. 600 customers lost electric power. Two people were injured from a falling tree branch in Hornell at the corner of Main and Collier Streets. The male victim suffered a shoulder injury while the female victim suffered head and neck injuries.” - Brookings County, SD (near Sinai) · Thunderstorm wind 90 mph · $3 million
“Thunderstorm winds caused widespread structural, tree, and power line damage in and near Sinai. The roof was ripped off a mobile home, a well drilling business was destroyed, the siding from another business was ripped off, part of a grain elevator was smashed, several garages were destroyed or…” - Onondaga County, NY (near Mottville) · Tornado F1 · $2 million
“The tornado touched down briefly in the hamlet of Mottville which is in the town of Skaneateles. The tornado's path length was approximately 100 yards and its width was approximately 50 yards. A trailer home was destroyed in the center of Mottville.” - Onondaga County, NY (near Skaneateles) · Thunderstorm wind 69 mph · $1 million
“Thunderstorms winds downed numerous trees and wires from Skaneateles through Marcellus, Marietta, and Amber to Otisco. The worst damage was in the village of Skaneateles. In the village an antique boat show was wrapping up. The wind overturned many sailboats on the lake.” - Kingsbury County, SD (near Oldham) · Hail 1.75″ · $500,000
“Large hail broke numerous windows in buildings and vehicles in Oldham and rural areas nearby, and caused other damage to vehicles. The hail also caused or along with severe winds contributed to widespread crop damage in the area, with some crops totally destroyed.”
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.