There are 7 ways to get from Java to Pulau Batam by taxi, plane, train, bus, or ferry
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Taxi to Ahmad Yani, fly
best- Take the taxi from Magelang to Ahmad Yani (SRG)
- Fly from Ahmad Yani (SRG) to Hang Nadim International Airport (BTH)SRG - BTH
3h 33mRp 1,953,070–2,639,082Bus, ferry via Bekasi
cheapest- Take the bus from Magelang Kota to Yogyakarta
- Take the bus from Yogyakarta to Bekasi
- Take the ferry from Port of Tanjung Priok to Batu Ampar
2d 7hRp 558,606–1,234,348Taxi, train, bus, ferry
- Take the taxi from Magelang to Semarang Tawang
- Take the train from Semarang Tawang to Jakarta Gambir
- Take the bus from Gambir Station to Jakarta Airport
- Take the ferry from Port of Tanjung Priok to Batu Ampar
47h 6mRp 1,047,047–1,762,328Train to Yogyakarta International Airport, fly
- Take the train from Kutoarjo to Wates
- Fly from Yogyakarta International Airport (YIA) to Hang Nadim International Airport (BTH)YIA - BTH
5h 6mRp 1,523,957–2,730,000Taxi, train, ferry
- Take the taxi from Magelang to Yogyakarta Tugu
- Take the train from Yogyakarta Tugu to Gambir Jakarta
- Take the ferry from Port of Tanjung Priok to Batu Ampar
2dRp 947,877–1,129,673Bus, train, ferry
- Take the bus from Magelang Kota to Yogyakarta
- Take the train from Yogyakarta Tugu to Jakarta Pasar Senen
- Take the ferry from Port of Tanjung Priok to Batu Ampar
2d 3hRp 756,606–1,124,348Bus, ferry
- Take the bus from Magelang Kota to Yogyakarta
- Take the bus from Yogyakarta to DAMRI Bus Station Jakarta
- Take the ferry from Port of Tanjung Priok to Batu Ampar
2d 8hRp 579,006–1,354,248
Ahmad Yani (SRG) to Hang Nadim International Airport (BTH) flights
Questions & Answers
The cheapest way to get from Java to Pulau Batam is to bus and train and ferry which costs Rp750000 - Rp1200000 and takes 2 days 3h.
The fastest way to get from Java to Pulau Batam is to taxi and fly which takes 3h 33m and costs Rp1900000 - Rp2700000.
The distance between Java and Pulau Batam is 1229 km.
The best way to get from Java to Pulau Batam without a car is to taxi and train and bus and ferry which takes 47h 6m and costs Rp1000000 - Rp1800000.
It takes approximately 3h 33m to get from Java to Pulau Batam, including transfers.
There are 805+ hotels available in Pulau Batam.
What companies run services between Java, Provinsi Jawa Tengah, Indonesia and Pulau Batam, Indonesia?
There is no direct connection from Java to Pulau Batam. However, you can take the taxi to Ahmad Yani (SRG) airport, fly to Hang Nadim International Airport (BTH), then take the taxi to Batam. Alternatively, you can take the taxi to Semarang Tawang, take the train to Jakarta Gambir, walk to Gambir Station, take the bus to Jakarta Airport, walk to Soekarno-Hatta International Airport, take the bus to Jakarta Tanjung Priok Bus Station, walk to Port of Tanjung Priok, take the ferry to Batu Ampar, then take the taxi to Batam.
- Website
- garuda-indonesia.com
Flights from Ahmad Yani to Hang Nadim International Airport via Soekarno–Hatta
- Ave. Duration
- 3h 55m
- When
- Monday to Saturday
- Estimated price
- Rp 1,800,000–6,500,000
Flights from Yogyakarta International Airport to Hang Nadim International Airport via Soekarno–Hatta
- Ave. Duration
- 4h 30m
- When
- Every day
- Estimated price
- Rp 1,100,000–6,000,000
- Website
- batikair.com
Flights from Ahmad Yani to Hang Nadim International Airport via Soekarno–Hatta
- Ave. Duration
- 4h 55m
- When
- Every day
- Estimated price
- Rp 1,500,000–4,100,000
Flights from Yogyakarta International Airport to Hang Nadim International Airport via Soekarno–Hatta
- Ave. Duration
- 4h 2m
- When
- Every day
- Estimated price
- Rp 1,400,000–4,000,000
- Website
- superairjet.com
Flights from Ahmad Yani to Hang Nadim International Airport
- Ave. Duration
- 2h
- When
- Every day
- Estimated price
- Rp 1,500,000–1,900,000
Flights from Yogyakarta International Airport to Hang Nadim International Airport
- Ave. Duration
- 2h 5m
- When
- Every day
- Estimated price
- Rp 1,400,000–1,900,000
- Website
- citilink.co.id
Flights from Ahmad Yani to Hang Nadim International Airport via Soekarno–Hatta
- Ave. Duration
- 4h 55m
- When
- Every day
- Estimated price
- Rp 1,500,000–2,200,000
- Website
- lionair.co.id
Flights from Yogyakarta International Airport to Hang Nadim International Airport via Soekarno–Hatta
- Ave. Duration
- 4h 15m
- When
- Every day
- Estimated price
- Rp 1,200,000–3,100,000
Train from Semarang Tawang to Jakarta Gambir
- Ave. Duration
- 4h 45m
- Frequency
- Every 4 hours
- Estimated price
- Rp 260,000–350,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 260,000–350,000
- Business
- Rp 430,000–550,000
- Executive
- Rp 490,000–700,000
Train from Kutoarjo to Wates
- Ave. Duration
- 22 min
- Frequency
- Every 3 hours
- Estimated price
- Rp 34,000–320,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 34,000–320,000
- Business
- Rp 290,000–550,000
- Executive
- Rp 60,000–650,000
Train from Yogyakarta Tugu to Gambir Jakarta
- Ave. Duration
- 6h 5m
- Frequency
- Every 4 hours
- Estimated price
- Rp 320,000–370,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 320,000–370,000
- Business
- Rp 460,000–550,000
- Executive
- Rp 550,000–850,000
Train from Yogyakarta Tugu to Jakarta Pasar Senen
- Ave. Duration
- 7h 12m
- Frequency
- 3 times a day
- Estimated price
- Rp 320,000–370,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 320,000–370,000
- Business
- Rp 460,000–550,000
- Executive
- Rp 550,000–850,000
- admin@prameks.com
Train from Kutoarjo to Wates
- Ave. Duration
- 40 min
- Frequency
- 4 times a day
- Schedules at
- jadwalkereta.net
- Phone
- (021) 1500 825
- humas@damri.co.id
- Website
- damri.co.id
Bus from Gambir Station to Jakarta Airport
- Ave. Duration
- 45 min
- Frequency
- Every 15 minutes
- Estimated price
- Rp 13,000–250,000
- Book at
- https://12go.asia/en/operator/damri
Bus from Magelang Kota to Yogyakarta
- Ave. Duration
- 1h
- Frequency
- Once daily
- Estimated price
- Rp 13,000–250,000
- Book at
- https://12go.asia/en/operator/damri
Bus from Yogyakarta to DAMRI Bus Station Jakarta
- Ave. Duration
- 15h
- Frequency
- Once daily
- Estimated price
- Rp 150,000–600,000
- Book at
- https://12go.asia/en/operator/damri
- Website
- bluebirdgroup.com
Bus from Gambir Station to Jakarta Airport
- Ave. Duration
- 57 min
- Frequency
- Hourly
- Estimated price
- Rp 75,000
- Schedules at
- traveloka.com
- Phone
- (0275) 641018, 641093
- Website
- sumberalam.co.id
Bus from Yogyakarta to Bekasi
- Ave. Duration
- 10h 32m
- Frequency
- Twice daily
- Estimated price
- Rp 110,000–160,000
- Schedules at
- sumberalam.co.id
- Book at
- 12go.asia
- Phone
- +62 811-1621-162
- infopelni162@pelni.co.id
- Website
- facebook.com
Ferry from Port of Tanjung Priok to Batu Ampar
- Ave. Duration
- 37h 58m
- Frequency
- Once daily
- Estimated price
- Rp 390,000–470,000
- Schedules at
- pelni.co.id
- Economy Class
- Rp 390,000–470,000
- Ave. Duration
- 1h 1m
- Estimated price
- Rp 200,000–430,000
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 The beginner’s guide to the 2018 World Nomad Games, How to get from Heathrow Airport into central London, and How to get from Stansted Airport into central London - to help you get the most out of your next trip.













