Minnesota, 2025

Flash Flooding and Hail in Minnesota, July 27, 2025

July 27, 2025 · NWS MPX · 32 events in 12 counties and zones

A mid-level wave embedded in the eastern periphery of a developing ridge produced two periods of severe thunderstorms across much of west-central and central MN on Sunday, July 27th. Westerly flow advected in an extremely unstable airmass with favorable amounts of wind shear to support rotating updrafts.

Where it happened

Every event with a place to put it. Tap one for its entry below.

  • Tornadoes
  • Tropical storms and surge
  • Floods
  • Wind
  • Hail
  • Winter weather
  • Heat and drought
  • Cold
  • Fire, smoke and dust
  • Marine and coastal
  • Other

Open the live radar over this ground

The toll

Deaths
0
Injuries
0
Property damage
None recorded
Crop damage
None recorded
Events
32

Deaths and injuries are direct and indirect together, as the offices filed them. Damage is property and crops in the dollars of the year, not adjusted for inflation, and only where an office estimated it.

What happened

The episode as NWS MPX wrote it up.

A mid-level wave embedded in the eastern periphery of a developing ridge produced two periods of severe thunderstorms across much of west-central and central MN on Sunday, July 27th. Westerly flow advected in an extremely unstable airmass with favorable amounts of wind shear to support rotating updrafts. Late morning convection occurred across western MN producing quarter size hail and damaging wind gusts across Lac qui Parle and Chippewa Counties.

The second round of thunderstorms developed over western MN and grew into multi-cellular clusters becoming more widespread through the course of the afternoon. These storms also produced torrential rainfall over a short period of time, leading to several roadways being flooded or washed out in Stevens Co near Chokio and Alberta. There was also urban flooding along Hwy 36 and residential areas in Roseville in Ramsey Co. Rainfall rates in these areas exceeded 3 to 4 inches per hour.

Mainly quarter to half-dollar size hail was reported across western MN. The largest hail reports were focused near the Twin Cities metro with quarter size to golf ball size reported by trained spotters. The golf ball size hail fell in Plymouth (Hennepin Co) and one mile southeast of Falcon Heights (Ramsey). As for damaging winds, most severe wind reports measured between 60 to 70 mph. The strongest estimated wind gusts were about 64 knots or 74 mph, which buckled grain bins near Sanburg (Kandiyohi Co) and damaged power poles.

What forecasters said that day

The local office's own words before the first event, as it sent them, from the Iowa Environmental Mesonet's archive of National Weather Service text.

NWS Twin Cities, MN wrote its last area forecast discussion before the first event at Jul 27, 4:58 AM CST, 6 hours 5 minutes earlier. Its key messages:

  • Heat and humidity intensify Sunday with highs in the upper 80s to mid 90s and heat indices in the upper 90s to mid 100s.
  • Unsettled weather resumes late Sunday and lasts through early next week. Severe storms are possible Sunday night and heavy rainfall is possible Monday night.
  • Cooler and drier conditions later next week.
Area forecast discussion, Jul 27, 4:58 AM CST, 6 hours 5 minutes before
Area Forecast Discussion
National Weather Service Twin Cities/Chanhassen MN
558 AM CDT Sun Jul 27 2025

.KEY MESSAGES...

- Heat and humidity intensify Sunday with highs in the upper
  80s to mid 90s and heat indices in the upper 90s to mid 100s.

- Unsettled weather resumes late Sunday and lasts through early
  next week. Severe storms are possible Sunday night and heavy
  rainfall is possible Monday night.

- Cooler and drier conditions later next week.

&&

.DISCUSSION...
Issued at 413 AM CDT Sun Jul 27 2025

Ridging will continue to build in from the west through the course
of today. A few pre-dawn storms are possible this morning as a mid-
level wave embedded within this ridge has already initiated
some convection over the eastern Dakotas and northwestern MN.
The most concentrated region of storm coverage this morning
should remain across northern MN although, there is a slight
chance that some of that convection reaches portions of west-
central MN.

As they say in the south, "its not the heat, its the humidity!" That
holds true for our forecast today which is why heat headlines exist
for all of central and southern MN and western WI. Typical warm
areas across western MN could make a run at the upper 90s should the
+30C h925 temps verify but as of now opt'd to run with NBM output in
the mid 90s. Areas elsewhere can expect highs at or about 90. The
driver for this extreme heat event are the widespread low to mid 70
dew points which in turn force heat indices this afternoon. Areas in
eastern MN and the St. Croix River Valley can expect a heat index at
our just above 100 degrees whereas 100 to 105 across western MN. Max
WBGTs will reach the upper 80s for most areas. Try and keep cool if
you can by ensuring to stay hydrated, wear light clothing, and limit
time outdoors. Also, suspended wildfire smoke will alert its
way eastward as it accompanies the ridge but some good news is
that it looks to be remain prevalent aloft. Thus surface
impacts to air quality look to remain null today.

