There are 7 ways to get from St. Louis to Buffalo by plane, bus (Greyhound), train (Amtrak), car, or bus
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly to Buffalo Niagara International Airport
best- Fly from Lambert–St. Louis International Airport (STL) to Buffalo Niagara International Airport (BUF)plane STL - BUF
6h 16m$138–780Fly to Toronto Pearson International Airport, bus
cheapest- Fly from Lambert–St. Louis International Airport (STL) to Toronto Pearson International Airport (YYZ)plane STL - YYZ
- Take the bus from Toronto Pearson Airport to Buffalobus
8h 35m$88–426Bus via Indianapolis
- Take the bus from St Louis Bus Station to Indianapolis Union Stationbus
- Take the bus from Indianapolis to Toledobus
- Take the bus from Toledo to Clevelandbus
- Take the bus from Cleveland to Buffalobus
16h 35m$94–234Train (Amtrak)
- Take the train from St. Louis to Chicago Union Stationtrain Lincoln Service / ...
- Take the train from Chicago Union Station to Buffalo Depew Stationtrain Lake Shore Limited
17h 39m$447–827Drive 736.3 mi
- Drive from St. Louis to Buffalocar 736.3 mi
12h 37m$135–195Fly to Rochester, bus
- Fly from Lambert–St. Louis International Airport (STL) to Rochester (ROC)plane STL - ROC
- Take the bus from Rochester Bus Stop to Buffalobus
7h 50m$202–1,044Bus
- Take the bus from St Louis Bus Station to Pittsburgh Intermodal Stationbus Greyhound US0421
- Take the bus from Pittsburgh, Pa to Buffalo, Nybus 510
23h 30m$154–351
St. Louis to Buffalo by bus
Comparing Your Travel Options
The cheapest way to get from St. Louis to Buffalo is to bus via Indianapolis which costs $90 - $240 and takes 16h 35m.
The fastest way to get from St. Louis to Buffalo is to fly which takes 6h 16m and costs $130 - $800.
No, there is no direct bus from St. Louis station to Buffalo. However, there are services departing from St Louis Bus Station and arriving at Buffalo via Indianapolis, Toledo and Cleveland. The journey, including transfers, takes approximately 16h 35m.
No, there is no direct train from St. Louis to Buffalo. However, there are services departing from St. Louis and arriving at Buffalo via Chicago Union Station and Buffalo Depew Station. The journey, including transfers, takes approximately 17h 39m.
The distance between St. Louis and Buffalo is 700 miles. The road distance is 740.6 miles.
The best way to get from St. Louis to Buffalo without a car is to bus via Indianapolis which takes 16h 35m and costs $90 - $240.
It takes approximately 6h 16m to get from St. Louis to Buffalo, including transfers.
St. Louis to Buffalo bus services, operated by Greyhound USA, depart from St Louis Bus Station.
St. Louis to Buffalo train services, operated by Amtrak, depart from St. Louis station.
The best way to get from St. Louis to Buffalo is to fly which takes 6h 16m and costs $130 - $800. Alternatively, you can bus via Indianapolis, which costs $90 - $240 and takes 16h 35m, you could also train, which costs $440 - $850 and takes 17h 39m.
What companies run services between St. Louis, MO, USA and Buffalo, NY, USA?
Southwest Airlines, Delta, and two other airlines fly from Lambert–St. Louis International Airport (STL) to Buffalo Niagara International Airport (BUF) hourly. Alternatively, you can take a bus from St Louis Bus Station to Buffalo via Indianapolis, Toledo, and Cleveland in around 16h 35m.
- Website
- southwest.com
Flights from Lambert–St. Louis International Airport to Buffalo Niagara International Airport via Chicago Midway
- Ave. Duration
- 3h 38m
- When
- Every day
- Estimated price
- $130–750
Flights from Lambert–St. Louis International Airport to Buffalo Niagara International Airport via Baltimore
- Ave. Duration
- 4h 37m
- When
- Monday to Wednesday
- Estimated price
- $160–850
Flights from Lambert–St. Louis International Airport to Buffalo Niagara International Airport via Nashville
- Ave. Duration
- 4h 55m
- When
- Monday to Wednesday
- Estimated price
- $150–800
Flights from Lambert–St. Louis International Airport to Rochester via Chicago Midway
- Ave. Duration
- 4h
- When
- Monday to Wednesday
- Estimated price
- $180–1,000
Flights from Lambert–St. Louis International Airport to Rochester via Baltimore
- Ave. Duration
- 4h 41m
- When
- Monday to Saturday
- Estimated price
- $220–1,100
- Website
- united.com
Flights from Lambert–St. Louis International Airport to Buffalo Niagara International Airport via Chicago O'Hare
- Ave. Duration
- 4h 45m
- When
- Every day
- Estimated price
- $130–750
Flights from Lambert–St. Louis International Airport to Buffalo Niagara International Airport via Washington Dulles
- Ave. Duration
- 5h 7m
- When
- Tuesday, Wednesday, Saturday, and Sunday
- Estimated price
- $160–850
Flights from Lambert–St. Louis International Airport to Rochester via Chicago O'Hare
- Ave. Duration
- 4h 58m
- When
- Every day
- Estimated price
- $180–1,000
Flights from Lambert–St. Louis International Airport to Rochester via Washington Dulles
- Ave. Duration
- 5h 10m
- When
- Every day
- Estimated price
- $210–1,100
Flights from Lambert–St. Louis International Airport to Toronto Pearson International Airport
- Ave. Duration
- 1h 54m
- When
- Every day
- Estimated price
- $70–400
Flights from Lambert–St. Louis International Airport to Toronto Pearson International Airport via Chicago O'Hare
- Ave. Duration
- 4h 28m
- When
- Every day
- Estimated price
- $70–410
- Website
- aircanada.com
Flights from Lambert–St. Louis International Airport to Buffalo Niagara International Airport via Chicago O'Hare
- Ave. Duration
- 4h 45m
- When
- Every day
- Estimated price
- $130–750
Flights from Lambert–St. Louis International Airport to Rochester via Chicago O'Hare
- Ave. Duration
- 4h 58m
- When
- Every day
- Estimated price
- $180–1,000
Flights from Lambert–St. Louis International Airport to Toronto Pearson International Airport
- Ave. Duration
- 1h 54m
- When
- Every day
- Estimated price
- $70–400
Flights from Lambert–St. Louis International Airport to Toronto Pearson International Airport via Chicago O'Hare
- Ave. Duration
- 4h 28m
- When
- Every day
- Estimated price
- $70–410
- Website
- aa.com
Flights from Lambert–St. Louis International Airport to Buffalo Niagara International Airport via Chicago O'Hare
- Ave. Duration
- 4h 56m
- When
- Every day
- Estimated price
- $130–750
Flights from Lambert–St. Louis International Airport to Buffalo Niagara International Airport via Reagan Washington
- Ave. Duration
- 5h 7m
- When
- Monday, Tuesday, Wednesday, Thursday, Sunday, and Friday
- Estimated price
- $160–850
Flights from Lambert–St. Louis International Airport to Rochester via Reagan Washington
- Ave. Duration
- 4h 52m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- $220–1,100
Flights from Lambert–St. Louis International Airport to Rochester via Chicago O'Hare
- Ave. Duration
- 4h 55m
- When
- Every day
- Estimated price
- $180–1,000
Flights from Lambert–St. Louis International Airport to Rochester via Philadelphia
- Ave. Duration
- 4h 56m
- When
- Every day
- Estimated price
- $220–1,100
- Website
- delta.com
Flights from Lambert–St. Louis International Airport to Buffalo Niagara International Airport via Detroit
- Ave. Duration
- 3h 39m
- When
- Every day
- Estimated price
- $130–750
Flights from Lambert–St. Louis International Airport to Rochester via Detroit
- Ave. Duration
- 3h 55m
- When
- Every day
- Estimated price
- $170–1,000
Flights from Lambert–St. Louis International Airport to Toronto Pearson International Airport via Detroit
- Ave. Duration
- 3h 51m
- When
- Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- $70–400
Rome2Rio's guide to Amtrak
Contact DetailsContact Details
- Phone
- +1 800-872-7245
- Website
- Amtrak
Train from St. Louis to Chicago Union Station
- Ave. Duration
- 4h 55m
- Frequency
- 5 times a day
- Estimated price
- $150–240
- Website
- Amtrak
Train from Chicago Union Station to Buffalo Depew Station
- Ave. Duration
- 10h 23m
- Frequency
- Twice daily
- Estimated price
- $290–450
- Website
- Amtrak
Rome2Rio's guide to Greyhound USA
Contact DetailsContact Details
- Phone
- +1 214-849-8100
- [email protected]
- Website
- Greyhound
Bus from St Louis Bus Station to Indianapolis Union Station
- Ave. Duration
- 4h 45m
- Frequency
- 3 times a day
- Estimated price
- $40–65
- Website
- Greyhound
Bus from Rochester Bus Stop to Buffalo
- Ave. Duration
- 1h 20m
- Frequency
- 5 times a day
- Estimated price
- $13–20
- Website
- Greyhound
Bus from St Louis Bus Station to Pittsburgh Intermodal Station
- Ave. Duration
- 14h 40m
- Frequency
- 3 times a day
- Estimated price
- $100–170
- Website
- Greyhound
- Phone
- +1 888-378-3823
- [email protected]
- Website
- Barons Bus
Bus from Indianapolis to Toledo
- Ave. Duration
- 3h 55m
- Frequency
- Once daily
- Estimated price
- $21–65
- Website
- Barons Bus
Bus from Toledo to Cleveland
- Ave. Duration
- 1h 45m
- Frequency
- Once daily
- Estimated price
- $11–45
- Website
- Barons Bus
Bus from Cleveland to Buffalo
- Ave. Duration
- 3h 10m
- Frequency
- Once daily
- Estimated price
- $18–60
- Website
- Barons Bus
- Phone
- +1 (855) 626-8585
- Website
- Flixbus USA
Bus from Rochester Bus Stop to Buffalo
- Ave. Duration
- 1h 30m
- Frequency
- Every 4 hours
- Estimated price
- $11–18
- Schedules at
- Flixbus USA
Bus from Toronto Pearson Airport to Buffalo
- Ave. Duration
- 3h 10m
- Frequency
- 5 times a week
- Estimated price
- $15–24
- Schedules at
- Flixbus USA
- Phone
- +1 800-858-8555
- Website
- Trailways
Bus from Pittsburgh, Pa to Buffalo, Ny
- Saver
- $45–180
- Flexible
- $80–190
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
St. Louis to Buffalo bus services, operated by Greyhound USA, arrive at Indianapolis Union Station.
Buffalo is 1h ahead of St. Louis. It is currently 10:33 PM in St. Louis and 11:33 PM in Buffalo.
St. Louis to Buffalo train services, operated by Amtrak, arrive at Chicago Union Station.
Yes, the driving distance between St. Louis to Buffalo is 741 miles. It takes approximately 12h 37m to drive from St. Louis to Buffalo.
Book your St. Louis to Buffalo train tickets online with Omio.
Book your St. Louis to Buffalo bus tickets online with Omio.
There are 255+ hotels available in Buffalo.















