There are 7 ways to get from Batam to Surabaya by plane, train, ferry, bus, 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 to Juanda International Airport, train
best- Fly from Hang Nadim International Airport (BTH) to Juanda International Airport (SUB)plane BTH - SUB
- Take the train from Waru to Surabaya Gubengtrain
5h 22mRp 1,929,490–3,111,807Ferry, bus
cheapest- Take the ferry from Batu Ampar to Port of Tanjung Priokferry KM Kelud
- Take the bus from DAMRI Bus Station Jakarta to Surabaya Kotabus Jakarta - Surabaya Kota
47h 58mRp 685,760–1,377,900Ferry, train via Jakarta
- Take the ferry from Batu Ampar to Port of Tanjung Priokferry KM Kelud
- Take the train from Jakarta Gambir to Surabaya Pasar Turitrain Argo Bromo Anggrek / ...
47h 16mRp 720,261–927,401Fly to Abdul Rachman Saleh Airport, train
- Fly from Hang Nadim International Airport (BTH) to Abdul Rachman Saleh Airport (MLG)plane BTH - MLG
- Take the train from Lawang to Gubengtrain
7h 39mRp 2,754,990–4,471,807Fly to Ahmad Yani, train
- Fly from Hang Nadim International Airport (BTH) to Ahmad Yani (SRG)plane BTH - SRG
- Take the train from Semarang Tawang to Surabaya Pasar Turitrain
6h 23mRp 2,349,990–3,361,807Ferry, train
- Take the ferry from Batu Ampar to Port of Tanjung Priokferry KM Kelud
- Take the train from Pasar Senen to Surabaya Pasar Turitrain Gumarang / ...
2d 2hRp 714,261–911,401Ferry, bus, shuttle
- Take the ferry from Batu Ampar to Port of Tanjung Priokferry
- Take the bus from Jakarta Kampung Rambutan Bus Station to Kudusbus
- Take a shuttle bus from Kudus to Surabaya
2d 6hRp 814,261–1,211,401
Hang Nadim International Airport (BTH) to Juanda International Airport (SUB) flights
Questions & Answers
The cheapest way to get from Batam to Surabaya is to ferry and train which costs Rp700000 - Rp950000 and takes 2 days 2h.
The fastest way to get from Batam to Surabaya is to fly and train which takes 5h 22m and costs Rp1900000 - Rp3200000.
The distance between Batam and Surabaya is 1389 km.
The best way to get from Batam to Surabaya without a car is to ferry and train via Jakarta which takes 47h 16m and costs Rp700000 - Rp950000.
It takes approximately 5h 22m to get from Batam to Surabaya, including transfers.
There are 979+ hotels available in Surabaya.
What companies run services between Batam, Indonesia and Surabaya, Indonesia?
There is no direct connection from Batam to Surabaya. However, you can take the taxi to Hang Nadim International Airport (BTH) airport, fly to Juanda International Airport (SUB), walk to Juanda Surabaya Airport, take the bus to Surabaya Bungurasih Bus Station, walk to Waru, then take the train to Surabaya Gubeng. Alternatively, you can take a ferry from Batu Ampar to Surabaya Pasar Turi via Port of Tanjung Priok, Tanjung Priok, Jakarta Kota, Gondangdia, Selatan St. Gondangdia, Gambir 3, and Jakarta Gambir in around 47h 16m.
- Website
- batikair.com
Flights from Hang Nadim International Airport to Juanda International Airport via Soekarno–Hatta
- Ave. Duration
- 4h 20m
- When
- Every day
- Estimated price
- Rp 1,900,000–5,500,000
Flights from Hang Nadim International Airport to Abdul Rachman Saleh Airport via Soekarno–Hatta
- Ave. Duration
- 5h 52m
- When
- Every day
- Estimated price
- Rp 2,500,000–8,500,000
Flights from Hang Nadim International Airport to Ahmad Yani via Soekarno–Hatta
- Ave. Duration
- 4h
- When
- Every day
- Estimated price
- Rp 2,200,000–6,000,000
- Website
- citilink.co.id
Flights from Hang Nadim International Airport to Juanda International Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- Rp 1,800,000–2,400,000
Flights from Hang Nadim International Airport to Juanda International Airport via Soekarno–Hatta
- Ave. Duration
- 4h 27m
- When
- Every day
- Estimated price
- Rp 1,800,000–2,400,000
Flights from Hang Nadim International Airport to Ahmad Yani via Soekarno–Hatta
- Ave. Duration
- 4h 50m
- When
- Every day
- Estimated price
- Rp 2,100,000–2,800,000
- Website
- garuda-indonesia.com
Flights from Hang Nadim International Airport to Juanda International Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- Rp 1,800,000–2,400,000
Flights from Hang Nadim International Airport to Juanda International Airport via Soekarno–Hatta
- Ave. Duration
- 5h 10m
- When
- Every day
- Estimated price
- Rp 1,600,000–5,500,000
Flights from Hang Nadim International Airport to Ahmad Yani via Soekarno–Hatta
- Ave. Duration
- 4h 27m
- When
- Every day
- Estimated price
- Rp 1,800,000–6,000,000
- Website
- lionair.co.id
Flights from Hang Nadim International Airport to Juanda International Airport
- Ave. Duration
- 2h 15m
- When
- Every day
- Estimated price
- Rp 1,800,000–2,400,000
- Website
- superairjet.com
Flights from Hang Nadim International Airport to Ahmad Yani
- Ave. Duration
- 2h
- When
- Every day
- Estimated price
- Rp 1,700,000–3,800,000
- Phone
- 021-121
- [email protected]
- Website
- kai.id
Train from Waru to Surabaya Gubeng
- Ave. Duration
- 21 min
- Frequency
- Every 4 hours
- Estimated price
- Rp 6,000–320,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 6,000–320,000
- Business
- Rp 280,000–550,000
- Executive
- Rp 11,000–650,000
Train from Jakarta Gambir to Surabaya Pasar Turi
- 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 Lawang to Gubeng
- Ave. Duration
- 1h 26m
- Frequency
- Once daily
- Estimated price
- Rp 45,000–320,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 45,000–320,000
- Business
- Rp 300,000–550,000
- Executive
- Rp 80,000–650,000
Train from Semarang Tawang to Surabaya Pasar Turi
- Ave. Duration
- 2h 53m
- Frequency
- Every 3 hours
- Estimated price
- Rp 160,000–330,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 160,000–330,000
- Business
- Rp 370,000–550,000
- Executive
- Rp 310,000–700,000
Train from Pasar Senen to Surabaya Pasar Turi
- Ave. Duration
- 10h 28m
- 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
- [email protected]
- Website
- damri.co.id
Bus from DAMRI Bus Station Jakarta to Surabaya Kota
- Ave. Duration
- 10h
- Frequency
- Once daily
- Estimated price
- Rp 210,000–800,000
- Book at
- https://12go.asia/en/operator/damri
- Phone
- +62291440019
- [email protected]
- Website
- nu3tara.com
Bus from Jakarta Kampung Rambutan Bus Station to Kudus
- Ave. Duration
- 10h 18m
- Frequency
- Twice daily
- Estimated price
- Rp 200,000–440,000
- Book at
- https://12go.asia/en/operator/nusantara
- [email protected]
- Website
- indahjayatrans.com
Shuttle from Kudus to Surabaya
- Ave. Duration
- 2h 27m
- Frequency
- Twice daily
- Estimated price
- Rp 220,000–300,000
- Schedules at
- indahjayatrans.com
- Phone
- +62 811-1621-162
- [email protected]
- Website
- facebook.com
Ferry from Batu Ampar to Port of Tanjung Priok
- Ave. Duration
- 36h 45m
- Frequency
- Once daily
- Estimated price
- Rp 390,000–470,000
- Schedules at
- pelni.co.id
- Economy Class
- Rp 390,000–470,000
Ferry from Batu Ampar to Port of Tanjung Priok
- Ave. Duration
- 36h 45m
- Frequency
- Once daily
- Estimated price
- Rp 390,000–470,000
- Schedules at
- pelni.co.id
- Economy Class
- Rp 390,000–470,000
Ferry from Batu Ampar to Port of Tanjung Priok
- Ave. Duration
- 36h 45m
- Frequency
- Once daily
- Estimated price
- Rp 390,000–470,000
- Schedules at
- pelni.co.id
- Economy Class
- Rp 390,000–470,000
Ferry from Batu Ampar to Port of Tanjung Priok
- Ave. Duration
- 36h 45m
- 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 How to get from Heathrow Airport into central London, Want to know more about Flixbus?, and Need to know: Greyhound - to help you get the most out of your next trip.
















