Sunday, September 21, 2025
The September 21, 2025 Hailstorm In Minnetonka, Hopkins, Edina And Bloomington
★★★★★ Rated five stars by most homeowners, Google
Last updated September 2026, one year after the storm. This page changes when what we find changes.
Nobody reported a single stone in Bloomington, Edina, Richfield or Eagan that night. We found the damage anyway, almost a year later, on a roof in Bloomington.
Two storms crossed the metro on the evening of Sunday, September 21, 2025. The first dropped golf ball hail on South St. Paul and Inver Grove Heights just after 8 PM and ran northeast through Woodbury. The second brought hail up to two inches to Deephaven, Minnetonka and Hopkins just after 9 PM, and the National Weather Service followed it by radar over Richfield and on to Eagan, with Edina and Bloomington inside the warning. It hit after dark, it lasted minutes, and from Edina to Eagan it left no ground reports behind it. That is exactly the kind of storm that gets forgotten until a roof starts to show it.
- Hail up to two inches measured in Deephaven and reported in Minnetonka, and golf ball hail measured in South St. Paul
- A Weather Service warning for two inch hail covered Edina, Richfield, Bloomington, Eagan and south Minneapolis from 9:12 PM
- If your roof is fine, we will tell you it is fine, and that will be the end of it
We do not knock on doors, after a storm or any other time.

