Perth to St Andrews by Train and Bus

By St Andrews Guide editors · Updated 22 October 2026

From Perth the journey is two short train rides and a bus. ScotRail’s train from Perth to Dundee takes about 22 minutes with one stop; at Dundee you change for a 12-minute ride to Leuchars; and the 77 or 99 bus reaches St Andrews 12 minutes after that. On the typical journey the waits add up to about 25 minutes across the two changes, for a total of roughly an hour and ten minutes, and the best connections get it under an hour.

Departure times

On the weekday we checked, this connection ran every 30 to 60 minutes or so from 06:03 to 21:45, but unevenly. There was a cluster early on, at 06:03, 06:37 and 06:57, and the next on this pattern was the 08:41. A second set of Leuchars connections, leaving Perth at 07:16, 08:06 and then roughly hourly until 23:11, took about the same time, around 74 minutes, and fills that gap, so between the two there is something from Perth in most hours of the day. The 06:03 is in St Andrews at about 07:15, and the 23:11, the last, at nearly half past midnight.

By road the trip is 35 miles via the A90, about 54 minutes, so a car saves around a quarter of an hour on the typical journey.

Via Cupar

Some journeys swap the train to Leuchars for a train to Cupar and a bus from there. They left Perth at the same times as several of that second set of Leuchars connections, such as 07:16, 10:14 and 19:13, but took about ten minutes longer, so there is little reason to pick them over the Leuchars bus.

Arriving

From where the bus drops you in St Andrews, Market Street is around 500 metres away, a seven-minute walk.

The Journey

Journey times and changes below come from the rail and bus timetables for Tuesday 1 December 2026. Weekend and holiday timetables differ, so check the day you travel.

Train to Leuchars, then bus

57 min at best, usually about 1h 10m · 2 changes

  1. Train Perth → Dundee ScotRail · 22 min
  2. Change at Dundee
  3. Train Dundee → Leuchars ScotRail, LNER · 12 min
  4. Change at Leuchars
  5. Bus Leuchars → St Andrews Stagecoach, Moffat & Williamson · service 77 or 99 · 12 min

From Perth on the weekday we checked: every 30 to 60 minutes or so between 06:03 and 21:45.

Driving Instead

By road it is about 35 miles from Perth to St Andrews, mostly via the A90 — roughly 54 min with clear roads. Car parks in St Andrews are listed on the Getting Here page.

↑