Hannibal to St. Louis: Road Trip Guide & Distance
How far is Hannibal from St. Louis?
The distance from Hannibal to St. Louis is 97.1 miles (156.3 km) as the crow flies. St. Louis is located SE of Hannibal. By car, the driving distance is approximately 121.4 miles, taking about 2h 27min. A direct flight would take roughly 42min. Both are located in United States.
For a drive of this length, it's recommended to plan at least one quick rest stop to stretch your legs and grab a coffee. Heading East means you'll be driving into the sunrise if you start early. Keep your windshield clean for the best visibility. Given the short distance, driving or taking a train is often faster and more convenient than dealing with airport security and flight boarding times.
Coordinates come from public place data for Hannibal and St. Louis. The driving distance is estimated from straight-line distance with a road-factor model, so confirm the route in your navigation app. Fuel, flight, bus, and train values are planning estimates and can change by date, provider, road closures, and border rules.
How to Get from Hannibal to St. Louis
Suggested Stops Between Hannibal & St. Louis
- 171 mi
- 280 mi
- 374 mi
- 483 mi
- 516 mi
Quick Facts
Did You Know?
- At walking speed (3 mph), it would take about 32 hours of non-stop walking
- By bicycle at 12 mph, the journey would take roughly 8 hours
- You could travel this distance about 256.4 times to circle the Earth's equator