Pick your city and see the largest stone confirmed near you, how far away it fell, and what the Weather Service said over your city that night.
See Where Each Storm Went
Pick your city, or type an address. You will get the largest stone confirmed near you, how far away it was reported and by whom, where you sat against each storm's path, and what the Weather Service said when the storm was over your city. The dark red bands are where hail was confirmed on the ground. The gray band is where the Weather Service kept tracking the second storm by radar after the last ground report. None of it is proof of damage, and none of it is proof you are fine.
Every report on this map is a published National Weather Service or CoCoRaHS volunteer report. No addresses, names or property records appear anywhere on it, and none ever will.
The Receipts
The Confirmed Record, In Plain Text
Everything below comes from the same reports and storm paths that draw the map, so the two cannot disagree. Twenty four hail reports across the two storms. One hundred and twenty three places checked: ten in the core of a storm, twenty six on an outer edge, eighty seven outside both.
The 8 PM Storm, South St. Paul To Woodbury
- 1.00 inch at 8:06 PM, 1 mile north northeast of Inver Grove Heights. Trained spotter.
- 1.75 inches at 8:07 PM, 1 mile south southeast of South St. Paul. Trained spotter, measured.
- 1.00 inch at 8:10 PM, 1 mile northeast of Inver Grove Heights. Public report with a picture.
- 1.50 inches at 8:10 PM, 2 miles north of Newport. Trained spotter, about two minutes of hail.
- 1.50 inches at 8:10 PM, 5.6 miles south southeast of Maplewood. CoCoRaHS volunteer observer, shredded leaves.
- 1.25 inches at 8:14 PM, 2 miles southwest of Woodbury. Public report, estimated.
- 2.00 inches at 8:17 PM, 1 mile south southwest of Woodbury. Public report.
- 1.00 inch at 8:21 PM, 1 mile west of Woodbury. Public report.
- 1.50 inches at 8:21 PM, 1 mile south of Woodbury. Public report.
- 1.25 inches at 8:21 PM, 1 mile northeast of Woodbury. Public report.
- 1.00 inch at 8:22 PM, Woodbury. CoCoRaHS volunteer observer, six minutes of hail.
- 1.00 inch at 8:37 PM, 1 mile north of Hudson, Wisconsin. Public report.
The 9 PM Storm, Delano To Hopkins, Then Radar To Eagan
- 0.75 inch at 8:25 PM, 1 mile southwest of Delano. Public report, measured.
- 1.25 inches at 8:55 PM, 1.1 miles west of Minnetonka. CoCoRaHS volunteer observer, fifteen minutes of hail, dents on cars.
- 1.00 inch at 9:04 PM, 1 mile west of Minnetonka. Public report.
- 2.00 inches at 9:05 PM, 1 mile north of Deephaven. Public report, measured, with a picture.
- 1.25 inches at 9:05 PM, Hopkins. CoCoRaHS volunteer observer, fifteen minutes of hail.
- 1.75 inches at 9:07 PM, 1 mile southeast of Deephaven. 911 call center, measured.
- 1.00 inch at 9:12 PM, 1 mile north northwest of Hopkins. Trained spotter, measured.
- 1.25 inches at 9:14 PM, 1 mile south southeast of Minnetonka. Public report, measured.
- 1.75 inches at 9:15 PM, 1 mile south southwest of Minnetonka. Trained spotter, measured.
- 1.50 and 2.00 inches at 9:16 and 9:20 PM, 1 mile southwest of Minnetonka. Public reports.
- 0.50 inch, time not given, 1.5 miles east southeast of Minnetonka. CoCoRaHS volunteer observer, no damage.
- Radar only from here. 9:24 PM, storm over Richfield, half dollar hail reported by trained spotters without a location. 9:41 PM, storm over Eagan, quarter size hail indicated by radar. Warning expired 9:51 PM.
Ten places
In The Core Of A Storm
Deephaven, Hopkins, Inver Grove Heights, Lakeland, Minnetonka, Minnetonka Beach, Newport, Orono, South St. Paul and Woodbury.
Twenty six places
On The Outer Edge
Afton, Battle Creek and Sunray in St. Paul, Bayport, Bloomington, Cottage Grove, Delano, Eagan, Edina, Excelsior, Greenwood, Lake Elmo, Long Lake, Maple Plain, Maplewood, Mendota, Mendota Heights, Mound, Oakdale, Richfield, Shorewood, Southwest Minneapolis, St. Louis Park, St. Paul Park, Sunfish Lake, Tonka Bay and Wayzata.
Read That List The Right Way
- That is a list of where the storms went. It is not a list of where we work. Our service area is at the bottom of this page, and it does not include every city named above.
- From Hopkins to Eagan the second storm was tracked by radar only. Nobody reported hail from the ground along that stretch, so no city on it is called core. Edina, Richfield, Bloomington, Eagan and Mendota Heights read as the edge for that reason, not because anyone checked and found them spared.
Why This Page Exists
Nobody Reported Hail In Bloomington. We Found It On A Roof There.
We did not find this storm on a weather map. We found it on a roof.
Almost a year after it passed, we were in Bloomington doing a free exterior assessment, and the roof had hail damage on it. So we went looking for the storm that put it there, and it was September 21, 2025.
Here is what the official record shows for Bloomington that night. A Weather Service warning for two inch hail that named the city at 9:12 PM. A storm the radar followed over Richfield twelve minutes later. And not one hail report from the ground. The nearest confirmed stone fell about eight miles from the middle of Bloomington, in Hopkins.
That gap is the reason this page exists. A storm that hits after dark on a Sunday, for a few minutes, does not get measured or photographed by the people under it. A year later, the evidence on your street is on the roof, not in the record.
Being on the edge is not proof of damage either. If your roof came through clean, we will tell you so, in writing, and leave.
★★★★★
If your roof is fine, we will tell you it is fine, and that will be the end of it. If it is not, you will know exactly what is up there before anyone asks you to decide anything.
The line the whole page is built on
The Record
What The Two Storms Actually Did
Sunday evening, September 21, 2025. The first storm was first reported over Inver Grove Heights and South St. Paul at 8:06 PM, where a trained spotter measured golf ball hail a minute later. It ran northeast at about 35 miles an hour through Newport and Woodbury, where hail up to two inches was reported at 8:17 PM, and into Hudson, Wisconsin by 8:37.
The second came in from Delano and Maple Plain. By 8:58 PM the Weather Service had upgraded it to two inch hail over Wayzata, indicated by radar. It dropped hen egg size stones in Deephaven and Minnetonka between 9:05 and 9:20 PM, with one to one and three quarter inch hail around Hopkins, then turned southeast. The Weather Service tracked it over Richfield at 9:24 PM and Eagan at 9:41 PM and let the warning expire at 9:51.
Hen egg size. Measured 1 mile north of Deephaven at 9:05 PM, and reported southwest of Minnetonka at 9:20 PM and south southwest of Woodbury at 8:17 PM. Enough to damage a roof of almost any age.
Golf ball size. Measured by a trained spotter in South St. Paul at 8:07 PM, by the 911 center southeast of Deephaven at 9:07 PM, and by a trained spotter southwest of Minnetonka at 9:15 PM.
How long volunteer weather observers in Minnetonka and Hopkins logged hail falling. The Minnetonka observer also logged dents on cars.
The Minnesota DNR's summary, from its early October 2025 climate roundup: one and three quarter to two inch hail, golf ball to hen egg size, over the southeast Twin Cities metro.
And the detail that explains the thin record. None of the airport weather stations logged hail that night, including the one in South St. Paul, about a mile from a golf ball report. Hail this narrow slips between instruments, and after dark on a Sunday it slips past people too. That is why the map above is built from every report there is, and why the south metro shows a radar band instead of dots.
If you want to know what we do about storm damage once we find it, that is on the storm and hail damage page. The other storm we have mapped is the June 19, 2026 hailstorm across the north metro.
Updated September 2026
One Year Later, What A Hail Hit Looks Like Now
Hail rarely makes a roof leak the month it falls. It knocks the protective granules loose and bruises the mat underneath, and from the ground the roof carries on looking the way it did the day before.
Then it goes through a winter of freeze and thaw and a full summer of sun. That is where the September 21 storm is now. A year on, a bruise that was hard to see in October can be easier to find, not harder, because the granules around it have had a year to wash away.
What A Year Does To A Hail Hit
- Granules washing out at the downspouts faster than an aging roof accounts for
- Dark, exposed spots where the mat shows through
- Dents in gutters, vents and downspouts from last September, still there
- Shingles that crack or split when they flex in cold weather
The Two Clocks, And Both Are In Your Policy
- The first clock is how soon you have to tell your insurer about a loss. Minnesota's standard fire policy form, Statute 65A.01, subdivision 3, says the insured shall give immediate written notice to the company of any loss. Your own policy sets out its version of that in the section on what you must do after a loss. For a storm that is a year old, that is the one to read first.
- The second clock is how long you have to bring a lawsuit over a claim. Statute 65A.26 says a hail policy must state one year after the loss. Statute 65A.01, subdivision 3 says two years after inception of the loss. Your policy states its own number, usually in a clause titled Suit Against Us or Legal Action Against Us.
- Which of those applies to you, and whether a loss from last September can still be claimed, are questions about your policy that a roofing company is not permitted to answer. Read both sections, call your agent, and if the answer matters to a decision, call an attorney.
- What we can tell you is the practical part. A roof can be walked and photographed properly until the snow comes, usually some time in November, and not again until April. If you are going to find out, this fall is the time to do it.
Your City
City By City, What The Record Shows
Here is what the published record says for each city we serve under these storms. The map above gives the same answer for every other place.
Core of the swath
Minnetonka
Hail up to two inches reported southwest of the city at 9:20 PM, and one and three quarter inches measured by a trained spotter five minutes earlier. A volunteer observer a mile west logged fifteen minutes of hail and dents on cars.
Core of the swath
Deephaven, Orono And Lake Minnetonka
Two inch hail measured a mile north of Deephaven at 9:05 PM, with a picture, and one and three quarter inches measured by the 911 center two minutes later. Orono and Minnetonka Beach are in the core. Wayzata, Excelsior, Greenwood, Shorewood and Tonka Bay are on the edge.
Core of the swath
Hopkins
A volunteer observer in Hopkins logged hail up to one and a quarter inches, falling for fifteen minutes, at about 9:05 PM, and a trained spotter measured an inch just north of the city at 9:12. The Weather Service placed the storm over Hopkins at 9:12 PM.
Outer edge, radar only
St. Louis Park And Southwest Minneapolis
Inside the 9:12 PM warning, which named south Minneapolis. No ground report. The nearest confirmed stone, one and a quarter inches in Hopkins, is three to five miles away.
Outer edge, radar only
Edina
Named in the 9:12 PM warning for two inch hail. No ground report from Edina itself. The nearest confirmed stone, one and a quarter inches in Hopkins, is about four miles from the middle of the city.
Outer edge, radar only
Richfield
The Weather Service placed the storm over Richfield at 9:24 PM and said trained spotters had reported half dollar size hail, without saying where. No report on file is in Richfield itself.
Outer edge, radar only
Bloomington
Named in the 9:12 PM warning. No ground report, and the nearest confirmed stone is about eight miles away. This is where we found the storm, on a roof, almost a year later.
Outer edge, radar only
Eagan
The Weather Service placed the storm over Eagan at 9:41 PM with quarter size hail indicated by radar, and let the warning expire at 9:51. No ground report. The nearest confirmed stone is from the earlier storm, about eight miles east.
The 8 PM storm's core, South St. Paul, Inver Grove Heights, Newport and Woodbury, is outside our service area. It is on the map and in the record above because that is where the storm went.
Know The Rules
What Minnesota Law Actually Says About The Person On Your Roof
We are going to be plain about our own limits here, because the limits are the useful part.
Minn. Stat. 325E.66
A Roofer May Not Tell You What Your Policy Covers
A residential contractor may not interpret policy provisions or advise you about your coverage unless they are licensed as a public adjuster. If someone is telling you what your insurer owes you on a year-old storm, they are either licensed for that or they are breaking a statute, and it is fair to ask which.
Minn. Stat. 325E.66
A Roofer May Not Offer To Cover Your Deductible
Same statute. Advertising or promising to pay any part of your deductible, directly or indirectly, is prohibited. And if a contractor breaks the statute, your insurer does not have to consider that contractor's estimate. The violation lands on your claim, not on theirs.
Minn. Stat. 326B.811
You Get 72 Hours After A Denial
You have the right to cancel a residential roofing agreement within 72 hours after your insurer notifies you that it denied the claim. The agreement is required to carry that notice in boldface, with a cancellation form. If the paperwork in front of you does not have it, ask why.
Minn. Stat. 65A.01 and 65A.26
Two Clocks, And Neither Is Ours To Read
The standard fire policy form says the insured shall give immediate written notice of any loss. For suit, 65A.26 says one year after the loss and 65A.01, subdivision 3 says two years after inception of the loss. Both clocks are written in your own policy, and which one governs is a legal question a roofing company is not permitted to answer.
So Here Is What We Do And What We Do Not Do
We get on the roof, we find what is there, we photograph every slope and every elevation we can safely reach, we write it up and we hand you the file. If you file a claim, we talk to your adjuster about two things: what is damaged, and what it costs to fix. We do not represent you, adjust your claim, or negotiate on your behalf. If your carrier denies it, we stop, we hand you everything we have documented, and what happens next is yours to decide.
Before You Call Anyone
How To Tell From The Ground, A Year Later
You cannot see hail damage on a shingle from your yard, and a year on it is no easier from down there. It has to be walked. What you can check yourself, in ten minutes, without a ladder:
What You Can Check Yourself
- The soft metals. Gutters, downspouts, the furnace and plumbing vents, window and door wrap, the mailbox, the air conditioner fins. Hail dents soft metal before anything else, and dents from last September are still there.
- Your vehicles. If a car parked outside that Sunday night took dents, your roof took the same stones. The volunteer observer in Minnetonka logged dents on cars.
- The downspout outlets. Granules piled where the water comes out. Some granule loss is normal on an aging roof. More than your neighbors are seeing is worth a look.
- The deck and the fence. Light colored divots in wood that have weathered over.
- Your neighbors. If the house next door has confirmed damage, your shingles were probably in the same situation. You might have newer shingles or some other circumstance that spared you. Either way it is worth a look.


