The average train between Perth and Crewe takes 5h 22m and the fastest train takes 4h 31m. The train service runs several times per day from Perth to Crewe. 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 Crewe. 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 Crewe at 10:00 AM. All services require a transfer, and take on average 5h 22m. The schedules shown below are for the next available departures.

4h 35m • 1 change

4h 40m • 1 change
Arrives next day

10h 50m • 1 change

4h 46m • 1 change

4h 44m • 1 change

4h 46m • 1 change

4h 36m • 1 change

4h 46m • 1 change

4h 44m • 1 change

4h 46m • 1 change

4h 36m • 1 change

4h 46m • 1 change

4h 44m • 1 change

4h 46m • 1 change

4h 36m • 1 change

4h 46m • 1 change

4h 44m • 1 change

4h 46m • 1 change

4h 36m • 1 change

4h 45m • 1 change

4h 42m • 1 change

4h 46m • 1 change

4h 36m • 1 change

4h 43m • 1 change

5h 50m • 1 change

5h 3m • 1 change

4h 31m • 1 change
Want to know about travelling from Perth to Crewe? 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 Crewe. However, there are services departing from Perth station and arriving at Crewe station via Haymarket. The journey, including transfers, takes approximately 5h 22m.
Perth to Crewe train services, operated by ScotRail, depart from Perth station.
Perth to Crewe train services, operated by ScotRail, arrive at Crewe station.
Book your Perth to Crewe train tickets online with ScotRail and Avanti West Coast.
The distance between Perth and Crewe is 372.1 km. The road distance is 474 km.
You can take a train from Perth to Crewe via Haymarket in around 5h 29m.