There are
472 mi
from Broken Arrow, OK to Keokuk, IA
That's the driving distance. It would take 9 hours 1 min to go from Broken Arrow, Oklahoma to Keokuk, Iowa.
The flight distance (direct flight from Broken Arrow, OK to Keokuk, IA) is 383.64 mi.
472 mi = 759.32 kms