The average bus between Perth and Elgin takes 4h 56m and the fastest bus takes 4h 11m. The bus service runs several times per day from Perth to Elgin. 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 every 3 hours between Perth and Elgin. The earliest departure is at 8:43 AM in the morning, and the last departure from Perth is at 7:43 PM which arrives into Elgin at 5:39 AM. All services require a transfer, and take on average 4h 56m. The schedules shown below are for the next available departures.

4h 34m • 1 change
4h 34m • 1 change
4h 56m • 1 change
4h 34m • 1 change
4h 34m • 1 change
4h 34m • 1 change
4h 56m • 1 change
4h 34m • 1 change
4h 34m • 1 change
4h 34m • 1 change
4h 56m • 1 change
4h 34m • 1 change
4h 34m • 1 change
4h 34m • 1 change
4h 56m • 1 change
4h 34m • 1 change
4h 34m • 1 change
4h 34m • 1 change
4h 56m • 1 change
4h 34m • 1 change
4h 34m • 1 change
4h 34m • 1 change
4h 56m • 1 change
4h 34m • 1 changeWant to know about travelling from Perth to Elgin? 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 Perth to Elgin. However, there are services departing from Bus Station and arriving at Bus Station via Bus Station Stance 3. The journey, including transfers, takes approximately 4h 56m.
Perth to Elgin bus services, operated by Scottish Citylink Coaches Ltd, depart from Bus Station.
Perth to Elgin bus services, operated by Stagecoach North Scotland, arrive at Bus Station.
The distance between Perth and Elgin is 139.6 km. The road distance is 188 km.
You can take a bus from Bus Station to Bus Station via Bus Station Stance 5 in around 4h 33m.