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

1h 1m • 1 change

1h 57m • 1 change
Arrives next day

8h 14m • 1 change

2h 5m • 1 change

1h 48m • 1 change

1h 28m • 1 change

1h 40m • 1 change

2h 5m • 1 change

1h 48m • 1 change

1h 28m • 1 change

1h 40m • 1 change

2h 35m • 1 change

1h 35m • 1 change

2h 5m • 1 change

2h 5m • 1 change
Want to know about travelling from Portknockie 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 Portknockie to Elgin. However, there are services departing from Portknockie station and arriving at Elgin station via Shanks Lane. The journey, including transfers, takes approximately 2h 22m.
Portknockie to Elgin bus services, operated by Moray Council, depart from Bridge Street station.
Portknockie to Elgin bus services, operated by Moray Council, arrive at Bus Station.
The distance between Portknockie and Elgin is 28 km. The road distance is 35 km.
You can take a bus from Bridge Street to Bus Station via Shanks Lane in around 1h 25m.