There are 5 ways to get from Perth to Nairn by bus, train, 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.
Bus
best- Take the bus from Bus Station to Bus Station Stance 3bus Uk093 / ...
3h 9m£19–42Bus via Inverness Union Street
cheapest- Take the bus from Perth station to Inverness Union Streetbus Ember
3h 24m£15–19Train via Inverness
- Take the train from Perth to Invernesstrain Edinburgh - Inverness / ...
3h 25m£32–84Drive 114.7 mi
- Drive from Perth to Nairncar 114.7 mi
2h 15m£29–42Train
- Take the train from Perth to Nairntrain Glasgow Queen Street - Inverness / ...
3h 37m£70–120
Perth to Nairn by train
Comparing Your Travel Options
The cheapest way to get from Perth to Nairn is to bus via Inverness Union Street which costs £14 - £20 and takes 3h 24m.
The fastest way to get from Perth to Nairn is to drive which takes 2h 15m and costs £28 - £45.
No, there is no direct bus from Perth station to Nairn station. However, there are services departing from Bus Station and arriving at Bus Station via Bus Station Stance 5. The journey, including transfers, takes approximately 3h 9m.
Yes, there is a direct train departing from Perth and arriving at Nairn. Services depart once daily, and operate every day. The journey takes approximately 3h 37m.
The distance between Perth and Nairn is 130 miles. The road distance is 115.3 miles.
The best way to get from Perth to Nairn without a car is to bus which takes 3h 9m and costs £19 - £45.
It takes approximately 3h 9m to get from Perth to Nairn, including transfers.
Perth to Nairn bus services, operated by FlixBus, depart from Bus Station.
Perth to Nairn train services, operated by ScotRail, depart from Perth station.
The best way to get from Perth to Nairn is to bus which takes 3h 9m and costs £19 - £45. Alternatively, you can train via Inverness, which costs £30 - £85 and takes 3h 25m.
What companies run services between Perth, Scotland and Nairn, Scotland?
FlixBus operates a bus from Bus Station to Bus Station Stance 3 hourly. Tickets cost £12–19 and the journey takes 2h 25m. Two other operators also service this route. Alternatively, ScotRail operates a train from Perth to Inverness every 3 hours. Tickets cost £45–75 and the journey takes 2h 23m. Two other operators also service this route.
- Phone
- +44 (0)344 811 0141
- Website
- ScotRail
Train from Perth to Inverness
- Ave. Duration
- 2h 23m
- Frequency
- Every 3 hours
- Estimated price
- £45–75
- Website
- ScotRail
Train from Perth to Nairn
- Ave. Duration
- 3h 37m
- Frequency
- Once daily
- Estimated price
- £70–120
- Website
- ScotRail
Rome2Rio's guide to FlixBus
Contact DetailsContact Details
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Bus Station to Bus Station Stance 3
- Ave. Duration
- 2h 25m
- Frequency
- Hourly
- Estimated price
- £12–19
- 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
Perth to Nairn bus services, operated by FlixBus, arrive at Bus Station Stance 3.
Perth to Nairn train services, operated by ScotRail, arrive at Inverness station.
Yes, the driving distance between Perth to Nairn is 115 miles. It takes approximately 2h 15m to drive from Perth to Nairn.
Book your Perth to Nairn train tickets online with Omio.
There are 938+ hotels available in Nairn.