As we this evening into the overnight hours, convection still looks
to be a favorable possibility. Flow aloft becomes westerly and
increases to about 40kts. Extreme instability of +3000 J/kg SBCAPE
will be in place. Residual boundaries that remain from the ongoing
convection across NW MN this morning will aid in parcel ascent and
ultimately drive CI again this afternoon along and north of the
I-94 corridor in western MN. Multi-cell lines are expected to
congeal into a SSE progressing QLCS which will provide primarily
a damaging wind threat, but with steep lapse rates of 8C, large
hail will also be possible. Lastly with 45 to 50kt effective
shear, a tornado or two also cannot be ruled out.

Sunday night's convection will setup the stage for Monday's
convective environment. A boundary will exist somewhere likely
over southern MN into WI and is progged to lift northward.
Tropical like PWATs exceeding +2" with a continuing unstable
airmass, and strengthening LLJ, additional CI is possible with
storms capable of producing heavy rainfall. The SPC has upgraded
portions of western MN to a slight risk of severe
thunderstorms. Forecast guidance still is trying to work out
where potential training storms could drop the highest QPF.
HREF 24-hr PMM through Monday evening favors areas across
eastern- central MN down to southeastern MN seeing potentially 3
to 4" of storm total rainfall. As for temperatures Monday,
things still remain hot and humid but not as impactful as
Sunday's heat threat. This heat will be dependent on any
existing convective contamination which would limit heating
potential.

As for Tuesday, the threat for thunderstorms will be focused along
N/IA border. As of now the SPC has maintained a marginal risk for
severe thunderstorms in that region given a frontal boundary is
forecast to pass through that area. Confidence remains low for exact
location impacts as there are a few spatial inconsistencies within
forecast guidance. Therefore, maintained lower mention of PoPs
Tuesday.

Cooler and drier air will follow for the rest of the week with
surface high pressure building in.

&&

.AVIATION /12Z TAFS THROUGH 12Z MONDAY/...
Issued at 558 AM CDT Sun Jul 27 2025

VFR with some MVFR/IFR fog possible this morning and have
maintained TEMPO groups where fog developed. Mostly clear skies will
transition to elevated surface smoke AOA 20kft this afternoon.
Likely TSRA is expected to sweep across sites from west to east late
tonight into the pre-dawn hours of Monday morning. Have adjusted
PROB30 timing accordingly to reflect trends in latest CAMs. Light
southerly winds will increase to between 10-12kts with gusts ranging
between 18-20kts across western sites this afternoon. Winds veer
northerly in the next TAF period.

KMSP...Fog possible this morning but likely should remain in the
river valley and not reach the terminals. Light southerly winds will
increase to near 10kts with a few gusts near 18kts through this
afternoon. Still keeping an eye on pre-dawn storms for early Monday
morning. Have pushed back timing another couple of hours in the
PROB30 grouping to reflect current trends with the latest CAMs.
Winds will begin to veer northerly by mid-morning Monday.

/OUTLOOK FOR KMSP/
WED...VFR. Chc MVFR A.M. -TSRA. Wind NE 5-10G15 kts.
THU...VFR. Wind E 5-10 kts.
FRI...VFR. Wind SE 5-10kts.

&&

.MPX WATCHES/WARNINGS/ADVISORIES...
MN...Heat Advisory from noon today to 9 PM CDT this evening for
     Benton-Douglas-Freeborn-Goodhue-Kanabec-Mille Lacs-
     Morrison-Stearns-Steele-Todd.
     Extreme Heat Warning from noon today to 9 PM CDT this evening
     for Anoka-Blue Earth-Brown-Carver-Chippewa-Chisago-Dakota-
     Faribault-Hennepin-Isanti-Kandiyohi-Lac Qui Parle-Le
     Sueur-Martin-McLeod-Meeker-Nicollet-Pope-Ramsey-Redwood-
     Renville-Rice-Scott-Sherburne-Sibley-Stevens-Swift-Waseca-
     Washington-Watonwan-Wright-Yellow Medicine.
WI...Heat Advisory from noon today to 9 PM CDT this evening for
     Barron-Chippewa-Dunn-Eau Claire-Pepin-Pierce-Polk-Rusk-
     St. Croix.

&&

