Travelling from Perth to Glasgow by train
The fastest trains from Perth to Glasgow take around 59 minutes, covering a distance of approximately 78 kilometres. There are frequent services on the rail route between Perth and Glasgow.
Direct trains run between Perth and Glasgow.
We usually find around 28 direct trains on the route from Perth to Glasgow every weekday.
There are typically fewer departures at weekends, when we found around 22 departures. The duration is normally about 59 minutes, whatever time you make the journey.
On weekdays the earliest direct train to Glasgow is usually scheduled to depart Perth around 05:18 and the last train is around 22:38. This is the same at the weekend.
When to book Perth to Glasgow train tickets?
The earlier you book the better, and the cheapest tickets we've found for trains from Perth to Glasgow are £7.70.
Trains departing 30 days in advance will cost around £7 while booking 7 days in advance the price is around £9. Booking on the day of travel is likely to be more expensive, so it is worth booking in advance if you can to save money.
Trains in the UK usually open for booking around 3 months in advance. If booking is not yet open for your dates then you can set a booking alert to receive an email on the day that the cheapest tickets are released for your journey from Perth to Glasgow by train.
Which trains operate between Perth and Glasgow?
ScotRail is the rail operator that operates on the route from Perth to Glasgow.
You can check which train you’ll be travelling on by looking for the train name in search results.
Other journeys to Glasgow View all journeys to Glasgow
- From Weymouth from £55.00
- From Doncaster from £21.50
- From Skegness from £30.10
- From Wolverhampton from £16.00
- From Oxford from £80.30
- From Crewe from £12.00
Image credits: © Gordon Saunders
- London to Brussels trains
- Reading to Bournemouth trains
- Florence to Verona trains
- Paris to Milan trains
- Glasgow to Coventry trains
- Brussels to Amsterdam trains
- Amsterdam to London trains
- Bordeaux to Marseille trains
- Milan to Florence trains
- Darlington to Birmingham trains
- London to Geneva trains
- Milan to Pisa trains
- London to Munich trains
- Barcelona to Bilbao-Abando trains
- London to Florence trains
- Lyon to Barcelona trains
- Leeds to Stevenage trains
- Milan to Trieste Centrale trains
- London to Nice trains
- London to Bruges trains
- Brussels to London trains
- Madrid to Barcelona trains
- Madrid to Seville trains
- Brussels to Cologne trains
- Bilbao-Abando to Madrid trains
- Zurich to Milan trains
- Munich to Venice trains
- Madrid to Bilbao-Abando trains
- Venice to Verona trains
- Riomaggiore to Rome trains
- London to Amsterdam trains
- Verona to Milan trains
- London to Stuttgart trains
- Milan to Bergamo trains
- Paris to Prague trains
- Milan to Rome trains
- London to Antwerpen trains
- Reading to Bath Spa trains
- London to Salzburg trains
- Paris to Toulouse trains
- Middlesbrough to Edinburgh (Waverley, city centre) trains
- Plymouth to Birmingham trains
- Naples to Palermo Centrale trains
- Paris to Zurich trains
- London to Rotterdam trains
- Brussels to Rotterdam trains
- Geneva to Milan trains
- Ipswich to Norwich trains
- Munich to Salzburg trains
- Grantham to York trains
- Brussels to Vienna trains
- Pisa to Bologna trains
- London to Copenhagen trains
- London to Bordeaux trains
- Berlin to Warsaw trains
- Birmingham to High Wycombe trains
- Milan to Bari S. Spirito trains
- Brussels to Berlin trains
- Paris to Amsterdam trains
- London to Verona trains