There are
897 mi
from Gainesville, FL to Lafayette, IN
That's the driving distance. It would take 17 hours 5 mins to go from Gainesville, Florida to Lafayette, Indiana.
The flight distance (direct flight from Gainesville, FL to Lafayette, IN) is 786.77 mi.
897 mi = 1,444.32 kms