There are
1,300 mi
from Margate, FL to Hannibal, MO
That's the driving distance. It would take 1 day to go from Margate, Florida to Hannibal, Missouri.
The flight distance (direct flight from Margate, FL to Hannibal, MO) is 1,130.69 mi.
1,300 mi = 2,092.38 kms