The average bus between Elgin and Edinburgh takes 5h 56m and the fastest bus takes 5h 20m. There is a bus service every few hours from Elgin to Edinburgh. 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 hourly between Elgin and Edinburgh. The earliest departure is at 5:37 AM in the morning, and the last departure from Elgin is at 8:37 PM which arrives into Edinburgh at 8:12 AM. All services require a transfer, and take on average 5h 56m. The schedules shown below are for the next available departures.

5h 27m • 1 change

5h 27m • 1 change

5h 33m • 1 change

5h 32m • 1 change

5h 27m • 1 change

5h 27m • 1 change

5h 27m • 1 change

5h 27m • 1 change

5h 27m • 1 change

5h 27m • 1 change

5h 33m • 1 change

5h 27m • 1 change

5h 27m • 1 change

5h 27m • 1 change

5h 27m • 1 change

5h 27m • 1 change

5h 27m • 1 change

5h 27m • 1 change

5h 27m • 1 change

5h 27m • 1 change
Want to know about travelling from Elgin to Edinburgh? 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 Elgin to Edinburgh. However, there are services departing from Elgin station and arriving at Edinburgh station via Union Square Bus Station station. The journey, including transfers, takes approximately 5h 56m.
Elgin to Edinburgh bus services, operated by Stagecoach North Scotland, depart from Bus Station.
Elgin to Edinburgh bus services, operated by Stagecoach North Scotland, arrive at Queensferry Street station.
The distance between Elgin and Edinburgh is 188.9 km. The road distance is 306 km.
You can take a bus from Bus Station to Queensferry Street via Union Square Bus Station in around 5h 38m.