The average train between Edinburgh and Keith Station takes 4h 41m and the fastest train takes 3h 33m. The train service runs several times per day from Edinburgh to Keith Station. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Trains run every 3 hours between Edinburgh and Keith Station. The earliest departure is at 5:30 AM in the morning, and the last departure from Edinburgh is at 9:30 PM which arrives into Keith Station at 11:09 AM. All services require a transfer, and take on average 4h 41m. The schedules shown below are for the next available departures.

3h 59m • 1 change

4h 46m • 1 change

3h 33m • 1 change

4h 20m • 1 change

3h 59m • 1 change

4h 46m • 1 change

3h 33m • 1 change

4h 20m • 1 change

3h 59m • 1 change

4h 46m • 1 change

3h 33m • 1 change

4h 20m • 1 change

4h 31m • 1 change

3h 58m • 1 change

4h 32m • 1 change

4h 5m • 1 change

3h 59m • 1 change

4h 46m • 1 change

3h 33m • 1 change

4h 20m • 1 change
Want to know about travelling from Edinburgh to Keith Station? 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 train from Edinburgh to Keith Station. However, there are services departing from Edinburgh station and arriving at Keith Station station via Aberdeen. The journey, including transfers, takes approximately 4h 41m.
Edinburgh to Keith Station train services, operated by ScotRail, depart from Edinburgh Waverley station.
Edinburgh to Keith Station train services, operated by ScotRail, arrive at Keith station.
Book your Edinburgh to Keith Station train tickets online with ScotRail and London North Eastern Railway Limited (LNER).
The distance between Edinburgh and Keith Station is 178.5 km. The road distance is 290 km.
You can take a train from Edinburgh Waverley to Keith via Aberdeen in around 4h 34m.