There are
316 mi
from Waterloo, IA to St John, IN
That's the driving distance. It would take 6 hours 4 mins to go from Waterloo, Iowa to St John, Indiana.
The flight distance (direct flight from Waterloo, IA to St John, IN) is 260.15 mi.
316 mi = 509.32 kms