From a different storm: one photograph of a St. Anthony roof after the June 19, 2026 hail, shown clean and then circled. One impact. Look at the left frame for as long as you like before you look at the right one.
What none of that tells you. Whether the mat under the granules is bruised. That is the damage that matters, and it has to be found on the roof.
One more thing worth knowing: stone size is only half of it. The other half is the roof it lands on. An inch and a quarter onto a five year old roof is usually nothing at all. The same stone onto a mat that has spent twenty years in the sun is a different event, and that is a large part of why hail varies so much from block to block.
Licensed MN BC630708
GAF Certified Contractor
Based At 2917 Silver Lake Court NE, Minneapolis
Home base is St. Anthony and Northeast Minneapolis, where Josh has worked for twenty years, and Lewis has been roofing since 1996. Before you call us, ask a neighbor.
Answers
Questions About The September 21 Storm
Use the map above. Pick your city or type your address and you will see the largest stone confirmed near you, how far away it fell, and whether you sat in the core of a storm, on the outer edge, or outside both. Be careful how much weight you put on that answer. Across the south metro the second storm was tracked by radar with no reports from the ground, so the map there tells you the odds and nothing more. Only someone on the roof can tell you what actually happened to your shingles.
Too late for what is the question. The damage is not too late to find: it is still on the roof, and a year of weather can make it easier to see. Whether a loss from last September can still be claimed is a different question, and it is not one a roofing company is permitted to answer. Two clocks decide it and both are in your policy: how soon your policy requires notice of a loss, which the standard fire policy form in Statute 65A.01 calls immediate written notice, and how long you have to bring suit, which is one year under 65A.26 and two years under 65A.01, subdivision 3. Read both sections of your policy, call your agent, and if the answer matters to a decision, call an attorney.
We had not heard of it either until we found it on a roof in Bloomington. It came through after dark on a Sunday, the hail lasted minutes, and from Edina to Eagan nobody reported it from the ground. The honest ways to know are the map above, the soft metals around your house, and someone walking your roof.
Yes, and this is the part that costs people the most. Hail knocks the protective granules loose and bruises the mat underneath. The roof usually does not leak that year. It ages faster from then on, and by the time it leaks the storm date is long past.
Not the damage that matters. You can often see the evidence around it: dents in gutters, downspouts, vents and window wrap, granules at a downspout outlet, divots in a wood deck, dents on a car that was parked outside that night. Those tell you the stones hit your house. Whether they bruised the mat has to be found on the roof.
Someone gets on the roof. We look at every slope, because hail is directional and a storm can hit one side of a house and miss the other. We photograph every slope and every elevation we can safely reach, we write it up, and the file is yours whether or not you file a claim and whether or not you hire us. If the roof is fine, we say so. That is the whole visit.
We cannot answer that, and by Minnesota Statute 325E.66 no roofer can unless they are a licensed public adjuster. What we can do is document what is on the roof, give you the photographs and the measurements, and talk to your adjuster about what is damaged and what it costs to fix if you file. Your coverage, your deductible and your policy language are between you, your carrier and, if it comes to it, your own attorney.
Because nobody reported hail from the ground there. The Weather Service followed the storm over Richfield and Eagan by radar, and our map will not call a city core unless a confirmed stone of an inch or more fell within a few miles. Edge means the record is thin. It does not mean someone checked and your roof was spared. Bloomington reads as the edge, and it is where we found this storm.
No. We never have. If you are reading this it is because you went looking, which is the way we would rather do it.
The Ask
Find Out Before The Snow Does
If you were under this storm, the useful move is due diligence, and the season is part of it. Have someone who knows roofs get up there this fall, look at every slope, and put the answer in writing.
If your roof checks out clean, that is the best possible outcome and we will say so plainly. If it does not, you will have dated photographs and a calm explanation of what is up there, in hand, before you talk to anyone about anything.
Local crews, start to finish. Done the right way. Right away.
Get Your Free Roof Evaluation
Six fields. A real person calls you back.
The Guide
The Minnesota Hail And Insurance Claim Guide
What the statutes actually say, what an adjuster is looking for on a roof, and the questions worth asking before you sign anything. Name and email, and we will send it.