Train from San Diego, CA, US to St. Louis: Tickets & Schedules

Next train departures

Next departures for San Diego to St. Louis on February 5
Operated byVehicle typeDeparture timeDeparture locationTrip durationArrival timeArrival locationRecommendedPrice and booking link
AmtrakTrain
Santa Fe Depot
Gateway StationCheapest
AmtrakTrain
Old Town San Diego
Gateway StationFastest
AmtrakTrain
Santa Fe Depot
Gateway StationNo tags
AmtrakTrain
Santa Fe Depot
Gateway StationNo tags
AmtrakTrain
Santa Fe Depot
Gateway StationNo tags

Last refresh of the prices: Last Thursday at 1:17 PM PST.

Compare 2 ways to go from San Diego to St. Louis

We recommend taking the bus

Among the sustainable travel choices, the Bus stands out as a good way to reach St. Louis. The journey takes about 1 day, 22 hours 40 minutes, and with fares starting at just $226, it presents an excellent value for a comfortable ride.

12bus per day
1d 22hAverage Duration
2498 kmDistance
62kgCO₂ emissions
Average Price$226 - $694Average Duration1d 22h
62kg CO₂e
Average Price$283 - $2,149Average Duration2d 6h
229kg CO₂e

Frequently asked questions about travelling from San Diego, CA, US to St. Louis by train

Please note that schedules, routes, or operator details shown here may be updated or vary at the time of your trip.

  1. How much is the train ticket from San Diego to St. Louis?

    The cheapest train tickets from San Diego to St. Louis start at $283. The average price for this train route is around $411. Busbud recommends booking your tickets in advance to increase your chances of getting the lowest possible price.

  2. How long is the train ride from San Diego to St. Louis?

    The average train trip from San Diego to St. Louis takes 2d 6h and covers 2514 km. The quickest train gets you there in 1d 22h and is operated by Amtrak.

  3. Which train operators serve the San Diego to St. Louis route?

    Several major train operators serve this route, with 4 trains available per day.

  4. What are the earliest and latest departure times for the train from San Diego to St. Louis?

    The earliest train from San Diego to St. Louis departs at 2:01pm. The latest train departs at 4:10pm.

Find cheapest prices for trains

Price is for a one-way ticket for one passenger and based on past searches.

Best price found
01-31
$385
02-01
$321
Today
No data
02-03
$385
02-04
$321
02-05
$395
02-06
$272
02-07
No data
busbud logoThe cheapest trip from San Diego, CA, US to St. Louis was searched and found on Feb 6, 2026 with a price of $272

To save money and be sure you have the best seat, it's a good idea to buy your train tickets from San Diego, CA, US to St. Louis, as early as possible.

You can expect to pay from $272 to $2,075 for a train ticket from San Diego, CA, US to St. Louis based on the last 2 days. You can expect to find the cheapest price for the trip at $272 which is on 2026-02-06.

People from around the world trust Busbud