There are 5 ways to get from Nairn to Perth 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 via Inverness
best- Take the train from Inverness to Perthtrain Inverness - Glasgow Queen Street / ...
3h 31m£32–84Bus
cheapest- Take the bus from Inverness Union Street to Perth stationbus Ember
4h 1m£17–25Drive 114.6 mi
- Drive from Nairn to Perthcar 114.6 mi
2h 15m£29–41Train
- Take the train from Nairn to Perthtrain Inverness - Edinburgh
3h 48m£70–120Bus via Park and Ride
- Take the bus from Bus Station Stance 3 to Park and Ridebus Uk093 / ...
4h 4m£17–25
Nairn to Perth by train
Comparing Your Travel Options
The cheapest way to get from Nairn to Perth is to bus via Park and Ride which costs £17 - £25 and takes 4h 4m.
The fastest way to get from Nairn to Perth is to drive which takes 2h 15m and costs £28 - £45.
No, there is no direct bus from Nairn station to Perth station. However, there are services departing from Nairn Bus Station and arriving at Perth station via Inverness Union Street. The journey, including transfers, takes approximately 4h 1m.
Yes, there is a direct train departing from Nairn and arriving at Perth. Services depart once a week, and operate Friday. The journey takes approximately 3h 48m.
The distance between Nairn and Perth is 132 miles. The road distance is 115.2 miles.
The best way to get from Nairn to Perth without a car is to train via Inverness which takes 3h 31m and costs £30 - £85.
It takes approximately 3h 31m to get from Nairn to Perth, including transfers.
Nairn to Perth bus services, operated by Ember, depart from Inverness Union Street station.
Nairn to Perth train services, operated by ScotRail, depart from Inverness station.
The best way to get from Nairn to Perth is to train via Inverness which takes 3h 31m and costs £30 - £85. Alternatively, you can bus, which costs £17 - £26 and takes 4h 1m.
What companies run services between Nairn, Scotland and Perth, Scotland?
ScotRail operates a train from Inverness to Perth every 3 hours. Tickets cost £45–75 and the journey takes 2h 13m. Two other operators also service this route. Alternatively, Ember operates a bus from Inverness Union Street to Perth station hourly. Tickets cost £12–18 and the journey takes 2h 49m.
- Phone
- +44 (0)344 811 0141
- Website
- ScotRail
Train from Inverness to Perth
- Ave. Duration
- 2h 13m
- Frequency
- Every 3 hours
- Estimated price
- £45–75
- Website
- ScotRail
Train from Nairn to Perth
- Ave. Duration
- 3h 48m
- Frequency
- Once a week
- Estimated price
- £70–120
- Website
- ScotRail
Train from Inverness to Perth
- Ave. Duration
- 2h 2m
- Frequency
- Once daily
- Estimated price
- £35–55
- Website
- London North Eastern Railway Limited (LNER)
- Phone
- +44 330 060 0500
- Website
- Caledonian Sleeper
Train from Inverness to Perth
- Ave. Duration
- 2h 38m
- Frequency
- 6 times a week
- Estimated price
- £26–40
- Website
- Caledonian Sleeper
- Phone
- +44 (0)131 510 4007
- [email protected]
- Website
- Ember
Bus from Inverness Union Street to Perth station
- Ave. Duration
- 2h 49m
- Frequency
- Hourly
- Estimated price
- £12–18
- Website
- Ember
Rome2Rio's guide to FlixBus
Contact DetailsContact Details
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Bus Station Stance 3 to Park and Ride
- Ave. Duration
- 2h 25m
- Frequency
- Hourly
- Estimated price
- £13–20
- Website
- Flixbus
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
Want to know more about Flixbus?
Read the travel guide
Booking & Getting There
Nairn to Perth bus services, operated by Ember, arrive at Perth station.
Nairn to Perth train services, operated by ScotRail, arrive at Perth station.
Yes, the driving distance between Nairn to Perth is 115 miles. It takes approximately 2h 15m to drive from Nairn to Perth.
Book your Nairn to Perth train tickets online with Omio.
There are 563+ hotels available in Perth.

















