The average train between Batu Gajah and Batu Caves takes 2h 38m and the fastest train takes 2h 16m. The train service runs several times per day from Batu Gajah to Batu Caves. 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 2 hours between Batu Gajah and Batu Caves. The earliest departure is at 5:13 AM in the morning, and the last departure from Batu Gajah is at 8:40 PM which arrives into Batu Caves at 11:01 PM. All services require a transfer at Sungai Buloh and take an average of 2h 38m. The schedules shown below are for the next available departures.


2h 21m • 2 changes

2h 27m • 2 changes

3h 1m • 2 changes

2h 48m • 2 changes

2h 28m • 2 changes

2h 31m • 2 changes

2h 36m • 2 changes

2h 31m • 2 changes

2h 28m • 2 changes

2h 31m • 2 changes

2h 36m • 2 changes

2h 31m • 2 changes

3h 28m • 2 changes

2h 51m • 2 changes

2h 21m • 2 changes

2h 33m • 2 changes

3h 28m • 2 changes

2h 51m • 2 changes

2h 21m • 2 changes

2h 33m • 2 changes

2h 28m • 2 changes

2h 31m • 2 changes

2h 36m • 2 changes

2h 31m • 2 changes

2h 28m • 2 changes

2h 31m • 2 changes

2h 36m • 2 changes

2h 31m • 2 changesWant to know about travelling from Batu Gajah to Batu Caves? 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 Batu Gajah to Batu Caves. However, there are services departing from Batu Gajah station and arriving at Sungai Buloh station via Sungai Buloh station. The journey, including transfers, takes approximately 2h 38m.
Batu Gajah to Batu Caves train services, operated by KTM Intercity, depart from Batu Gajah station.
Batu Gajah to Batu Caves train services, operated by KTM Intercity, arrive at Sungai Buloh station.
The distance between Batu Gajah and Batu Caves is 154.4 km. The road distance is 186 km.
KTM Intercity operates a train from Batu Gajah to Sungai Buloh hourly. Tickets cost RM 4–29 and the journey takes 1h 44m. KTM ETS also services this route hourly.