There are 6 ways to get from Perth to Halkirk 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 Halkirkbus Ember
6h 44m£40–93Bus via Bus Terminal
cheapest- Take the bus from Bus Station to Bus Station Stance 3bus Uk093 / ...
- Take the bus from Bus Station Stance 3 to Bus Terminalbus X99
7h 11m£21–44Train
- Take the train from Perth to Invernesstrain Edinburgh - Inverness / ...
- Take the train from Inverness to Georgemas Junctiontrain Inverness - Wick
7h 4m£90–180Drive 213.5 mi
- Drive from Perth to Halkirkcar 213.5 mi
4h 26m£53–77Bus
- Take the bus from Perth station to Inverness Union Streetbus Ember
- Take the bus from Inverness Union Street to Halkirkbus Ember
7h 1m£26–36Train, bus via Bus Terminal
- Take the train from Perth to Invernesstrain Edinburgh - Inverness / ...
- Take the bus from Bus Station Stance 3 to Bus Terminalbus X99
7h 9m£31–78
Perth to Halkirk by train and bus
Comparing Your Travel Options
The cheapest way to get from Perth to Halkirk is to bus via Bus Terminal which costs £21 - £45 and takes 7h 11m.
The fastest way to get from Perth to Halkirk is to drive which takes 4h 26m and costs £50 - £80.
No, there is no direct bus from Perth station to Halkirk. However, there are services departing from Perth station and arriving at Halkirk via Inverness Union Street. The journey, including transfers, takes approximately 7h 1m.
No, there is no direct train from Perth to Halkirk. However, there are services departing from Perth and arriving at Georgemas Junction via Inverness. The journey, including transfers, takes approximately 7h 4m.
The distance between Perth and Halkirk is 245 miles. The road distance is 214.7 miles.
The best way to get from Perth to Halkirk without a car is to train and bus which takes 6h 44m and costs £35 - £95.
It takes approximately 6h 44m to get from Perth to Halkirk, including transfers.
Perth to Halkirk bus services, operated by Ember, depart from Perth station.
Perth to Halkirk train services, operated by ScotRail, depart from Perth station.
The best way to get from Perth to Halkirk is to train which takes 7h 4m and costs £85 - £180. Alternatively, you can bus, which costs £25 - £40 and takes 7h 1m.
What companies run services between Perth, Scotland and Halkirk, Scotland?
You can take a train from Perth to Halkirk via Inverness and Georgemas Junction in around 7h 4m. Alternatively, you can take a bus from Perth station to Halkirk via Inverness Union Street in around 7h 1m.
- 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 Georgemas Junction
- Ave. Duration
- 3h 36m
- Frequency
- 3 times a day
- Estimated price
- £55–95
- 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 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)
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
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 Halkirk
- Ave. Duration
- 3h 21m
- Frequency
- 3 times a day
- Estimated price
- £13–19
- Website
- Ember
Bus from Perth station to Inverness Union Street
- Ave. Duration
- 2h 40m
- Frequency
- Hourly
- Estimated price
- £12–18
- Website
- Ember
Bus from Inverness Union Street to Halkirk
- Ave. Duration
- 3h 21m
- Frequency
- 3 times a day
- Estimated price
- £13–19
- Website
- Ember
- Phone
- 0345 241 8000
- Website
- Stagecoach North Scotland
Bus from Bus Station Stance 3 to Bus Terminal
- Ave. Duration
- 2h 57m
- Frequency
- Every 3 hours
- Estimated price
- £2
- Website
- Stagecoach North Scotland
Bus from Bus Station Stance 3 to Bus Terminal
- Ave. Duration
- 2h 57m
- Frequency
- Every 3 hours
- Estimated price
- £2
- Website
- Stagecoach North Scotland
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
- Every 2 hours
- Estimated price
- £12–20
- Website
- Flixbus
- 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 2 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
- Every 4 hours
- Estimated price
- £17–24
- Website
- Park's of Hamilton
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 Halkirk bus services, operated by Ember, arrive at Inverness Union Street station.
Perth to Halkirk train services, operated by ScotRail, arrive at Inverness station.
Yes, the driving distance between Perth to Halkirk is 215 miles. It takes approximately 4h 26m to drive from Perth to Halkirk.
There are 186+ hotels available in Halkirk.






















