The average bus between Perth and Dornoch takes 7h 12m and the fastest bus takes 3h 35m. The bus service runs several times per day from Perth to Dornoch. 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 twice daily between Perth and Dornoch. The earliest departure is at 10:55 AM in the morning, and the last departure from Perth is at 7:43 PM which arrives into Dornoch at 11:50 AM. All services require a transfer, and take on average 7h 12m. The schedules shown below are for the next available departures.

4h 25m • 1 change

3h 35m • 1 change
Arrives next day

16h 7m • 1 change

4h 25m • 1 change

3h 35m • 1 change
Arrives next day

16h 7m • 1 change
Want to know about travelling from Perth to Dornoch? 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 Dornoch. However, there are services departing from Perth station and arriving at Dornoch station via Bus Station Stance 3 station. The journey, including transfers, takes approximately 7h 12m.
Perth to Dornoch bus services, operated by FlixBus, depart from Bus Station.
Perth to Dornoch bus services, operated by FlixBus, arrive at Clydesdale Bank station.
The distance between Perth and Dornoch is 168.9 km. The road distance is 247 km.
You can take a bus from Bus Station to Clydesdale Bank via Bus Station Stance 3 in around 4h 25m.