Tornadoes · United States · Minnesota · 2025

EF1 tornado, Danvers, Minnesota, June 28, 2025

This EF1 tornado ran 4.5 miles across Swift County on June 28, 2025, touching down at 7:42 PM CDT and reaching 100 yards wide. It killed nobody.

The rating scale

Tracks are drawn in the color of the rating. The Enhanced Fujita scale rates the damage rather than measuring the wind: the speeds are what that damage is taken to imply.

  1. EF065 to 85 mph

    Light damage. Surface peeled off some roofs, gutters and siding damaged, branches broken, shallow-rooted trees pushed over.

  2. EF186 to 110 mphthis tornado

    Moderate damage. Roofs badly stripped, mobile homes overturned or badly damaged, exterior doors lost, windows broken.

  3. EF2111 to 135 mph

    Considerable damage. Roofs torn off well-built houses, frame homes shifted on their foundations, mobile homes destroyed, large trees snapped or uprooted, cars lifted off the ground.

  4. EF3136 to 165 mph

    Severe damage. Whole stories of well-built houses destroyed, large buildings badly damaged, trains overturned, trees debarked, heavy cars lifted and thrown.

  5. EF4166 to 200 mph

    Devastating damage. Well-built houses leveled, structures with weak foundations moved some distance, cars thrown and large missiles generated.

  6. EF5over 200 mph

    Incredible damage. Strong frame houses swept off their foundations, car-sized missiles thrown more than 100 meters, steel-reinforced concrete badly damaged, high-rise buildings deformed.

  7. Unrated

    The survey recorded a tornado but could not put a number on it, most often because it crossed open country and damaged nothing a rating can be read from.

The record

Rating
EF1
Date
June 28, 2025
Touchdown
7:42 PM CDT (00:42 UTC)
Lifted
7:58 PM CDT (00:58 UTC)
On the ground
16 minutes
Path length
4.5 miles (7.2 km)
Path width
100 yards (91 m)
Deaths
0
Injuries
0
County
Swift County
Touchdown point
45.256, -95.854
Lift-off point
45.234, -95.767
Record number
2506281842-01

The damage survey

8 damage points were recorded along this path by NWS MPX, in the Damage Assessment Toolkit the survey teams carry. The strongest indicator was rated EF1. The highest wind the damage implies is 100 mph.

  • Major portions of a roof of a large metal shed were torn off. The top of a grain bin was blown off. Other outbuildings sustained some damage.
  • This was the apparent beginning of the tornado.
  • An irrigation unit and pivot were knocked over.
  • Damage to center pivot irrigation.

Survey points are preliminary and are the raw material the published rating was built from. Source: NWS Damage Assessment Toolkit.

What the Weather Service recorded

Scattered storms developed near the South Dakota and Minnesota border during the early evening on June 28th, then quickly strengthened into discrete supercells as they progressed into west central Minnesota. These storms produced scattered reports of large hail, thunderstorm wind damage, and three tornadoes. ||As the evening progressed, the supercells merged into clusters and eventually into long line that produced more widespread wind damage and five tornadoes in Carver County. The storms gradually weakened after moving into Wisconsin and south central Minnesota.

A tornado developed just west of a farm and tracked east-southeast, before turning to the southeast and dissipating. At the farm, it damaged outbuildings, taking portions of the roofs and walls. It mangled trees, knocked over three irrigation pivots, and ripped through three turkey barns. Video was provided of the tornado. Photos and drone video of the damage were provided to determine the specific track. The maximum estimated wind was 100 mph.

From NOAA NCEI's Storm Events Database, the narrative the local forecast office wrote for Storm Data.

The warnings

No tornado warning for this county appears in the archive as in force at the moment the tornado touched down. One was issued for the county at another hour that day.

The county was under a tornado watch, issued at 00:35 UTC and running to 04:32 UTC.

Issued (UTC)ExpiredProductOffice
23:44 UTC00:30 UTCSevere Thunderstorm WarningMPX
00:07 UTC00:30 UTCTornado WarningMPX
00:31 UTC01:30 UTCSevere Thunderstorm WarningMPX
00:35 UTC04:32 UTCTornado WatchMPX
00:47 UTC01:15 UTCTornado WarningMPX
01:35 UTC02:15 UTCSevere Thunderstorm WarningMPX
01:43 UTC02:03 UTCTornado WarningMPX

Every warning and watch covering the touchdown point that day, from the Iowa Environmental Mesonet's archive of National Weather Service products. Lead time is measured from the issue of the warning in force to the touchdown time in the database, both of which were recorded to the minute by different people.

The forecast that day

The Storm Prediction Center had this point in a Slight Risk, with a 0.05 chance of a tornado within 25 miles. The outlook in force was issued at 20:00 UTC.

SPC's Day 1 convective outlook as it stood when the tornado began, read at the touchdown point. The same archive is on the radar archive.

The air that afternoon

