Tornadoes · United States · Indiana · 2019
EF1 tornado, Hanfield, Indiana, May 23, 2019
This EF1 tornado ran 0.1 miles across Grant County on May 23, 2019, touching down at 5:15 PM EDT and reaching 50 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.
EF065 to 85 mph
Light damage. Surface peeled off some roofs, gutters and siding damaged, branches broken, shallow-rooted trees pushed over.
EF186 to 110 mphthis tornado
Moderate damage. Roofs badly stripped, mobile homes overturned or badly damaged, exterior doors lost, windows broken.
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.
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.
EF4166 to 200 mph
Devastating damage. Well-built houses leveled, structures with weak foundations moved some distance, cars thrown and large missiles generated.
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.
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
- May 23, 2019
- Touchdown
- 5:15 PM EDT (21:15 UTC)
- Lifted
- 5:17 PM EDT (21:17 UTC)
- On the ground
- 2 minutes
- Path length
- 0.1 miles (0.1 km)
- Path width
- 50 yards (46 m)
- Deaths
- 0
- Injuries
- 0
- County
- Grant County
- Touchdown point
- 40.595, -85.574
- Lift-off point
- 40.595, -85.572
- Record number
- 1905231515-01
The damage survey
1 damage points were recorded along this path by NWS IWX, in the Damage Assessment Toolkit the survey teams carry. The highest wind the damage implies is 70 mph.
- Approximate start of tornado in open field.
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
A MCS tracked east-northeast from east-central MO/central IL Wednesday evening (May 22) through the IWX CWA early Thursday morning (May 23). Widespread wind gusts of 50-60 mph, with embedded channeled microburst gusts in excess of 70 mph, occurred with associated bowing segments.
Damage pictures and an eyewitness report indicate a brief, small torando formed just west of a large farm in northeast Grant county. The tornado moved above a tens of a mile in an east northeast direction, substantially damaging a newer farm building. The roofing material of this barn was lifted and thrown east over the top of two other barns which only sustained minor damage. The roof trusses were flipped upside down, mainly landing inside the building. Additional roofing and siding material from the building was hurled east into and over grain silos and barns on the east side of the property. This debris was strewn up to approximately severe tenths of a mile east across an open field. Damage was consistent with an EF-1 tornado with wind speeds to 105 mph.
From NOAA NCEI's Storm Events Database, the narrative the local forecast office wrote for Storm Data.
What forecasters said that day
The local office's own words before the tornado touched down, as it sent them, from the Iowa Environmental Mesonet's archive of National Weather Service text.
NWS Northern Indiana wrote its last area forecast discussion before the tornado touched down at May 23, 3:19 PM EDT, 1 hour 56 minutes earlier.
Area forecast discussion, May 23, 3:19 PM EDT, 1 hour 56 minutes before
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Service Notice</title>
<link rel="stylesheet" href="index.css">
</head>
<body>
<main class="wrap">
<section class="card" role="status" aria-live="polite">
<div class="status" id="status">Temporary Notice</div>
<h1 id="headline">This service is currently unavailable.</h1>
<p id="message1">
The site you requested is temporarily down for maintenance or an unexpected outage.
</p>
<p id="message2">
Please try again in a few minutes.
</p>
<p class="small" id="detail">
If you are an administrator, restore upstream service and remove the redirect/fallback rule when normal operations resume.
</p>
</section>
</main>
<script src="index.js"></script>
</body>
</html>Hazardous weather outlook, May 23, 3:22 PM EDT, 1 hour 53 minutes before
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Service Notice</title>
<link rel="stylesheet" href="index.css">
</head>
<body>
<main class="wrap">
<section class="card" role="status" aria-live="polite">
<div class="status" id="status">Temporary Notice</div>
<h1 id="headline">This service is currently unavailable.</h1>
<p id="message1">
The site you requested is temporarily down for maintenance or an unexpected outage.
</p>
<p id="message2">
Please try again in a few minutes.
</p>
<p class="small" id="detail">
If you are an administrator, restore upstream service and remove the redirect/fallback rule when normal operations resume.
</p>
</section>
</main>
<script src="index.js"></script>
</body>
</html>In the hours before
Local storm report, May 23, 3:39 PM EDT, 1 hour 36 minutes before
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Service Notice</title>
<link rel="stylesheet" href="index.css">
</head>
<body>
<main class="wrap">
<section class="card" role="status" aria-live="polite">
<div class="status" id="status">Temporary Notice</div>
<h1 id="headline">This service is currently unavailable.</h1>
<p id="message1">
The site you requested is temporarily down for maintenance or an unexpected outage.
</p>
<p id="message2">
Please try again in a few minutes.
</p>
<p class="small" id="detail">
If you are an administrator, restore upstream service and remove the redirect/fallback rule when normal operations resume.
</p>
</section>
</main>
<script src="index.js"></script>
</body>
</html>Local storm report, May 23, 3:49 PM EDT, 1 hour 26 minutes before
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Service Notice</title>
<link rel="stylesheet" href="index.css">
</head>
<body>
<main class="wrap">
<section class="card" role="status" aria-live="polite">
<div class="status" id="status">Temporary Notice</div>
<h1 id="headline">This service is currently unavailable.</h1>
<p id="message1">
The site you requested is temporarily down for maintenance or an unexpected outage.
</p>
<p id="message2">
Please try again in a few minutes.
</p>
<p class="small" id="detail">
If you are an administrator, restore upstream service and remove the redirect/fallback rule when normal operations resume.
</p>
</section>
</main>
<script src="index.js"></script>
</body>
</html>Local storm report, May 23, 3:52 PM EDT, 1 hour 23 minutes before
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Service Notice</title>
<link rel="stylesheet" href="index.css">
</head>
<body>
<main class="wrap">
<section class="card" role="status" aria-live="polite">
<div class="status" id="status">Temporary Notice</div>
<h1 id="headline">This service is currently unavailable.</h1>
<p id="message1">
The site you requested is temporarily down for maintenance or an unexpected outage.
</p>
<p id="message2">
Please try again in a few minutes.
</p>
<p class="small" id="detail">
If you are an administrator, restore upstream service and remove the redirect/fallback rule when normal operations resume.
</p>
</section>
</main>
<script src="index.js"></script>
</body>
</html>Local storm report, May 23, 3:57 PM EDT, 1 hour 18 minutes before
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Service Notice</title>
<link rel="stylesheet" href="index.css">
</head>
<body>
<main class="wrap">
<section class="card" role="status" aria-live="polite">
<div class="status" id="status">Temporary Notice</div>
<h1 id="headline">This service is currently unavailable.</h1>
<p id="message1">
The site you requested is temporarily down for maintenance or an unexpected outage.
</p>
<p id="message2">
Please try again in a few minutes.
</p>
<p class="small" id="detail">
If you are an administrator, restore upstream service and remove the redirect/fallback rule when normal operations resume.
</p>
</section>
</main>
<script src="index.js"></script>
</body>
</html>Local storm report, May 23, 3:59 PM EDT, 1 hour 16 minutes before
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Service Notice</title>
<link rel="stylesheet" href="index.css">
</head>
<body>
<main class="wrap">
<section class="card" role="status" aria-live="polite">
<div class="status" id="status">Temporary Notice</div>
<h1 id="headline">This service is currently unavailable.</h1>
<p id="message1">
The site you requested is temporarily down for maintenance or an unexpected outage.
</p>
<p id="message2">
Please try again in a few minutes.
</p>
<p class="small" id="detail">
If you are an administrator, restore upstream service and remove the redirect/fallback rule when normal operations resume.
</p>
</section>
</main>
<script src="index.js"></script>
</body>
</html>Local storm report, May 23, 4:03 PM EDT, 1 hour 12 minutes before
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Service Notice</title>
<link rel="stylesheet" href="index.css">
</head>
<body>
<main class="wrap">
<section class="card" role="status" aria-live="polite">
<div class="status" id="status">Temporary Notice</div>
<h1 id="headline">This service is currently unavailable.</h1>
<p id="message1">
The site you requested is temporarily down for maintenance or an unexpected outage.
</p>
<p id="message2">
Please try again in a few minutes.
</p>
<p class="small" id="detail">
If you are an administrator, restore upstream service and remove the redirect/fallback rule when normal operations resume.
</p>
</section>
</main>
<script src="index.js"></script>
</body>
</html>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.
Cncnati-Daytn, OH (KILN), 12:00Z
9.3 hours before the tornado, 199 km from the path. May 23, 2019.
- Mixed-layer CAPE
- 1205 J/kg
- Mixed-layer CIN
- -68 J/kg
- Surface CAPE
- 529 J/kg
- Mixed-layer LCL
- 1067 m above ground
- 0-6 km bulk shear
- 49 kt
- 0-1 km bulk shear
- 32 kt
- 0-1 km storm-relative helicity
- 174 m²/s²
- 0-3 km storm-relative helicity
- 168 m²/s²
- Significant tornado parameter
- 1.0
- Supercell composite
- 7.8
- 0-3 km lapse rate
- 6.0 K/km
The surface observations
Marion (MZZ), 15 km from the path, in the two hours either side.
| Time (UTC) | Temp (°F) | Dew point (°F) | Wind | Gust (kt) | Pressure (mb) | Weather |
|---|---|---|---|---|---|---|
| 00:00 UTC |
From the Iowa Environmental Mesonet's archive of airport observations.
The radar
The Northern Indiana radar (KIWX), 86 km away, was scanning. The volume nearest the touchdown began at 21:18 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.
This ground now
The live radar over the trackEvery 2019 tornado in IndianaEvery tornado in Indiana since 1950Warnings in force in Indiana nowThe forecast where you are
The other tornadoes of May 23, 2019
18 more were confirmed in the United States that day.
| Date | Time | Rating | Where | Path (mi) | Width (yd) | Deaths | Injuries | Damage |
|---|---|---|---|---|---|---|---|---|
| May 23 | 1:10 AM CDT | EF1 | Piatt, IL | 1.3 | 200 | |||
| May 23 | 1:49 AM CDT | EF1 | Laclede, MO | 11.1 | 440 | $155,000 | ||
| May 23 | 2:06 AM CDT | EF1 | Vermilion, IL | 1.6 | 200 | |||
| May 23 | 8:15 AM CDT | EF0 | Clay, IL | 0.7 | 20 | |||
| May 23 | 3:27 PM EDT | EF1 | Howard, MD | 5.5 | 150 | 1 | ||
| May 23 | 5:01 PM CDT | EF0 | Randall, TX | 0.6 | 50 | |||
| May 23 | 5:13 PM CDT | EF0 | Armstrong, TX | 0.7 | 50 | |||
| May 23 | 5:15 PM CDT | EF0 | Randall, TX | 0.3 | 50 | |||
| May 23 | 5:28 PM CDT | Unrated | Terry, TX | 0.1 | 10 | |||
| May 23 | 6:14 PM CDT | EF1 | Roberts, TX | 9.1 | 50 | |||
| May 23 | 6:59 PM CDT | EF2 | Roberts, TX | 17.5 | 900 | |||
| May 23 | 7:07 PM CDT | EF0 | Roberts, TX | 0.0 | 20 | |||
| May 23 | 9:14 PM EDT | EF0 | Cambria, PA | 1.6 | 300 | $10,000 | ||
| May 23 | 8:26 PM CDT | EF3 | Lipscomb, TX to OK | 15.7 | 1,500 | $170,000 | ||
| May 23 | 8:43 PM CDT | EF0 | Lipscomb, TX | 4.5 | 75 | |||
| May 23 | 9:32 PM CDT | Unrated | Harper, OK | 0.5 | 50 | |||
| May 23 | 9:43 PM CDT | Unrated | Harper, OK | 0.5 | 75 | |||
| May 23 | 10:42 PM CDT | EF1 | Harper, OK | 2.0 | 150 | $20,000 |
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.