The average train between Oldham and Perth takes 5h 59m and the fastest train takes 4h 48m. There is a train service every few hours from Oldham 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 Oldham and Perth. The earliest departure is at 12:08 AM at night, and the last departure from Oldham is at 10:53 PM which arrives into Perth at 8:38 AM. All services require a transfer at Deansgate-Castlefield and take an average of 5h 59m. The schedules shown below are for the next available departures.



5h 54m • 3 changes


5h 20m • 3 changes


4h 51m • 3 changes


5h 1m • 3 changes


10h 29m • 3 changes


5h 54m • 3 changes


5h 20m • 3 changes


4h 51m • 3 changes


10h 29m • 3 changes


5h 54m • 3 changes


5h 20m • 3 changes


4h 51m • 3 changes


10h 29m • 3 changes


5h 54m • 3 changes


5h 20m • 3 changes


4h 51m • 3 changes


9h 59m • 3 changes


5h 54m • 3 changes


5h 20m • 3 changes


4h 51m • 3 changes


9h 59m • 3 changes


5h 10m • 3 changes


5h 1m • 3 changes


5h 53m • 3 changesWant to know about travelling from Oldham 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 Oldham to Perth. However, there are services departing from Deansgate station and arriving at Perth station via Preston station and Glasgow Central station. The journey, including transfers, takes approximately 5h 59m.
Oldham to Perth train services, operated by Northern Trains Limited, depart from Deansgate station.
Oldham to Perth train services, operated by ScotRail, arrive at Perth station.
The distance between Oldham and Perth is 328.3 km. The road distance is 398 km.
You can take a vehicle from Oldham King Street to Perth via Deansgate-Castlefield, Deansgate, Preston, Glasgow Central, and Glasgow Queen Street in around 5h 59m.