The average bus between Grantown-on-Spey and Perth takes 3h 9m and the fastest bus takes 2h 38m. The bus service runs several times per day from Grantown-on-Spey 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.
Buses run every 4 hours between Grantown-on-Spey and Perth. The earliest departure is at 7:06 AM in the morning, and the last departure from Grantown-on-Spey is at 10:16 PM which arrives into Perth at 12:54 AM. All services require a transfer, and take on average 3h 9m. The schedules shown below are for the next available departures.

3h 16m • 1 change

2h 52m • 1 change

3h 31m • 1 change

2h 56m • 1 change

3h 16m • 1 change

3h 50m • 1 change

3h 31m • 1 change

2h 58m • 1 change

3h 32m • 1 change

4h 29m • 1 change

3h 4m • 1 change

4h 19m • 1 change

3h 4m • 1 change

2h 52m • 1 change

3h 21m • 1 change

3h 3m • 1 change

3h 16m • 1 change

2h 52m • 1 change

3h 31m • 1 change

3h 3m • 1 change

3h 16m • 1 change

2h 52m • 1 change

3h 31m • 1 change

3h 3m • 1 change
Want to know about travelling from Grantown-on-Spey 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 bus from Grantown-on-Spey to Perth. However, there are services departing from Grantown-on-Spey station and arriving at Perth station via Station station. The journey, including transfers, takes approximately 3h 9m.
Grantown-on-Spey to Perth bus services, operated by Stagecoach North Scotland, depart from The Square station.
Grantown-on-Spey to Perth bus services, operated by Stagecoach North Scotland, arrive at Perth station.
The distance between Grantown-on-Spey and Perth is 104.5 km. The road distance is 163 km.
You can take a bus from The Square to Perth station via Aviemore station in around 3h 26m.