Rome2Rio

How to get fromJohor to Batu Cavesby train, bus, car, taxi, plane, or tram

Find Transport to Batu Caves

See all options

There are 9 ways to get from Johor to Batu Caves by train, bus, car, taxi, plane, or tram

Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.

  1. Train

    best
    1. Take the train from Jb Sentral to Kl Sentraltrain train Ets
    5h 22m
    RM 10–71
  2. Bus

    1. Take the bus from JB Larkin Terminal to Terminal Bersepadu Selatanbus bus Johor Bahru
    5h 57m
    RM 59–150
  3. Drive  342.4 km

    1. Drive from Johor Bahru to Batu Cavescar car 342.4 km
    3h 41m
    RM 58–84
  4. Taxi

    1. Take the taxi from Johor Bahru to Batu Cavestaxi taxi 342.4 km
    3h 41m
    RM 550–700
  5. Fly Seletar Airport to Sultan Abdul Aziz Shah, tram

    1. Fly from Seletar Airport (XSP) to Sultan Abdul Aziz Shah (SZB)plane plane XSP - SZB
    2. Take the tram from Kl Sentral to Batu Cavestram tram
    4h 18m
    RM 330–960
  6. Train, bus

    1. Take the train from JB Sentral to Kuala Lumpurtrain train Northbound
    2. Take the bus from Kl1821 Pasar Seni to Sl493 Nissanbus bus Bc2
    5h 38m
    RM 58–62
  7. Fly Senai International Airport to Sultan Abdul Aziz Shah, tram

    1. Fly from Senai International Airport (JHB) to Sultan Abdul Aziz Shah (SZB)plane plane JHB - SZB
    2. Take the tram from Kl Sentral to Batu Cavestram tram
    5h 8m
    RM 171–581
  8. Fly Senai International Airport to Kuala Lumpur International Airport, train, tram

    1. Fly from Senai International Airport (JHB) to Kuala Lumpur International Airport (KUL)plane plane JHB - KUL
    2. Take the train from Klia T2 to KL Sentraltrain train
    3. Take the tram from Kl Sentral to Batu Cavestram tram
    5h 31m
    RM 107–324
  9. Bus to Singapore Changi Airport, fly to Sultan Abdul Aziz Shah

    1. Take the bus from Johor Bahru CIQ to Expo Stnbus bus
    2. Fly from Singapore Changi Airport (SIN) to Sultan Abdul Aziz Shah (SZB)plane plane SIN - SZB
    6h 49m
    RM 292–894

Johor to Batu Caves by train and tram

Calendar147Weekly Services
Duration5h 22mAverage Duration
TicketRM 10Cheapest Price
See schedules

Comparing Your Travel Options

What companies run services between Johor, Malaysia and Batu Caves, Malaysia?

KTM Intercity operates a train from Jb Sentral to Kl Sentral hourly. Tickets cost RM 9–50 and the journey takes 4h 20m. KTM ETS also services this route every 4 hours. Alternatively, KKKL Express operates a bus from JB Larkin Terminal to Terminal Bersepadu Selatan hourly. Tickets cost RM 55–75 and the journey takes 4h 30m. Two other operators also service this route.

Airlines
Train operators
Bus operators
Other operators

Want to know more about travelling around the world?

Rome2Rio's Travel Guide series provide vital information for the global traveller. Read our range of informative guides on popular transport routes and companies - including Flying into Beijing?, Need to know: Greyhound, and Train travel in France: A guide to SNCF - to help you get the most out of your next trip.

Booking & Getting There