Distance from St. Louis, MO to Virginia Beach, VA
St. Louis, MO to Virginia Beach, VA is about 786 miles (1,265 km) as the crow flies. Driving distance is typically longer, since roads rarely follow a straight line — expect to cover noticeably more ground behind the wheel than this direct-line figure.
A direct flight would take about 2 hr 19 min, based on typical commercial cruise speed plus time for takeoff and landing. Actual flight time varies by route, aircraft, and any layovers.
Looking for a meeting point? The geographic midpoint between St. Louis, MO and Virginia Beach, VA is roughly near Lexington, KY.
Open St. Louis, MO and Virginia Beach, VA on the map →
FAQ
How far is it from St. Louis, MO to Virginia Beach, VA?
St. Louis, MO to Virginia Beach, VA is about 786 miles (1,265 km) in a straight line. Driving distance is typically longer, since roads rarely run point-to-point.
How long would it take to fly from St. Louis, MO to Virginia Beach, VA?
A direct flight between St. Louis, MO and Virginia Beach, VA would take about 2 hr 19 min, based on typical commercial cruise speed plus time for takeoff and landing. Actual flight time depends on the route, aircraft, and layovers.