There are
1,025 mi
from Virginia Beach, VA to Keokuk, IA
That's the driving distance. It would take 20 hours 22 mins to go from Virginia Beach, Virginia to Keokuk, Iowa.
The flight distance (direct flight from Virginia Beach, VA to Keokuk, IA) is 866.21 mi.
1,025 mi = 1.61 kms