The average train between Bath and Perth takes 8h 26m and the fastest train takes 7h 21m. There is a train service every few hours from Bath to Perth. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Trains run hourly between Bath and Perth. The earliest departure is at 6:02 AM in the morning, and the last departure from Bath is at 11:06 PM which arrives into Perth at 11:48 AM. All services require a transfer at London Paddington and take an average of 8h 26m. The schedules shown below are for the next available departures.



7h 21m • 3 changes



7h 53m • 3 changes
Arrives next day



8h 20m • 3 changes
Arrives next day



8h 12m • 3 changes



8h 8m • 3 changes



8h 3m • 3 changes



7h 59m • 3 changes



7h 28m • 3 changes



8h 8m • 3 changes



8h 3m • 3 changes



7h 59m • 3 changes



7h 28m • 3 changes



8h 8m • 3 changes



8h 3m • 3 changes



7h 59m • 3 changes



7h 28m • 3 changes
Want to know about travelling from Bath to Perth? We have put together a list of the most frequently asked questions from our users such as: What is the cheapest mode of transport? What is the quickest option? How much do tickets usually cost? and many more.
No, there is no direct train from Bath to Perth. However, there are services departing from Bath station and arriving at Perth station via London Paddington. The journey, including transfers, takes approximately 8h 26m.
Bath to Perth train services, operated by Great Western Railway (GWR), depart from Bath Spa station.
Bath to Perth train services, operated by Great Western Railway (GWR), arrive at Perth station.
Book your Bath to Perth train tickets online with Great Western Railway (GWR), London Underground (Tube) and 3 other operators.
The distance between Bath and Perth is 562.6 km. The road distance is 893 km.
You can take a train from Bath Spa to Perth via London Paddington, Paddington, King's Cross St. Pancras station, King's Cross, and Edinburgh Waverley in around 8h 10m.