The average bus between St. Louis and Des Moines takes 11h 56m and the fastest bus takes 9h 50m. The bus service runs several times per day from St. Louis to Des Moines. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Buses run 3 times a day between St. Louis and Des Moines. The earliest departure is at 7:40 AM in the morning, and the last departure from St. Louis is at 11:45 PM which arrives into Des Moines at 11:45 AM. All services require a transfer at Kansas City Bus Station and take an average of 11h 56m. The schedules shown below are for the next available departures.

14h 5m • 1 changeArrives next day

9h 50m • 1 changeArrives next day

11h • 1 change
14h 5m • 1 changeArrives next day

9h 50m • 1 changeArrives next day

11h • 1 change
14h 5m • 1 changeArrives next day

9h 50m • 1 changeArrives next day

11h • 1 changeWant to know about travelling from St. Louis to Des Moines? We have put together a list of the most frequently asked questions from our users such as: What is the cheapest mode of transport? What is the quickest option? How much do tickets usually cost? and many more.
No, there is no direct bus from St. Louis to Des Moines. However, there are services departing from St. Louis station and arriving at Des Moines station via Kansas City Bus Station station. The journey, including transfers, takes approximately 11h 56m.
St. Louis to Des Moines bus services, operated by Greyhound USA, depart from St Louis Bus Station.
St. Louis to Des Moines bus services, operated by Greyhound USA, arrive at Des Moines station.
Book your St. Louis to Des Moines bus tickets online with Greyhound USA and Jefferson Lines.
The distance between St. Louis and Des Moines is 439.8 km. The road distance is 711 km.
You can take a bus from St Louis Bus Station to Des Moines via Kansas City Bus Station and Kansas City in around 8h 25m.