The radiosonde launches on either side of the tornado, from the nearest station that was launching then, drawn and analyzed the way Storm Lab does: the same diagram, the same parcel and shear definitions SPC's mesoanalysis uses.

Minneapolis, MN (KMPX), 12:00Z

11.3 hours after it, 179 km from the path. June 29, 2025.

Skew-T log-pSkew-T log-p diagram, Minneapolis, MN at 12:00Z on 2025-06-29Temperature and dew point through the depth of the atmosphere, with the mixed-layer parcel lifted from the surface. Mixed-layer CAPE 13 joules per kilogram, CIN -407, lifted condensation level 1891 meters above ground. Wind barbs in knots down the right edge.LCLLFCEL10008507005003002001001 km2 km3 km6 km9 km12 km15 km-30°-20°-10°10°20°30°40°
Temperature in red, dew point in green, the mixed-layer parcel dashed. The warm shading is its CAPE, the cool shading the inhibition it has to break through.
HodographHodograph, Minneapolis, MN at 12:00Z on 2025-06-29The wind through the lowest 10 kilometers as a curve, rings every 10 meters per second labeled in knots. Zero to 1 km storm-relative helicity 24 square meters per square second, 0 to 6 km bulk shear 26 knots.193958Sfc1 km3 km6 km9 kmRMLM
The wind turning with height, colored by layer: ground to 1 km, 1 to 3 km, 3 to 6 km, 6 to 10 km. RM and LM are the right and left moving storms Bunkers' method gives; the shaded area is the 0 to 1 km storm-relative helicity.
Mixed-layer CAPE
13 J/kg
Mixed-layer CIN
-407 J/kg
Surface CAPE
3 J/kg
Mixed-layer LCL
1891 m above ground
0-6 km bulk shear
26 kt
0-1 km bulk shear
33 kt
0-1 km storm-relative helicity
24 m²/s²
0-3 km storm-relative helicity
-14 m²/s²
Significant tornado parameter
0.0
Supercell composite
0.0
0-3 km lapse rate
4.5 K/km

Open this sounding in Storm Lab

The radar

The Minneapolis radar (KMPX), 182 km away, was scanning. The volume nearest the touchdown began at 00:40 UTC.

Open the radar archive at this moment, over the track

Reflectivity and velocity, decoded from the Level II archive in the browser. Volumes take a few seconds to open the first time.

What was reported nearby

Local storm reports within 60 km of the path, in the three hours either side.

Time (UTC)ReportWhereCountyRemark
00:24 UTCTORNADO4 Ne MariettaLac Qui Parle, MNTrained Spotter confirmed tornado N of MN Hwy 40 west of Madison.
00:50 UTCTORNADO4 Ne HollowaySwift, MNTornado spotted on the ground 4.5 miles W of Danvers.
01:35 UTCTSTM WND DMG1 S MurdockSwift, MNSherriff Dispatch reported tree damage 1 mile S of Murdock. Damage possibly caused by Tornado.
01:45 UTCHAIL 0.88MorrisStevens, MN
02:04 UTCFUNNEL CLOUDPennockKandiyohi, MN
02:30 UTCTSTM WND DMG5 Wsw SpicerKandiyohi, MNDelayed report, time estimated from radar. Two trees down in the Dovre Township.

From the Iowa Environmental Mesonet's archive of National Weather Service local storm reports.

This ground now

The live radar over the trackEvery 2025 tornado in MinnesotaEvery tornado in Minnesota since 1950Warnings in force in Minnesota nowThe forecast where you are

The other tornadoes of June 28, 2025

13 more were confirmed in the United States that day.

DateTimeRatingWherePath (mi)Width (yd)DeathsInjuriesDamage
June 281:42 PM CDTUnratedFoster, ND0.750
June 281:43 PM CDTUnratedFoster, ND0.550
June 286:53 PM CDTEF2Deuel, SD3.460
June 287:24 PM CDTEF1Lac qui Parle, MN1.250
June 287:34 PM CDTEF0Deuel, SD0.210
June 286:45 PM MDTEF2Jackson, SD1.66302
June 288:10 PM CDTEF3Deuel, SD9.71002
June 288:49 PM CDTUnratedYellow Medicine, MN0.325
June 2812:10 AM CDTEF0Carver, MN5.750
June 2812:11 AM CDTEF0Carver, MN2.125
June 2812:12 AM CDTEF0Carver, MN3.450
June 2812:14 AM CDTEF1Carver, MN7.2300
June 2812:23 AM CDTEF1Carver, MN4.4250

What this means

Ratings are the survey's, read off the damage rather than measured; the rating scale is above. Tornado counts rise through the record as reporting improved, so a year in the 1950s is not comparable with one today except for the strongest tornadoes, which were always noticed.

Sources

NOAA Storm Prediction Center tornado database, 1950-2025, the official record kept by NOAA's Storm Prediction Center.