The average bus between Invergarry and Perth takes 5h 51m and the fastest bus takes 3h 52m. The bus service runs several times per day from Invergarry to Perth. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Buses run 4 times a day between Invergarry and Perth. The earliest departure is at 7:05 AM in the morning, and the last departure from Invergarry is at 9:51 PM which arrives into Perth at 9:45 AM. All services require a transfer at Inverness Union Street and take an average of 5h 51m. The schedules shown below are for the next available departures.

4h 32m • 1 change

3h 52m • 1 change

3h 55m • 1 change
Arrives next day

11h 54m • 1 change

4h 32m • 1 change

3h 52m • 1 change

3h 55m • 1 change
Arrives next day

11h 54m • 1 change

4h 32m • 1 change

3h 52m • 1 change

3h 55m • 1 change
Arrives next day

11h 54m • 1 change

4h 35m • 1 change

3h 55m • 1 change

3h 56m • 1 change
Arrives next day

11h 58m • 1 change
Want to know about travelling from Invergarry to Perth? We have put together a list of the most frequently asked questions from our users such as: What is the cheapest mode of transport? What is the quickest option? How much do tickets usually cost? and many more.
No, there is no direct bus from Invergarry to Perth. However, there are services departing from Invergarry station and arriving at Perth station via Inverness Union Street. The journey, including transfers, takes approximately 5h 51m.
Invergarry to Perth bus services, operated by Ember, depart from Invergarry station.
Invergarry to Perth bus services, operated by Ember, arrive at Bus Station.
The distance between Invergarry and Perth is 112.4 km. The road distance is 247 km.
You can take a bus from Invergarry to Bus Station via Inverness Union Street and Bus Station Stance 3 in around 3h 56m.