Miles between Eagan, MN and Hannibal, MO

There are
437 mi
from Eagan, MN to Hannibal, MO

That's the driving distance. It would take 8 hours 18 mins to go from Eagan, Minnesota to Hannibal, Missouri.

The flight distance (direct flight from Eagan, MN to Hannibal, MO) is 363.99 mi.

437 mi = 702.53 kms