There are 5 ways to get from Perth to River Spey by train, bus, or car
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train
best- Take the train from Perth to Elgintrain Glasgow Queen Street - Inverness / ...
3h 25m£108–156Drive 118.9 mi
cheapest- Drive from Perth to River Speycar 118.9 mi
2h 33m£30–44Bus via Aberdeen
- Take the bus from Seagate Bus Station to Union Square Bus Stationbus M9 / ...
- Take the bus from Union Square Bus Station to Baxters of Speysidebus 35 / ...
4h 31m£39–62Train via Inverness
- Take the train from Perth to Invernesstrain Edinburgh - Inverness / ...
- Take the train from Inverness to Elgintrain Inverness - Aberdeen / ...
4h 4m£85–151Bus
- Take the bus from Perth station to Inverness Union Streetbus Ember
- Take the bus from Inverness Union Street to Mosstodlochbus Ember
4h 47m£41–55
Comparing Your Travel Options
The cheapest way to get from Perth to River Spey is to drive which costs £29 - £45 and takes 2h 33m.
The fastest way to get from Perth to River Spey is to drive which takes 2h 33m and costs £29 - £45.
No, there is no direct bus from Perth to River Spey. However, there are services departing from South Street and arriving at Baxters of Speyside via Seagate Bus Station and Union Square Bus Station. The journey, including transfers, takes approximately 4h 31m.
No, there is no direct train from Perth to River Spey. However, there are services departing from Perth and arriving at Elgin via . The journey, including transfers, takes approximately 3h 25m.
The distance between Perth and River Spey is 170 miles. The road distance is 119.6 miles.
The best way to get from Perth to River Spey without a car is to train which takes 3h 25m and costs £100 - £160.
It takes approximately 3h 25m to get from Perth to River Spey, including transfers.
Perth to River Spey bus services, operated by Scottish Citylink Coaches Ltd, depart from Seagate Bus Station.
Perth to River Spey train services, operated by ScotRail, depart from Perth station.
The best way to get from Perth to River Spey is to train which takes 3h 25m and costs £100 - £160. Alternatively, you can bus via Aberdeen, which costs £35 - £65 and takes 4h 31m.
What companies run services between Perth, Scotland and River Spey, Scotland?
ScotRail operates a train from Perth to Elgin once daily. Tickets cost £60–110 and the journey takes 3h 9m. Alternatively, you can take a bus from South Street to River Spey via Seagate Bus Station, Union Square Bus Station, and Baxters of Speyside in around 4h 31m.
- Phone
- +44 (0)344 811 0141
- Website
- ScotRail
Train from Perth to Elgin
- Ave. Duration
- 3h 9m
- Frequency
- Once daily
- Estimated price
- £60–110
- Website
- ScotRail
Train from Perth to Inverness
- Ave. Duration
- 2h 23m
- Frequency
- Every 3 hours
- Estimated price
- £45–75
- Website
- ScotRail
Train from Inverness to Elgin
- Ave. Duration
- 41 min
- Frequency
- Hourly
- Estimated price
- £14–23
- Website
- ScotRail
Train from Perth to Inverness
- Ave. Duration
- 2h 12m
- Frequency
- Once daily
- Estimated price
- £35–55
- Website
- London North Eastern Railway Limited (LNER)
- Phone
- +44 330 060 0500
- Website
- Caledonian Sleeper
Train from Perth to Inverness
- Ave. Duration
- 2h 52m
- Frequency
- 6 times a week
- Estimated price
- £26–40
- Website
- Caledonian Sleeper
- Phone
- 0141 352 4444
- [email protected]
- Website
- Scottish Citylink Coaches Ltd
Bus from Seagate Bus Station to Union Square Bus Station
- Ave. Duration
- 1h 23m
- Frequency
- Every 30 minutes
- Estimated price
- £12–23
- Website
- Scottish Citylink Coaches Ltd
- Single
- £12–23
- Phone
- 01698 653164
- [email protected]
- Website
- Park's of Hamilton
Bus from Seagate Bus Station to Union Square Bus Station
- Ave. Duration
- 1h 23m
- Frequency
- Every 3 hours
- Estimated price
- £10–15
- Website
- Park's of Hamilton
- Phone
- 0345 241 8000
- [email protected]
- Website
- Stagecoach East Scotland
Bus from Seagate Bus Station to Union Square Bus Station
- Ave. Duration
- 2h 52m
- Frequency
- 5 times a week
- Estimated price
- £13–18
- Website
- Stagecoach East Scotland
- Phone
- 0345 241 8000
- Website
- Stagecoach North Scotland
Bus from Union Square Bus Station to Baxters of Speyside
- Ave. Duration
- 1h 51m
- Frequency
- Every 30 minutes
- Estimated price
- £2
- Website
- Stagecoach North Scotland
- Phone
- +44 (0)131 510 4007
- [email protected]
- Website
- Ember
Bus from Perth station to Inverness Union Street
- Ave. Duration
- 2h 40m
- Frequency
- Every 2 hours
- Estimated price
- £12–18
- Website
- Ember
Bus from Inverness Union Street to Mosstodloch
- Ave. Duration
- 1h 16m
- Frequency
- Hourly
- Estimated price
- £7–11
- Website
- Ember
Want to know more about travelling around United Kingdom
Rome2Rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.
Related travel guides
Travelling to the UK: What do I need to know?
Read the travel guide
Booking & Getting There
Perth to River Spey bus services, operated by Scottish Citylink Coaches Ltd, arrive at Union Square Bus Station.
Perth to River Spey train services, operated by ScotRail, arrive at Elgin station.
Yes, the driving distance between Perth to River Spey is 120 miles. It takes approximately 2h 33m to drive from Perth to River Spey.
There are 407+ hotels available in River Spey.





















