The average train between Perth and Bristol takes 9h 21m and the fastest train takes 7h 8m. The train service runs several times per day from Perth to Bristol. 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 every 4 hours between Perth and Bristol. The earliest departure is at 7:16 AM in the morning, and the last departure from Perth is at 11:11 PM which arrives into Bristol at 12:34 PM. All services require a transfer at Haymarket and take an average of 9h 21m. The schedules shown below are for the next available departures.



7h 15m • 3 changes



7h 14m • 3 changes



7h 22m • 3 changes



7h 8m • 3 changes



7h 15m • 3 changes



7h 14m • 3 changes



7h 22m • 3 changes



7h 8m • 3 changes



7h 15m • 3 changes



7h 14m • 3 changes



7h 22m • 3 changes



7h 8m • 3 changes



7h 15m • 3 changes



7h 14m • 3 changes



7h 22m • 3 changes



7h 8m • 3 changes



7h 18m • 3 changes



7h 12m • 3 changes



7h 19m • 3 changes



8h 9m • 3 changes



7h 18m • 3 changes



8h 23m • 3 changes



7h 38m • 3 changes



7h 11m • 3 changes



7h 15m • 3 changes



7h 14m • 3 changes



7h 22m • 3 changes



7h 8m • 3 changes
Want to know about travelling from Perth to Bristol? 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 Perth to Bristol. However, there are services departing from Perth station and arriving at Bristol station via Haymarket. The journey, including transfers, takes approximately 9h 21m.
Perth to Bristol train services, operated by ScotRail, depart from Perth station.
Perth to Bristol train services, operated by ScotRail, arrive at Bristol Temple Meads station.
Book your Perth to Bristol train tickets online with ScotRail, Avanti West Coast and Cross Country.
The distance between Perth and Bristol is 552 km. The road distance is 701 km.
You can take a train from Perth to Bristol Temple Meads via Haymarket, Wolverhampton, and Birmingham New Street in around 8h 32m.