There are
1,296 mi
from Deerfield Beach, FL to Hannibal, MO
That's the driving distance. It would take 23 hours 56 mins to go from Deerfield Beach, Florida to Hannibal, Missouri.
The flight distance (direct flight from Deerfield Beach, FL to Hannibal, MO) is 1,129.87 mi.
1,296 mi = 1.61 kms