There are 5 ways to get from Perth to Portmahomack 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, bus
best- Take the train from Perth to Invernesstrain Edinburgh - Inverness / ...
- Take the bus from Inverness Union Street to Tain Post Officebus Ember
5h 47m£35–85Bus via Alness
cheapest- Take the bus from Bus Station to Bus Station Stance 3bus M90
6h 30m£19–26Bus
- Take the bus from Perth station to Inverness Union Streetbus Ember
- Take the bus from Inverness Union Street to Tain Post Officebus Ember
6h 17m£21–29Drive 152 mi
- Drive from Perth to Portmahomackcar 152 mi
3h 1m£38–55Train
- Take the train from Perth to Invernesstrain Edinburgh - Inverness / ...
- Take the train from Inverness to Taintrain Inverness - Wick / ...
5h 53m£45–103
Perth to Portmahomack by train and bus
Comparing Your Travel Options
The cheapest way to get from Perth to Portmahomack is to bus via Alness which costs £19 - £26 and takes 6h 30m.
The fastest way to get from Perth to Portmahomack is to drive which takes 3h 1m and costs £35 - £55.
No, there is no direct bus from Perth station to Portmahomack. However, there are services departing from Perth station and arriving at Post Office via Inverness Union Street and Post Office. The journey, including transfers, takes approximately 6h 17m.
No, there is no direct train from Perth to Portmahomack. However, there are services departing from Perth and arriving at Tain via Inverness. The journey, including transfers, takes approximately 5h 53m.
The distance between Perth and Portmahomack is 168 miles. The road distance is 152.8 miles.
The best way to get from Perth to Portmahomack without a car is to train and bus which takes 5h 47m and costs £35 - £90.
It takes approximately 5h 47m to get from Perth to Portmahomack, including transfers.
Perth to Portmahomack bus services, operated by Ember, depart from Perth station.
Perth to Portmahomack train services, operated by ScotRail, depart from Perth station.
The best way to get from Perth to Portmahomack is to bus which takes 6h 17m and costs £21 - £30. Alternatively, you can train, which costs £45 - £110 and takes 5h 53m.
What companies run services between Perth, Scotland and Portmahomack, Scotland?
You can take a bus from Perth station to Post Office via Inverness Union Street and Post Office in around 6h 17m. Alternatively, you can take a train from Perth to Post Office via Inverness, Tain, and Post Office in around 5h 53m.
- 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 Inverness
- Ave. Duration
- 2h 23m
- Frequency
- Every 3 hours
- Estimated price
- £45–75
- Website
- ScotRail
Train from Inverness to Tain
- Ave. Duration
- 1h 12m
- Frequency
- 5 times a day
- Estimated price
- £17–28
- 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)
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
Train from Perth to Inverness
- Ave. Duration
- 2h 52m
- 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 Tain Post Office
- Ave. Duration
- 1h 6m
- Frequency
- Every 4 hours
- Estimated price
- £7–10
- Website
- Ember
Bus from Perth station to Inverness Union Street
- Ave. Duration
- 2h 53m
- Frequency
- Hourly
- Estimated price
- £12–18
- Website
- Ember
Bus from Inverness Union Street to Tain Post Office
- Ave. Duration
- 1h 6m
- Frequency
- Every 4 hours
- Estimated price
- £7–10
- Website
- Ember
- Phone
- 0141 352 4444
- [email protected]
- Website
- Scottish Citylink Coaches Ltd
Bus from Bus Station to Bus Station Stance 3
- Ave. Duration
- 2h 37m
- Frequency
- Every 4 hours
- Estimated price
- £21–40
- Website
- Scottish Citylink Coaches Ltd
- Single
- £21–40
- Phone
- 01698 653164
- [email protected]
- Website
- Park's of Hamilton
Bus from Bus Station to Bus Station Stance 3
- Ave. Duration
- 2h 32m
- Frequency
- 4 times a day
- Estimated price
- £17–24
- Website
- Park's of Hamilton
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
- 3 times a week
- 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
Perth to Portmahomack bus services, operated by Ember, arrive at Inverness Union Street station.
Perth to Portmahomack train services, operated by ScotRail, arrive at Inverness station.
Yes, the driving distance between Perth to Portmahomack is 153 miles. It takes approximately 3h 1m to drive from Perth to Portmahomack.
There are 296+ hotels available in Portmahomack.






















