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

Next train departures

Next departures for San Diego to St. Louis on December 20
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
Old Town San Diego
Gateway StationNo tags

Last refresh of the prices: Today at 11:11 AM 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 the good way to reach St. Louis. The journey takes about 1 day, 21 hours 15 minutes and with fares starting at just $138, it presents an excellent value for a comfortable ride.

7bus per day
1d 21hAverage Duration
1559 milesDistance
63kgCO₂ emissions
Average Price$138 - $478Average Duration1d 21h
63kg CO₂e
Average Price$202 - $1,768Average Duration2d 6h
229kg CO₂e

Frequently asked questions about traveling 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 from $202. The average price for this train route is around $436. Busbud recommends that you book your tickets in advance for a better chance to get the lowest possible price.

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

    The average train ride duration from San Diego to St. Louis is 2d 6h, covering a distance of 1558 miles (2513 km). The quickest train can get you there in 1d 22h and is operated by Amtrak.

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

    Several major train operators operate on this route with 4 trains available per day.

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

    The earliest train departs from San Diego to St. Louis at 2:01pm. And 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
12/17
No data
12/18
$532
Today
No data
12/20
$1,660
12/21
No data
12/22
No data
12/23
No data
12/24
No data
busbud logoThe cheapest trip from San Diego, CA, US to St. Louis was searched and found on Dec 18, 2025 with a price of $532

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 $532 to $1,707 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 $1,660 which is on 2025-12-20.

People from around the world trust Busbud