The average bus between Haddington and Perth takes 2h 28m and the fastest bus takes 2h 9m. The bus service runs several times per day from Haddington 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 every 4 hours between Haddington and Perth. The earliest departure is at 7:34 AM in the morning, and the last departure from Haddington is at 9:58 PM which arrives into Perth at 12:15 AM. All services require a transfer, and take on average 2h 28m. The schedules shown below are for the next available departures.

2h 22m • 1 change
2h 35m • 1 change
2h 35m • 1 change
2h 48m • 1 change
2h 22m • 1 change
2h 35m • 1 change
2h 35m • 1 change
2h 48m • 1 change
2h 22m • 1 change
2h 35m • 1 change
2h 35m • 1 change
2h 48m • 1 change
2h 22m • 1 change
2h 35m • 1 change
2h 35m • 1 change
2h 48m • 1 change
2h 17m • 1 change
2h 17m • 1 change
2h 25m • 1 change
2h 19m • 1 change
2h 56m • 1 change
2h 22m • 1 change
2h 22m • 1 change
2h 36m • 1 changeWant to know about travelling from Haddington 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 Haddington to Perth. However, there are services departing from Police Station and arriving at Bus Station via Queensferry Street station. The journey, including transfers, takes approximately 2h 28m.
Haddington to Perth bus services, operated by East Coast Buses, depart from Police Station.
Haddington to Perth bus services, operated by Scottish Citylink Coaches Ltd, arrive at Bus Station.
The distance between Haddington and Perth is 63.4 km. The road distance is 98 km.
You can take a bus from Police Station to Bus Station via Queensferry Street in around 3h 11m.