There are 8 ways to get from Batam to Batu Caves by plane, train, ferry, bus, or subway
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly Hang Nadim International Airport to Kuala Lumpur International Airport, train
best- Fly from Hang Nadim International Airport (BTH) to Kuala Lumpur International Airport (KUL)plane BTH - KUL
- Take the train from Klia T2 to KL Sentraltrain
4h 25mRM 229–531Ferry, train
cheapest- Take the ferry from Batam Centre to Berjaya Waterfront Ferry Terminal Johor Bahruferry
- Take the train from Jb Sentral to Kl Sentraltrain Ets
8h 19mRM 114–168Ferry, bus via Kl117 Bsn Lebuh Ampang
- Take the ferry from Batam Harbour Bay Ferry Terminal to HarbourFrontferry
- Take the bus from Golden Mile Complex to Berjaya Times Squarebus Golden Mile Complex
8h 20mRM 182–290Ferry to Senai International Airport, fly to Sultan Abdul Aziz Shah, train
- Take the ferry from Batam Centre to Berjaya Waterfront Ferry Terminal Johor Bahruferry
- Fly from Senai International Airport (JHB) to Sultan Abdul Aziz Shah (SZB)plane JHB - SZB
- Take the train from Kuala Lumpur to Batu Cavestrain
7h 45mRM 264–526Ferry to Senai International Airport, fly to Kuala Lumpur International Airport, train
- Take the ferry from Batam Centre to Berjaya Waterfront Ferry Terminal Johor Bahruferry
- Fly from Senai International Airport (JHB) to Kuala Lumpur International Airport (KUL)plane JHB - KUL
- Take the train from Klia T2 to KL Sentraltrain
8h 9mRM 215–449Ferry, subway to Seletar Airport, fly to Sultan Abdul Aziz Shah, train
- Take the ferry from Batam Harbour Bay Ferry Terminal to HarbourFrontferry
- Take the subway from Harbourfront to Punggolsubway
- Fly from Seletar Airport (XSP) to Sultan Abdul Aziz Shah (SZB)plane XSP - SZB
- Take the train from Kuala Lumpur to Batu Cavestrain
7h 57mRM 480–1,077Ferry to Singapore Changi Airport, fly to Sultan Abdul Aziz Shah, train
- Take the ferry from Batam Centre to Tanah Merahferry
- Fly from Singapore Changi Airport (SIN) to Sultan Abdul Aziz Shah (SZB)plane SIN - SZB
- Take the train from Kuala Lumpur to Batu Cavestrain
7h 25mRM 450–1,034Ferry, bus
- Take the ferry from Batam Harbour Bay Ferry Terminal to HarbourFrontferry
- Take the bus from Golden Mile Tower Singapore to Terminal Bersepadu Selatanbus
8h 54mRM 191–289
Batam to Batu Caves by ferry, foot, bus, and train
Questions & Answers
The cheapest way to get from Batam to Batu Caves is to ferry and train which costs RM 110 - RM 170 and takes 8h 19m.
The fastest way to get from Batam to Batu Caves is to fly and train which takes 4h 25m and costs RM 220 - RM 550.
The distance between Batam and Batu Caves is 421 km.
The best way to get from Batam to Batu Caves without a car is to ferry and train which takes 8h 19m and costs RM 110 - RM 170.
It takes approximately 4h 25m to get from Batam to Batu Caves, including transfers.
Batu Caves is 1h ahead of Batam. It is currently 7:02 AM in Batam and 8:02 AM in Batu Caves.
There are 8282+ hotels available in Batu Caves.
What companies run services between Batam, Indonesia and Batu Caves, Malaysia?
There is no direct connection from Batam to Batu Caves. However, you can take the taxi to Hang Nadim International Airport (BTH) airport, fly to Kuala Lumpur International Airport (KUL), walk to Klia 1 2, take the bus to Klia2, walk to Klia T2, take the train to KL Sentral, then take the train to Batu Caves. Alternatively, you can take a ferry from Batam Centre to Batu Caves via Berjaya Waterfront Ferry Terminal Johor Bahru, Flat Sri Stulang, JB Sentral, Jb Sentral, Kl Sentral, and KL Sentral in around 8h 19m.
- Website
- fireflyz.com.my
Flights from Senai International Airport to Sultan Abdul Aziz Shah
- Ave. Duration
- 1h 3m
- When
- Every day
- Estimated price
- RM 140–600
Flights from Senai International Airport to Kuala Lumpur International Airport
- Ave. Duration
- 57 min
- When
- Every day
- Estimated price
- RM 80–360
Flights from Seletar Airport to Sultan Abdul Aziz Shah
- Ave. Duration
- 1h 20m
- When
- Every day
- Estimated price
- RM 440–900
- Phone
- +603 2267 8000
- [email protected]
- Website
- KLIA Ekspres
Train from Klia T2 to KL Sentral
- Ave. Duration
- 33 min
- Frequency
- Every 15 minutes
- Estimated price
- RM 1–75
- Website
- KLIA Ekspres
Train from Klia T2 to KL Sentral
- Ave. Duration
- 33 min
- Frequency
- Every 15 minutes
- Estimated price
- RM 1–75
- Website
- KLIA Ekspres
- Phone
- +60 111 066 1111
- [email protected]
- Website
- Billion Stars Express
Bus from Golden Mile Complex to Berjaya Times Square
- Ave. Duration
- 5h 19m
- Frequency
- Hourly
- Estimated price
- RM 70–120
- Website
- Billion Stars Express
- Phone
- +607 221 8000
- Website
- berjayawaterfront.com
Ferry from Batam Centre to Berjaya Waterfront Ferry Terminal Johor Bahru
- Ave. Duration
- 2h
- Frequency
- Hourly
- Estimated price
- RM 100
- Schedules at
- berjayawaterfront.com.my
Ferry from Batam Centre to Berjaya Waterfront Ferry Terminal Johor Bahru
- Ave. Duration
- 2h
- Frequency
- Hourly
- Estimated price
- RM 100
- Schedules at
- berjayawaterfront.com.my
Ferry from Batam Centre to Berjaya Waterfront Ferry Terminal Johor Bahru
- Ave. Duration
- 2h
- Frequency
- Hourly
- Estimated price
- RM 100
- Schedules at
- berjayawaterfront.com.my
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 How to get from Luton Airport into central London, Thanksgiving 2018: How to travel stress-free, and South Korea: Travelling from Seoul to Busan - to help you get the most out of your next trip.