DISCUSSION...Dunleavy
AVIATION...Dunleavy
Hazardous weather outlook, Jul 27, 2:14 AM CST, 8 hours 49 minutes before
Hazardous Weather Outlook
National Weather Service Twin Cities/Chanhassen MN
314 AM CDT Sun Jul 27 2025

MNZ041>045-047>070-073>078-082>085-091>093-WIZ014>016-023>028-
280815-
Douglas-Todd-Morrison-Mille Lacs-Kanabec-Stevens-Pope-Stearns-
Benton-Sherburne-Isanti-Chisago-Lac Qui Parle-Swift-Chippewa-
Kandiyohi-Meeker-Wright-Hennepin-Anoka-Ramsey-Washington-
Yellow Medicine-Renville-McLeod-Sibley-Carver-Scott-Dakota-
Redwood-Brown-Nicollet-Le Sueur-Rice-Goodhue-Watonwan-Blue Earth-
Waseca-Steele-Martin-Faribault-Freeborn-Polk-Barron-Rusk-
St. Croix-Pierce-Dunn-Pepin-Eau Claire-
314 AM CDT Sun Jul 27 2025

This Hazardous Weather Outlook is for portions of central and
southern Minnesota, and west central Wisconsin.

.DAY ONE...Today and Tonight.

Hot and very humid conditions arrive today. Extreme Heat Warnings
or Heat Advisories are in effect through early this evening.

Showers and thunderstorms are likely tonight, especially along
and north of I-94. Damaging winds are the main threat, but some
large hail and a tornado or two cannot be ruled out.

.DAYS TWO THROUGH SEVEN...Monday through Saturday.

Additional thunderstorms are likely Monday night and Tuesday.
Heavy rainfall and some severe weather is possible.

.SPOTTER INFORMATION STATEMENT...

SKYWARN spotter may be needed tonight and Monday night.

The radar

The Aberdeen radar (KABR), 162 km away, was scanning. The volume nearest the first event began at 17:04 UTC.

Open the radar archive at this moment

Event by event

14 thunderstorm wind, 13 hail, 2 flash flood, 2 heavy rain, 1 funnel cloud. Local standard time, as filed.

Hail, Lac Qui Parle

When
July 27, 11:03 AM CST to 11:09 AM CST
Where
Lac Qui Parle County, 2.13 mi SSE of Rosen
Measured
1 in hail
Reported by
Trained Spotter
Coordinates
45.100, -96.410

Mostly nickel sized hail but a few quarters also reported.

Funnel Cloud, Lac Qui Parle

When
July 27, 11:25 AM CST
Where
Lac Qui Parle County, 5.65 mi ESE of Louisburg
Reported by
Fire Department/Rescue
Coordinates
45.132, -96.077

A brief tornado was reported by somebody with a fire department, but there were no photos provided nor any reports of damage. Satellite imagery did not show any path or damage, and nobody else spotted a tornado. With the uncertainty, this was most likely a funnel cloud.

Thunderstorm Wind, Chippewa

When
July 27, 11:37 AM CST to 11:43 AM CST
Where
Chippewa County, 1.2 mi SE of Milan
Measured
60 kt (69 mph) estimated gust
Reported by
Trained Spotter
Coordinates
45.110, -95.910

Report of numerous large trees down between Milan and Chippewa County Road 32.

Thunderstorm Wind, Chippewa

When
July 27, 11:39 AM CST to 11:50 AM CST
Where
Chippewa County, 4.39 mi SE of Milan
Measured
63 kt (72 mph) estimated gust
Reported by
Storm Chaser
Coordinates
45.080, -95.860

Photos were provided of snapped power pole and several large tree limbs down onto a house. The chaser noted no convergent damage.

Thunderstorm Wind, Chippewa

When
July 27, 11:48 AM CST to 11:57 AM CST
Where
Chippewa County, 0.98 mi E of Watson
Measured
63 kt (72 mph) estimated gust
Reported by
Trained Spotter
Coordinates
45.020, -95.800

Large trees and power lines down near Watson.

Hail, Stevens

When
July 27, 3:35 PM CST to 3:42 PM CST
Where
Stevens County, 0.84 mi NE of Chokio
Measured
1 in hail
Reported by
Emergency Manager
Coordinates
45.590, -96.170

Hail, Stevens

When
July 27, 3:43 PM CST to 3:51 PM CST
Where
Stevens County, 0.97 mi W of Alberta
Measured
1 in hail
Reported by
Trained Spotter
Coordinates
45.570, -96.050

Hail, Stevens

When
July 27, 3:43 PM CST to 3:51 PM CST
Where
Stevens County, 0.97 mi W of Alberta
Measured
1 in hail
Reported by
Emergency Manager
Coordinates
45.570, -96.050

