There are 5 ways to get from San Diego to St. Louis by plane, bus (Flixbus, Greyhound), train (Amtrak), or car
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly
best- Fly from San Diego International Airport (SAN) to Lambert–St. Louis International Airport (STL)plane SAN - STL
4h 13m$140–189Bus
- Take the bus from San Diego to Los Angeles Union Stationbus FlixBus N2003 / ...
- Take the bus from Los Angeles Union Station to St Louis Bus Stationbus Greyhound US1210
43h 45m$370–579Train via Kansas City (Amtrak)
- Take the train from San Diego to Fullerton Amtrak Stationtrain
- Take the train from Fullerton Amtrak Station to Kansas Citytrain
- Take the train from Kansas City to St. Louistrain
44h 30m$1,156–1,827Drive 1,796.6 mi
- Drive from San Diego to St. Louiscar 1,796.6 mi
29h 10m$318–459Train (Amtrak)
- Take the train from San Diego to Los Angelestrain Pacific Surfliner
- Take the train from Los Angeles to St. Louistrain Texas Eagle
2d 11h$1,370–2,207
San Diego to St. Louis by bus
Comparing Your Travel Options
The cheapest way to get from San Diego to St. Louis is to fly which costs $140 - $190 and takes 4h 13m.
The fastest way to get from San Diego to St. Louis is to fly which takes 4h 13m and costs $140 - $190.
No, there is no direct bus from San Diego to St. Louis station. However, there are services departing from San Diego and arriving at St Louis Bus Station via Los Angeles Union Station. The journey, including transfers, takes approximately 43h 45m.
No, there is no direct train from San Diego to St. Louis. However, there are services departing from San Diego and arriving at St. Louis via Fullerton Amtrak Station and Kansas City. The journey, including transfers, takes approximately 44h 30m.
The distance between San Diego and St. Louis is 1578 miles. The road distance is 1807.1 miles.
The best way to get from San Diego to St. Louis without a car is to bus which takes 43h 45m and costs $370 - $600.
It takes approximately 4h 13m to get from San Diego to St. Louis, including transfers.
San Diego to St. Louis bus services, operated by Flixbus USA, depart from San Diego station.
San Diego to St. Louis train services, operated by Amtrak, depart from San Diego station.
The best way to get from San Diego to St. Louis is to fly which takes 4h 13m and costs $140 - $190. Alternatively, you can bus, which costs $370 - $600 and takes 43h 45m, you could also train via Kansas City, which costs $1,100 - $1,900 and takes 44h 30m.
What companies run services between San Diego, CA, USA and St. Louis, MO, USA?
Southwest Airlines and American Airlines fly from San Diego International Airport (SAN) to Lambert–St. Louis International Airport (STL) every 4 hours. Alternatively, you can take a bus from San Diego to St Louis Bus Station via Los Angeles Union Station in around 43h 45m.
- Website
- southwest.com
Flights from San Diego International Airport to Lambert–St. Louis International Airport
- Ave. Duration
- 3h 30m
- When
- Every day
- Estimated price
- $120–550
Flights from San Diego International Airport to Lambert–St. Louis International Airport via Kansas City
- Ave. Duration
- 5h
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- $120–550
Flights from San Diego International Airport to Lambert–St. Louis International Airport via Phoenix
- Ave. Duration
- 5h 42m
- When
- Every day
- Estimated price
- $120–550
Flights from San Diego International Airport to Lambert–St. Louis International Airport via Denver
- Ave. Duration
- 5h 20m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- $120–550
Flights from San Diego International Airport to Lambert–St. Louis International Airport via Dallas
- Ave. Duration
- 5h 45m
- When
- Tuesday, Wednesday, Monday, Thursday, Friday, and Sunday
- Estimated price
- $130–600
Flights from San Diego International Airport to Lambert–St. Louis International Airport via Austin
- Ave. Duration
- 6h 5m
- When
- Tuesday and Wednesday
- Estimated price
- $140–600
- Website
- aa.com
Flights from San Diego International Airport to Lambert–St. Louis International Airport via Phoenix
- Ave. Duration
- 5h 26m
- When
- Every day
- Estimated price
- $120–550
Rome2Rio's guide to Amtrak
Contact Details
- Phone
- +1 800-872-7245
- Website
- Amtrak
Train from San Diego to Fullerton Amtrak Station
- Ave. Duration
- 2h 19m
- Frequency
- Hourly
- Estimated price
- $55–90
- Website
- Amtrak
Train from Fullerton Amtrak Station to Kansas City
- Ave. Duration
- 34h 31m
- Frequency
- Once daily
- Estimated price
- $950–1,500
- Website
- Amtrak
Train from Kansas City to St. Louis
- Ave. Duration
- 5h 40m
- Frequency
- Twice daily
- Estimated price
- $150–240
- Website
- Amtrak
Train from San Diego to Los Angeles
- Ave. Duration
- 2h 56m
- Frequency
- Hourly
- Estimated price
- $70–110
- Website
- Amtrak
Train from Los Angeles to St. Louis
- Ave. Duration
- 2d 7h
- Frequency
- 3 times a week
- Estimated price
- $1,300–2,100
- Website
- Amtrak
- Phone
- +1 (855) 626-8585
- Website
- Flixbus USA
Bus from San Diego to Los Angeles Union Station
- Ave. Duration
- 2h 35m
- Frequency
- Twice daily
- Estimated price
- $19–30
- Schedules at
- Flixbus USA
Rome2Rio's guide to Greyhound USA
Contact Details
- Phone
- +1 214-849-8100
- [email protected]
- Website
- Greyhound
Bus from Los Angeles Union Station to St Louis Bus Station
- Ave. Duration
- 40h 10m
- Frequency
- Once daily
- Estimated price
- $350–550
- Website
- Greyhound
Want to know more about travelling around United States
Rome2Rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.
Related travel guides
Travelling to the US: What do I need to know?
Read the travel guide
Need to know: Greyhound
Read the travel guide
Why you should take the train in the US
Read the travel guide
Booking & Getting There
San Diego to St. Louis bus services, operated by Flixbus USA, arrive at Los Angeles Union Station.
St. Louis is 2h ahead of San Diego. It is currently 12:31 AM in San Diego and 2:31 AM in St. Louis.
San Diego to St. Louis train services, operated by Amtrak, arrive at Fullerton Amtrak Station.
Yes, the driving distance between San Diego to St. Louis is 1807 miles. It takes approximately 29h 10m to drive from San Diego to St. Louis.
Book your San Diego to St. Louis train tickets online with Omio.
Book your San Diego to St. Louis bus tickets online with Omio and FlixBus.
There are 567+ hotels available in St. Louis.









