There are
244 mi
from St Joseph, MO to Keokuk, IA
That's the driving distance. It would take 4 hours 48 mins to go from St Joseph, Missouri to Keokuk, Iowa.
The flight distance (direct flight from St Joseph, MO to Keokuk, IA) is 187.33 mi.
244 mi = 391.97 kms