Thunderstorm Wind, Stevens

When
July 27, 3:46 PM CST to 3:52 PM CST
Where
Stevens County, 0.84 mi SE of Chokio
Measured
60 kt (69 mph) estimated gust
Reported by
Law Enforcement
Coordinates
45.570, -96.170

Power poles down in Chokio.

Hail, Stevens

When
July 27, 3:49 PM CST to 3:55 PM CST
Where
Stevens County, 1.19 mi NE of Morris
Measured
1.25 in hail
Reported by
Trained Spotter
Coordinates
45.590, -95.910

Thunderstorm Wind, Stevens

When
July 27, 3:55 PM CST to 4:05 PM CST
Where
Stevens County, 0.84 mi SE of Morris Arpt
Measured
52 kt (60 mph) measured gust
Reported by
AWOS
Coordinates
45.560, -95.970

Thunderstorm Wind, Swift

When
July 27, 4:15 PM CST to 4:30 PM CST
Where
Swift County, 5.58 mi NE of Appleton Arpt
Measured
50 kt (58 mph) measured gust
Reported by
Mesonet
Coordinates
45.280, -95.910

Measured by a MNDOT road weather station.

Thunderstorm Wind, Pope

When
July 27, 4:20 PM CST to 4:30 PM CST
Where
Pope County, 9.19 mi SSW of Starbuck
Measured
55 kt (63 mph) measured gust
Reported by
Mesonet
Coordinates
45.490, -95.560

Measured by a MNDOT road weather station.

Thunderstorm Wind, Pope

When
July 27, 4:25 PM CST to 4:30 PM CST
Where
Pope County, 0.84 mi SW of Starbuck
Measured
53 kt (61 mph) estimated gust
Reported by
Law Enforcement
Coordinates
45.610, -95.530

Multiple large branches were brought down by thunderstorm wind gusts.

Thunderstorm Wind, Swift

When
July 27, 4:35 PM CST to 4:40 PM CST
Where
Swift County, 5.41 mi SSE of Swift Falls
Measured
62 kt (71 mph) measured gust
Reported by
Mesonet
Coordinates
45.330, -95.380

Measured by a MNDOT road weather station. It mainly recorded gusts near 59 mph between 15:25 and 15:55, but measured a 71 mph gust between 15:30 and 15:35.

Thunderstorm Wind, Kandiyohi

When
July 27, 4:40 PM CST to 4:48 PM CST
Where
Kandiyohi County, Sunburg
Measured
64 kt (74 mph) estimated gust
Reported by
Fire Department/Rescue
Coordinates
45.350, -95.240

Strong thunderstorm wind gusts caused grain bins to buckle near Sunburg.

Flash Flood, Stevens

When
July 27, 6:00 PM CST to 11:00 PM CST
Where
Stevens County, 0.84 mi SE of Chokio to 0.68 mi ESE of Chokio
Cause
Heavy Rain
Reported by
Law Enforcement
Coordinates
45.570, -96.170

A period of training thunderstorms produced heavy rainfall that quickly accumulated water up to a foot and a half deep over roadways in Chokio.

Flash Flood, Stevens

When
July 27, 6:00 PM CST to 11:00 PM CST
Where
Stevens County, 0.97 mi W of Alberta to 0.77 mi WNW of Alberta
Cause
Heavy Rain
Reported by
Law Enforcement
Coordinates
45.570, -96.050

Training thunderstorms produced heavy rainfall which led to multiple roads being under water in Alberta.

Thunderstorm Wind, Wright

When
July 27, 6:05 PM CST to 6:15 PM CST
Where
Wright County, 0.85 mi SE of Buffalo Muni Arpt
Measured
53 kt (61 mph) measured gust
Reported by
AWOS
Coordinates
45.160, -93.840

Hail, Meeker

When
July 27, 6:29 PM CST to 6:32 PM CST
Where
Meeker County, Litchfield
Measured
1.25 in hail
Reported by
Public
Coordinates
45.130, -94.530

Hail, Hennepin

When
July 27, 6:39 PM CST to 6:43 PM CST
Where
Hennepin County, 0.98 mi E of Plymouth
Measured
1 in hail
Reported by
Emergency Manager
Coordinates
45.030, -93.450

Hail, Hennepin

When
July 27, 6:39 PM CST to 6:44 PM CST
Where
Hennepin County, 0.85 mi SE of Plymouth
Measured
1.75 in hail
Reported by
Trained Spotter
Coordinates
45.020, -93.460

Hail, Hennepin

When
July 27, 6:39 PM CST to 6:45 PM CST
Where
Hennepin County, 1.62 mi ENE of Plymouth
Measured
1.25 in hail
Reported by
Public
Coordinates
45.040, -93.440

