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

Next train departures

Next departures for San Diego to St. Louis on February 4
Operated byVehicle typeDeparture timeDeparture locationTrip durationArrival timeArrival locationRecommendedPrice and booking link
AmtrakTrain
Old Town San Diego
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 Saturday at 1:35 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 $162, it presents an excellent value for a comfortable ride.

12bus per day
1d 22hAverage Duration
1549 milesDistance
62kgCO₂ emissions
Average Price$162 - $496Average Duration1d 22h
62kg CO₂e
Average Price$202 - $1,536Average 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 $294. 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 1559 miles (2514 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
02/01
$229
02/02
No data
Today
$275
02/04
$229
02/05
$282
02/06
$194
02/07
No data
02/08
$267
busbud logoThe cheapest trip from San Diego, CA, US to St. Louis was searched and found on Feb 6, 2026 with a price of $194

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 $194 to $1,482 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 $194 which is on 2026-02-06.

People from around the world trust Busbud