There are 4 ways to get from Batam to Madura by plane, car ferry, ferry, or bus
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly, car ferry
best- Fly from Hang Nadim International Airport (BTH) to Juanda International Airport (SUB)plane BTH - SUB
- Take the car ferry from Surabaya Ujung to Kamalcarferry
5h 9mRp 2,035,990–3,171,807Ferry, car ferry via Kebonkelapa
cheapest- Take the ferry from Batu Ampar to Port of Tanjung Priokferry
- Take the ferry from Tanjung Priok to Surabayaferry
- Take the car ferry from Surabaya Ujung to Kamalcarferry
2d 20hRp 693,260–1,077,900Ferry, bus, car ferry
- Take the ferry from Batu Ampar to Port of Tanjung Priokferry
- Take the bus from DAMRI Bus Station Jakarta to Surabaya Kotabus
- Take the car ferry from Surabaya Ujung to Kamalcarferry
2d 1hRp 718,260–1,654,900Ferry, car ferry
- Take the ferry from Batam Centre to Tanah Merahferry
- Take the ferry from Tanah Merah to Sri Bintan Pura Ferry Terminalferry
- Take the ferry from Pelabuhan Sri Bayintan Kijang to Surabaya - Tanjung Perak Portferry
- Take the car ferry from Surabaya Ujung to Kamalcarferry
3d 6hRp 1,774,539–3,665,424
Hang Nadim International Airport (BTH) to Juanda International Airport (SUB) flights
Questions & Answers
The cheapest way to get from Batam to Madura is to ferry and car ferry via Kebonkelapa which costs Rp650000 - Rp1100000 and takes 2 days 20h.
The fastest way to get from Batam to Madura is to fly and car ferry which takes 5h 9m and costs Rp2000000 - Rp3200000.
No, there is no direct ferry from Batam to Madura. However, there are services departing from Batu Ampar and arriving at Kamal via Tanjung Priok and Surabaya Ujung. The journey, including transfers, takes approximately 2 days 20h.
The distance between Batam and Madura is 1401 km.
The best way to get from Batam to Madura without a car is to ferry and bus and car ferry which takes 2 days 1h and costs Rp700000 - Rp1700000.
It takes approximately 5h 9m to get from Batam to Madura, including transfers.
There are two+ hotels available in Madura.
What companies run services between Batam, Indonesia and Madura, Jawa Timur, Indonesia?
There is no direct connection from Batam to Madura. 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, take the taxi to Surabaya Ujung, then take the car ferry to Kamal. Alternatively, you can take a ferry from Batu Ampar to Kamal via Port of Tanjung Priok, DAMRI Bus Station Jakarta, Surabaya Kota, and Surabaya Ujung in around 2d 1h.
- 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,900,000–2,500,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,900,000–2,500,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
- garuda-indonesia.com
Flights from Hang Nadim International Airport to Juanda International Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- Rp 1,900,000–2,500,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,800,000–4,800,000
- 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,000,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
- +62 811-1021-191
- [email protected]
- Website
- asdp.id
Car ferry from Surabaya Ujung to Kamal
- Ave. Duration
- 30 min
- Frequency
- Hourly
- Estimated price
- Rp 2,500–240,000
- Schedules at
- ferizy.com
- Adult
- Rp 5,000
- Child
- Rp 3,500
- Bicycle
- Rp 5,000
- Motorcyle
- Rp 7,000–14,000
- Car
- Rp 46,500
Car ferry from Surabaya Ujung to Kamal
- Ave. Duration
- 30 min
- Frequency
- Hourly
- Estimated price
- Rp 2,500–240,000
- Schedules at
- ferizy.com
- Adult
- Rp 5,000
- Child
- Rp 3,500
- Bicycle
- Rp 5,000
- Motorcyle
- Rp 7,000–14,000
- Car
- Rp 46,500
Car ferry from Surabaya Ujung to Kamal
- Ave. Duration
- 30 min
- Frequency
- Hourly
- Estimated price
- Rp 2,500–240,000
- Schedules at
- ferizy.com
- Adult
- Rp 5,000
- Child
- Rp 3,500
- Bicycle
- Rp 5,000
- Motorcyle
- Rp 7,000–14,000
- Car
- Rp 46,500
Car ferry from Surabaya Ujung to Kamal
- Ave. Duration
- 30 min
- Frequency
- Hourly
- Estimated price
- Rp 2,500–240,000
- Schedules at
- ferizy.com
- Adult
- Rp 5,000
- Child
- Rp 3,500
- Bicycle
- Rp 5,000
- Motorcyle
- Rp 7,000–14,000
- Car
- Rp 46,500
- 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 Tanjung Priok to Surabaya
- Ave. Duration
- 28h 34m
- Frequency
- Twice daily
- Estimated price
- Rp 300,000–370,000
- Book at
- pelni.co.id
- Economy Class
- Rp 300,000–370,000
Ferry from Pelabuhan Sri Bayintan Kijang to Surabaya - Tanjung Perak Port
- Ave. Duration
- 2d 23h
- Frequency
- Once daily
- Estimated price
- Rp 490,000–600,000
- Book at
- pelni.co.id
- Economy Class
- Rp 490,000–600,000
- Phone
- +65 6278 9688
- [email protected]
- Website
- majesticfastferry.com.sg
Ferry from Batam Centre to Tanah Merah
- Ave. Duration
- 45 min
- Frequency
- 5 times a day
- Estimated price
- Rp 280,000–600,000
- Schedules at
- majesticfastferry.com.sg
Ferry from Tanah Merah to Sri Bintan Pura Ferry Terminal
- Ave. Duration
- 2h 10m
- Frequency
- Twice daily
- Estimated price
- Rp 750,000–2,000,000
- Schedules at
- majesticfastferry.com.sg
- Phone
- +65 6270 2228
- [email protected]
- Website
- batamfast.com
Ferry from Batam Centre to Tanah Merah
- Ave. Duration
- 1h
- Frequency
- 5 times a day
- Estimated price
- Rp 450,000–700,000
- Schedules at
- batamfast.com
- Book at
- batamfast.com
- Phone
- +65 6331 4123
- [email protected]
- Website
- sindoferry.com.sg
Ferry from Tanah Merah to Sri Bintan Pura Ferry Terminal
- Ave. Duration
- 1h 45m
- Frequency
- Twice daily
- Estimated price
- Rp 700,000–1,800,000
- Schedules at
- 12go.asia
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 Train travel in France: A guide to SNCF, How to get from Gatwick Airport into central London, and 5 incredible day trips from Florence by train - to help you get the most out of your next trip.













