There are 5 ways to get from Surabaya to Batam by plane, train, bus, ferry, or shuttle
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly
best- Fly from Juanda International Airport (SUB) to Hang Nadim International Airport (BTH)SUB - BTH
2h 51mRp 1,703,104–2,243,668Bus, ferry
cheapest- Take the bus from Surabaya Kota to DAMRI Bus Station JakartaSurabaya Kota - Jakarta
- Take the ferry from Port of Tanjung Priok to Batu AmparKM Kelud
2d 1hRp 666,722–1,349,727Train, bus, ferry
- Take the train from Surabaya Pasar Turi to Jakarta Gambir
- Take the bus from Gambir Station to Jakarta Airport
- Take the ferry from Port of Tanjung Priok to Batu Ampar
2dRp 733,000–1,405,512Train, ferry
- Take the train from Surabaya Pasar Turi to Pasar SenenDharmawangsa / ...
- Take the ferry from Port of Tanjung Priok to Batu AmparKM Kelud
2d 3hRp 713,500–908,202Shuttle, bus, ferry
- Take a shuttle bus from Surabaya to Kudus
- Take the bus from Kudus to Jakarta Kampung Rambutan Bus Station
- Take the ferry from Port of Tanjung Priok to Batu Ampar
2d 7hRp 818,500–1,213,500
Juanda International Airport (SUB) to Hang Nadim International Airport (BTH) flights
Questions & Answers
The cheapest way to get from Surabaya to Batam is to train and ferry which costs Rp700000 - Rp950000 and takes 2 days 3h.
The fastest way to get from Surabaya to Batam is to fly which takes 2h 51m and costs Rp1700000 - Rp2300000.
The distance between Surabaya and Batam is 1385 km.
The best way to get from Surabaya to Batam without a car is to train and bus and ferry which takes 2 days 0h and costs Rp700000 - Rp1500000.
It takes approximately 2h 51m to get from Surabaya to Batam, including transfers.
There are 1009+ hotels available in Batam.
What companies run services between Surabaya, Indonesia and Batam, Indonesia?
Citilink Indonesia, Lion Mentari Airlines, and two other airlines fly from Juanda International Airport (SUB) to Hang Nadim International Airport (BTH) every 4 hours.
- Website
- lionair.co.id
Flights from Juanda International Airport to Hang Nadim International Airport
- Ave. Duration
- 2h 10m
- When
- Every day
- Estimated price
- Rp 1,600,000–6,500,000
Flights from Juanda International Airport to Hang Nadim International Airport via Supadio
- Ave. Duration
- 4h
- When
- Every day
- Estimated price
- Rp 1,600,000–6,500,000
Flights from Juanda International Airport to Hang Nadim International Airport via Sultan Syarif Kasim II
- Ave. Duration
- 4h 35m
- When
- Tuesday, Thursday, and Saturday
- Estimated price
- Rp 1,600,000–6,500,000
- Website
- citilink.co.id
Flights from Juanda International Airport to Hang Nadim International Airport
- Ave. Duration
- 2h 20m
- When
- Every day
- Estimated price
- Rp 1,500,000–1,900,000
Flights from Juanda International Airport to Hang Nadim International Airport via Soekarno–Hatta
- Ave. Duration
- 4h 37m
- When
- Every day
- Estimated price
- Rp 1,500,000–1,900,000
- Website
- batikair.com
Flights from Juanda International Airport to Hang Nadim International Airport via Soekarno–Hatta
- Ave. Duration
- 4h 45m
- When
- Every day
- Estimated price
- Rp 1,800,000–4,700,000
- Website
- garuda-indonesia.com
Flights from Juanda International Airport to Hang Nadim International Airport via Soekarno–Hatta
- Ave. Duration
- 5h 5m
- When
- Every day
- Estimated price
- Rp 2,000,000–6,500,000
Train from Surabaya Pasar Turi to Jakarta Gambir
- Ave. Duration
- 7h 45m
- Frequency
- 4 times a day
- Estimated price
- Rp 320,000–440,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 320,000–440,000
- Business
- Rp 490,000–550,000
- Executive
- Rp 700,000–1,100,000
Train from Surabaya Pasar Turi to Pasar Senen
- Ave. Duration
- 10h 1m
- Frequency
- 5 times a day
- Estimated price
- Rp 320,000–440,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 320,000–440,000
- Business
- Rp 490,000–550,000
- Executive
- Rp 700,000–1,100,000
- 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 Surabaya Kota to DAMRI Bus Station Jakarta
- Ave. Duration
- 10h
- Frequency
- Once daily
- Estimated price
- Rp 210,000–800,000
- Book at
- https://12go.asia/en/operator/damri
- Phone
- 021-79171717
- Website
- bluebirdgroup.com
Bus from Gambir Station to Jakarta Airport
- Ave. Duration
- 57 min
- Frequency
- Hourly
- Estimated price
- Rp 75,000
- Schedules at
- bluebirdgroup.com
- contact@indahjayatrans.com
- Website
- indahjayatrans.com
Shuttle from Surabaya to Kudus
- Ave. Duration
- 2h 26m
- Frequency
- Twice daily
- Estimated price
- Rp 220,000–300,000
- Schedules at
- indahjayatrans.com
- Phone
- +62291440019
- cs@nu3tara.com
- Website
- nu3tara.com
Bus from Kudus to Jakarta Kampung Rambutan Bus Station
- Ave. Duration
- 10h 19m
- Frequency
- Twice daily
- Estimated price
- Rp 200,000–440,000
- Book at
- https://12go.asia/en/operator/nusantara
- 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
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 London Underground: Essential tips to navigate the Tube, How to get from London to Edinburgh, and Getting to Rome from the airport - to help you get the most out of your next trip.