Thunderstorm Wind, Hennepin

When
July 27, 6:48 PM CST to 6:55 PM CST
Where
Hennepin County, Crystal Arpt
Measured
54 kt (62 mph) measured gust
Reported by
ASOS
Coordinates
45.070, -93.350

Thunderstorm Wind, Hennepin

When
July 27, 7:00 PM CST to 7:05 PM CST
Where
Hennepin County, 2.13 mi NNW of Ft Snelling
Measured
50 kt (58 mph) estimated gust
Reported by
Trained Spotter
Coordinates
44.910, -93.210

Multiple trees down taking down power lines.

Hail, Ramsey

When
July 27, 7:03 PM CST to 7:08 PM CST
Where
Ramsey County, 0.85 mi NW of Little Canada
Measured
1 in hail
Reported by
Public
Coordinates
45.030, -93.110

Hail, Ramsey

When
July 27, 7:04 PM CST to 7:11 PM CST
Where
Ramsey County, 0.69 mi N of St Paul
Measured
1.75 in hail
Reported by
Trained Spotter
Coordinates
44.980, -93.150

Thunderstorm Wind, Ramsey

When
July 27, 7:14 PM CST to 7:25 PM CST
Where
Ramsey County, 0.49 mi E of (Stp)st Paul Downtown Airport Holman Field
Measured
57 kt (66 mph) measured gust
Reported by
ASOS
Coordinates
44.930, -93.050

Hail, Yellow Medicine

When
July 27, 7:25 PM CST to 7:30 PM CST
Where
Yellow Medicine County, 5.93 mi SW of Hazel Run
Measured
1 in hail
Reported by
Trained Spotter
Coordinates
44.680, -95.790

Heavy Rain, Hennepin

When
July 27, 7:40 PM CST to 8:10 PM CST
Where
Hennepin County, 3.33 mi E of Minneapolis
Reported by
Trained Spotter
Coordinates
45.001, -93.212

A thunderstorm produced very heavy rainfall in 30 minutes nearing 4 p/hour rainfall rates. Urban street flooding was reported near the intersection of NE Broadway St. and NE Industrial Blvd. Approximately one mile east, a CoCoRaHS observer recorded 2.07 of storm total rainfall.

Heavy Rain, Ramsey

When
July 27, 7:50 PM CST to 8:20 PM CST
Where
Ramsey County, 0.86 mi NE of Falcon Hgts
Reported by
Trained Spotter
Coordinates
45.010, -93.170

A thunderstorm produced very heavy rainfall in 30 minutes nearing 4 p/hour rainfall rates. An area of standing water on Hwy 36 between Snelling Ave and Fairview Ave N caused a few cars to stall. Approximately one mile south, a CoCoRaHS observer recorded 2.11 of storm total rainfall.

Hail, Dakota

When
July 27, 8:14 PM CST to 8:24 PM CST
Where
Dakota County, 2.82 mi WSW of Lakeville
Measured
1 in hail
Reported by
Trained Spotter
Coordinates
44.650, -93.300

What these are

Hail
Hail three-quarters of an inch or larger, or smaller hail that caused damage, filed with the largest stone measured.
Funnel Cloud
A rotating column of cloud extending from a thunderstorm that did not reach the ground.
Thunderstorm Wind
Winds from a thunderstorm of 50 knots (58 mph) or more, or lower winds that caused damage or casualties. Measured gusts are marked MG, estimated EG.
Flash Flood
Flooding that begins within six hours of the rain that causes it, or of a dam or levee failure or ice jam release, often with deadly speed.
Heavy Rain
Rainfall totals unusual for the place and season that did not produce a flood.

After NWS Directive 10-1605, the rules offices file Storm Data by.

The same day elsewhere

More

Every storm in Minnesota in 2025Every state in 2025This day in weather historyWarnings in Minnesota, July 2025

Sources

NOAA National Centers for Environmental Information, Storm Events Database, compiled from the National Weather Service’s monthly Storm Data. Complete through 2026-06; NCEI adds each month about 75 days after it ends and revises past years a few times a year. Rebuilt 2026-09-24. Each event’s entry at NCEI: 1287238, 1287791, 1287142, 1287150, 1287146, 1287105, 1287106, 1287107, 1287122, 1287112, 1287115, 1287126, 1287135, 1287134, 1287133, 1287245, 1281621, 1281635, 1287248, 1287243, 1287171, 1287172, 1287185, 1287186, 1287193, 1287227, 1287228, 1287230, 1287157, 1287786, 1281640, 1287167.