There are 12 ways to get from Port of Merak to Surabaya by train, bus, car, plane, 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.
Train via Jakarta
best- Take the train from Merak to Rangkasbitungtrain
- Take the train from Rangkasbitung to Tanahabangtrain
- Take the train from Jakarta Gambir to Surabaya Pasar Turitrain
13h 37mRp 332,501–467,501Bus via Yogyakarta
cheapest- Take the bus from Merak to Yogyakartabus
- Take the bus from Yogyakarta Giwandan to Terminal Purabayabus
24h 36mRp 243,000–686,109Bus
- Take the bus from Pool Damri Merak to Soekarno-Hatta International Airportbus Merak
- Take the bus from DAMRI Bus Station Jakarta to Surabaya Kotabus Jakarta - Surabaya Kota
15h 15mRp 252,518–1,297,922Drive 836.3 km
- Drive from Port of Merak to Surabayacar 836.3 km
10h 26mRp 1,646,313–2,378,007Bus to Soekarno–Hatta International Airport, fly to Juanda International Airport
- Take the bus from Pool Damri Merak to Soekarno-Hatta International Airportbus
- Fly from Soekarno–Hatta International Airport (CGK) to Juanda International Airport (SUB)plane CGK - SUB
8h 51mRp 1,042,518–2,417,922Train
- Take the train from Merak to Rangkasbitungtrain
- Take the train from Rangkasbitung to Tanahabangtrain
- Take the train from Pasar Senen to Surabaya Pasar Turitrain
15h 46mRp 329,501–459,501Bus to Soekarno–Hatta International Airport, fly to Abdul Rachman Saleh Airport, train
- Take the bus from Pool Damri Merak to Soekarno-Hatta International Airportbus
- Fly from Soekarno–Hatta International Airport (CGK) to Abdul Rachman Saleh Airport (MLG)plane CGK - MLG
- Take the train from Lawang to Gubengtrain
9h 3mRp 1,368,018–2,577,922Train, train to Halim Perdanakusuma Airport, fly to Juanda International Airport
- Take the train from Merak to Rangkasbitungtrain
- Take the train from Rangkasbitung to Palmerahtrain
- Fly from Halim Perdanakusuma Airport (HLP) to Juanda International Airport (SUB)plane HLP - SUB
10h 33mRp 1,219,001–2,389,501Bus to Soekarno–Hatta International Airport, fly to Ahmad Yani, train
- Take the bus from Pool Damri Merak to Soekarno-Hatta International Airportbus
- Fly from Soekarno–Hatta International Airport (CGK) to Ahmad Yani (SRG)plane CGK - SRG
- Take the train from Semarang Tawang to Surabaya Pasar Turitrain
9h 47mRp 1,263,018–2,667,922Bus to Soekarno–Hatta International Airport, fly to Kediri, shuttle
- Take the bus from Pool Damri Merak to Soekarno-Hatta International Airportbus
- Fly from Soekarno–Hatta International Airport (CGK) to Kediri (DHX)plane CGK - DHX
- Take a shuttle bus from Nganjuk to Surabaya
8h 34mTrain, train to Halim Perdanakusuma Airport, fly to Abdul Rachman Saleh Airport
- Take the train from Merak to Rangkasbitungtrain
- Take the train from Rangkasbitung to Palmerahtrain
- Fly from Halim Perdanakusuma Airport (HLP) to Abdul Rachman Saleh Airport (MLG)plane HLP - MLG
- Take the train from Lawang to Gubengtrain
10h 40mRp 1,744,501–6,949,501Bus to Soekarno–Hatta International Airport, fly to Adisumarmo International Airport, train
- Take the bus from Pool Damri Merak to Soekarno-Hatta International Airportbus
- Fly from Soekarno–Hatta International Airport (CGK) to Adisumarmo International Airport (SOC)plane CGK - SOC
- Take the train from Solo Balapan to Surabaya Gubengtrain
10h 44mRp 1,140,018–1,974,922
Soekarno–Hatta International Airport (CGK) to Juanda International Airport (SUB) flights
Questions & Answers
The cheapest way to get from Port of Merak to Surabaya is to train which costs Rp330000 - Rp460000 and takes 15h 46m.
The fastest way to get from Port of Merak to Surabaya is to bus and fly which takes 8h 51m and costs Rp1000000 - Rp2500000.
No, there is no direct bus from Port of Merak to Surabaya. However, there are services departing from Pool Damri Merak and arriving at Surabaya Kota via Soekarno-Hatta International Airport and DAMRI Bus Station Jakarta. The journey, including transfers, takes approximately 15h 15m.
No, there is no direct train from Port of Merak to Surabaya. However, there are services departing from Merak and arriving at Surabaya Pasar Turi via Rangkasbitung, Tanah Abang and Jakarta Gambir. The journey, including transfers, takes approximately 13h 37m.
The distance between Port of Merak and Surabaya is 870 km. The road distance is 836.2 km.
The best way to get from Port of Merak to Surabaya without a car is to train via Jakarta which takes 13h 37m and costs Rp330000 - Rp470000.
It takes approximately 13h 37m to get from Port of Merak to Surabaya, including transfers.
Port of Merak to Surabaya bus services, operated by Damri, depart from Pool Damri Merak station.
Port of Merak to Surabaya train services, operated by Commuter Line, depart from Merak station.
The best way to get from Port of Merak to Surabaya is to train via Jakarta which takes 13h 37m and costs Rp330000 - Rp470000. Alternatively, you can bus, which costs Rp250000 - Rp1300000 and takes 15h 15m.
What companies run services between Port of Merak, Indonesia and Surabaya, Indonesia?
You can take a train from Merak to Surabaya Pasar Turi via Rangkasbitung, Tanah Abang, Sudirman, Transport Hub Dukuh Atas, Gambir 3, and Jakarta Gambir in around 13h 37m. Alternatively, you can take a bus from Pool Damri Merak to Surabaya Kota via Soekarno-Hatta International Airport and DAMRI Bus Station Jakarta in around 15h 15m.
- Website
- batikair.com
Flights from Soekarno–Hatta International Airport to Juanda International Airport
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- Rp 1,200,000–2,900,000
Flights from Soekarno–Hatta International Airport to Abdul Rachman Saleh Airport
- Ave. Duration
- 1h 40m
- When
- Every day
- Estimated price
- Rp 1,500,000–3,500,000
Flights from Halim Perdanakusuma Airport to Juanda International Airport
- Ave. Duration
- 1h 25m
- When
- Every day
- Estimated price
- Rp 1,600,000–4,000,000
Flights from Soekarno–Hatta International Airport to Ahmad Yani
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- Rp 1,100,000–2,500,000
Flights from Halim Perdanakusuma Airport to Abdul Rachman Saleh Airport
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- Rp 1,600,000–6,500,000
Flights from Soekarno–Hatta International Airport to Adisumarmo International Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- Rp 1,100,000–1,600,000
- Website
- garuda-indonesia.com
Flights from Soekarno–Hatta International Airport to Juanda International Airport
- Ave. Duration
- 1h 39m
- When
- Every day
- Estimated price
- Rp 1,000,000–2,500,000
Flights from Soekarno–Hatta International Airport to Abdul Rachman Saleh Airport
- Ave. Duration
- 1h 35m
- When
- Every day
- Estimated price
- Rp 1,200,000–1,800,000
Flights from Halim Perdanakusuma Airport to Juanda International Airport
- Ave. Duration
- 1h 35m
- When
- Every day
- Estimated price
- Rp 1,200,000–1,800,000
Flights from Soekarno–Hatta International Airport to Ahmad Yani
- Ave. Duration
- 1h 12m
- When
- Every day
- Estimated price
- Rp 950,000–2,600,000
Flights from Soekarno–Hatta International Airport to Adisumarmo International Airport
- Ave. Duration
- 1h 16m
- When
- Every day
- Estimated price
- Rp 900,000–2,800,000
- Website
- citilink.co.id
Flights from Soekarno–Hatta International Airport to Juanda International Airport
- Ave. Duration
- 1h 36m
- When
- Every day
- Estimated price
- Rp 1,000,000–1,600,000
Flights from Soekarno–Hatta International Airport to Abdul Rachman Saleh Airport
- Ave. Duration
- 1h 35m
- When
- Every day
- Estimated price
- Rp 1,200,000–1,800,000
Flights from Halim Perdanakusuma Airport to Juanda International Airport
- Ave. Duration
- 1h 31m
- When
- Every day
- Estimated price
- Rp 1,200,000–1,800,000
Flights from Soekarno–Hatta International Airport to Ahmad Yani
- Ave. Duration
- 1h 7m
- When
- Every day
- Estimated price
- Rp 950,000–1,500,000
Flights from Soekarno–Hatta International Airport to Adisumarmo International Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- Rp 900,000–1,400,000
- Website
- lionair.co.id
Flights from Soekarno–Hatta International Airport to Juanda International Airport
- Ave. Duration
- 1h 28m
- When
- Every day
- Estimated price
- Rp 1,000,000–1,600,000
Flights from Soekarno–Hatta International Airport to Adisumarmo International Airport
- Ave. Duration
- 1h 20m
- When
- Friday
- Estimated price
- Rp 800,000–3,400,000
- Website
- pelita-air.com
Flights from Soekarno–Hatta International Airport to Juanda International Airport
- Ave. Duration
- 1h 34m
- When
- Every day
- Estimated price
- Rp 1,400,000–2,600,000
- Website
- flynamair.com
Flights from Soekarno–Hatta International Airport to Ahmad Yani via Pangkalanbun
- Ave. Duration
- 2h 55m
- When
- Every day
- Estimated price
- Rp 1,000,000–5,500,000
- Website
- superairjet.com
Flights from Soekarno–Hatta International Airport to Kediri
- Ave. Duration
- 1h 30m
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- Rp 1,000,000–1,400,000
- Phone
- 021-3453535
- [email protected]
Train from Merak to Rangkasbitung
- Ave. Duration
- 1h 45m
- Frequency
- Every 30 minutes
- Estimated price
- Rp 3,000–8,000
Train from Rangkasbitung to Tanahabang
- Ave. Duration
- 1h 45m
- Frequency
- Every 30 minutes
- Estimated price
- Rp 3,000–8,000
Train from Merak to Rangkasbitung
- Ave. Duration
- 1h 45m
- Frequency
- Every 30 minutes
- Estimated price
- Rp 3,000–8,000
Train from Rangkasbitung to Tanahabang
- Ave. Duration
- 1h 45m
- Frequency
- Every 30 minutes
- Estimated price
- Rp 3,000–8,000
Train from Merak to Rangkasbitung
- Ave. Duration
- 1h 45m
- Frequency
- Every 30 minutes
- Estimated price
- Rp 3,000–8,000
Train from Rangkasbitung to Palmerah
- Ave. Duration
- 1h 40m
- Frequency
- Every 30 minutes
- Estimated price
- Rp 3,000–8,000
Train from Merak to Rangkasbitung
- Ave. Duration
- 1h 45m
- Frequency
- Every 30 minutes
- Estimated price
- Rp 3,000–8,000
Train from Rangkasbitung to Palmerah
- Ave. Duration
- 1h 40m
- Frequency
- Every 30 minutes
- Estimated price
- Rp 3,000–8,000
- Phone
- 021-121
- [email protected]
- Website
- kai.id
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 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
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 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 Solo Balapan to Surabaya Gubeng
- Ave. Duration
- 3h 12m
- Frequency
- Every 3 hours
- Estimated price
- Rp 150,000–320,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 150,000–320,000
- Business
- Rp 360,000–550,000
- Executive
- Rp 280,000–700,000
- Phone
- (021) 1500 825
- [email protected]
- Website
- damri.co.id
Bus from Pool Damri Merak to Soekarno-Hatta International Airport
- Ave. Duration
- 3h
- Frequency
- Hourly
- Estimated price
- Rp 33,000–250,000
- Book at
- 12 Go
Bus from DAMRI Bus Station Jakarta to Surabaya Kota
- Ave. Duration
- 10h
- Frequency
- Once daily
- Estimated price
- Rp 210,000–800,000
- Book at
- 12 Go
Bus from Pool Damri Merak to Soekarno-Hatta International Airport
- Ave. Duration
- 3h
- Frequency
- Hourly
- Estimated price
- Rp 33,000–250,000
- Book at
- 12 Go
Bus from Pool Damri Merak to Soekarno-Hatta International Airport
- Ave. Duration
- 3h
- Frequency
- Hourly
- Estimated price
- Rp 33,000–250,000
- Book at
- 12 Go
Bus from Pool Damri Merak to Soekarno-Hatta International Airport
- Ave. Duration
- 3h
- Frequency
- Hourly
- Estimated price
- Rp 33,000–250,000
- Book at
- 12 Go
Bus from Pool Damri Merak to Soekarno-Hatta International Airport
- Ave. Duration
- 3h
- Frequency
- Hourly
- Estimated price
- Rp 33,000–250,000
- Book at
- 12 Go
Bus from Pool Damri Merak to Soekarno-Hatta International Airport
- Ave. Duration
- 3h
- Frequency
- Hourly
- Estimated price
- Rp 33,000–250,000
- Book at
- 12 Go
- Phone
- 0811-259-318
- [email protected]
- Website
- sumberalam.co.id
Bus from Merak to Yogyakarta
- Ave. Duration
- 16h
- Frequency
- Every 4 hours
- Estimated price
- Rp 110,000–240,000
- Schedules at
- sumberalam.co.id
- Phone
- (031) 88198899
Bus from Yogyakarta Giwandan to Terminal Purabaya
- Ave. Duration
- 6h
- Frequency
- 3 times a day
- Estimated price
- Rp 125,000–135,000
- Schedules at
- ekapatas.com
- Book at
- redbus.id
- [email protected]
- Website
- indahjayatrans.com
Shuttle from Nganjuk to Surabaya
- Ave. Duration
- 1h 1m
- Frequency
- 4 times a day
- Schedules at
- indahjayatrans.com
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 London to Edinburgh, How to get from Stansted Airport into central London, and Italy Travel Guides - to help you get the most out of your next trip.
More Questions & Answers
Port of Merak to Surabaya bus services, operated by Damri, arrive at Soekarno-Hatta International Airport station.
Port of Merak to Surabaya train services, operated by Commuter Line, arrive at Rangkasbitung station.
Yes, the driving distance between Port of Merak to Surabaya is 836 km. It takes approximately 10h 26m to drive from Port of Merak to Surabaya.
Book your Port of Merak to Surabaya train tickets online with 12go.asia.
Book your Port of Merak to Surabaya bus tickets online with 12go.asia.
There are 972+ hotels available in Surabaya.















