There are 12 ways to get from Serang 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 Rangkasbitung to Tanahabangtrain Green
- Take the train from Jakarta Gambir to Surabaya Pasar Turitrain Argo Bromo Anggrek / ...
12h 44mRp 332,500–779,500Bus
cheapest- Take the bus from Terminal Pakupatan Serang to Soekarno-Hatta International Airportbus Merak
- Take the bus from DAMRI Bus Station Jakarta to Surabaya Kotabus Jakarta - Surabaya Kota
14h 15mRp 241,433–1,296,971Drive 808.4 km
- Drive from Serang to Surabayacar 808.4 km
10h 8mRp 1,596,227–2,305,661Bus to Soekarno–Hatta International Airport, fly to Juanda International Airport
- Take the bus from Terminal Pakupatan Serang to Soekarno-Hatta International Airportbus
- Fly from Soekarno–Hatta International Airport (CGK) to Juanda International Airport (SUB)plane CGK - SUB
7h 51mRp 1,031,433–2,516,971Train
- Take the train from Rangkasbitung to Tanahabangtrain Green
- Take the train from Pasar Senen to Surabaya Pasar Turitrain Gumarang / ...
14h 53mRp 329,500–771,500Train, bus, shuttle
- Take the train from Rangkasbitung to Palmerahtrain
- Take the bus from Jakarta Daan Mogot to Kudusbus
- Take a shuttle bus from Kudus to Surabaya
21h 22mRp 489,500–1,081,500Bus to Soekarno–Hatta International Airport, fly to Abdul Rachman Saleh Airport, train
- Take the bus from Terminal Pakupatan Serang 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
8h 3mRp 1,456,933–2,476,971Train, train to Halim Perdanakusuma Airport, fly to Juanda International Airport
- Take the train from Serang to Rangkasbitungtrain
- Take the train from Rangkasbitung to Palmerahtrain
- Fly from Halim Perdanakusuma Airport (HLP) to Juanda International Airport (SUB)plane HLP - SUB
- Take the train from Waru to Surabaya Gubengtrain
9h 40mRp 1,219,000–2,701,500Bus to Soekarno–Hatta International Airport, fly to Ahmad Yani, train
- Take the bus from Terminal Pakupatan Serang 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
8h 47mRp 1,251,933–2,766,971Bus to Soekarno–Hatta International Airport, fly to Kediri, shuttle
- Take the bus from Terminal Pakupatan Serang 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
7h 34mBus to Soekarno–Hatta International Airport, fly to Adisumarmo International Airport, train
- Take the bus from Terminal Pakupatan Serang 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
9h 44mRp 1,128,933–1,973,971Train to Halim Perdanakusuma Airport, fly to Abdul Rachman Saleh Airport, train
- 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
9h 47mRp 1,744,500–7,261,500
Soekarno–Hatta International Airport (CGK) to Juanda International Airport (SUB) flights
Questions & Answers
The cheapest way to get from Serang to Surabaya is to train which costs Rp330000 - Rp800000 and takes 14h 53m.
The fastest way to get from Serang to Surabaya is to bus and fly which takes 7h 51m and costs Rp1000000 - Rp2600000.
No, there is no direct bus from Serang to Surabaya. However, there are services departing from Terminal Pakupatan Serang and arriving at Surabaya Kota via Soekarno-Hatta International Airport and DAMRI Bus Station Jakarta. The journey, including transfers, takes approximately 14h 15m.
No, there is no direct train from Serang to Surabaya. However, there are services departing from Serang and arriving at Surabaya Pasar Turi via Rangkasbitung, Tanah Abang and Jakarta Gambir. The journey, including transfers, takes approximately 12h 44m.
The distance between Serang and Surabaya is 835 km. The road distance is 808.4 km.
The best way to get from Serang to Surabaya without a car is to train via Jakarta which takes 12h 44m and costs Rp330000 - Rp800000.
It takes approximately 12h 44m to get from Serang to Surabaya, including transfers.
Serang to Surabaya bus services, operated by Damri, depart from Terminal Pakupatan Serang station.
Serang to Surabaya train services, operated by Commuter Line, depart from Rangkasbitung station.
The best way to get from Serang to Surabaya is to train via Jakarta which takes 12h 44m and costs Rp330000 - Rp800000. Alternatively, you can bus, which costs Rp240000 - Rp1300000 and takes 14h 15m.
What companies run services between Serang, Indonesia and Surabaya, Indonesia?
You can take a train from Serang to Surabaya Pasar Turi via Rangkasbitung, Tanah Abang, Sudirman, Transport Hub Dukuh Atas, Gambir 3, and Jakarta Gambir in around 12h 44m. Alternatively, you can take a bus from Terminal Pakupatan Serang to Surabaya Kota via Soekarno-Hatta International Airport and DAMRI Bus Station Jakarta in around 14h 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–3,000,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,600,000
Flights from Halim Perdanakusuma Airport to Juanda International Airport
- Ave. Duration
- 1h 25m
- When
- Every day
- Estimated price
- Rp 1,600,000–4,100,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 Soekarno–Hatta International Airport to Adisumarmo International Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- Rp 1,100,000–1,600,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
- 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,100,000–2,900,000
Flights from Soekarno–Hatta International Airport to Abdul Rachman Saleh Airport
- Ave. Duration
- 1h 35m
- When
- Every day
- Estimated price
- Rp 1,300,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 1,000,000–3,200,000
Flights from Soekarno–Hatta International Airport to Adisumarmo International Airport
- Ave. Duration
- 1h 16m
- When
- Every day
- Estimated price
- Rp 950,000–3,300,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,300,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 1,000,000–1,500,000
Flights from Soekarno–Hatta International Airport to Adisumarmo International Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- Rp 950,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,500,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,100,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,500,000
- Phone
- 021-3453535
- [email protected]
Train from Rangkasbitung to Tanahabang
- 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 Rangkasbitung to Palmerah
- Ave. Duration
- 1h 40m
- Frequency
- Every 30 minutes
- Estimated price
- Rp 3,000–8,000
Train from Serang to Rangkasbitung
- Ave. Duration
- 52 min
- 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 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 Serang to Rangkasbitung
- Ave. Duration
- 58 min
- Frequency
- Hourly
- Estimated price
- Rp 20,000–320,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 20,000–320,000
- Business
- Rp 290,000–550,000
- Executive
- Rp 37,000–650,000
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 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 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
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
- Phone
- (021) 1500 825
- [email protected]
- Website
- damri.co.id
Bus from Terminal Pakupatan Serang to Soekarno-Hatta International Airport
- Ave. Duration
- 2h
- Frequency
- Hourly
- Estimated price
- Rp 21,000–250,000
- Book at
- https://12go.asia/en/operator/damri
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
Bus from Terminal Pakupatan Serang to Soekarno-Hatta International Airport
- Ave. Duration
- 2h
- Frequency
- Hourly
- Estimated price
- Rp 21,000–250,000
- Book at
- https://12go.asia/en/operator/damri
Bus from Terminal Pakupatan Serang to Soekarno-Hatta International Airport
- Ave. Duration
- 2h
- Frequency
- Hourly
- Estimated price
- Rp 21,000–250,000
- Book at
- https://12go.asia/en/operator/damri
Bus from Terminal Pakupatan Serang to Soekarno-Hatta International Airport
- Ave. Duration
- 2h
- Frequency
- Hourly
- Estimated price
- Rp 21,000–250,000
- Book at
- https://12go.asia/en/operator/damri
Bus from Terminal Pakupatan Serang to Soekarno-Hatta International Airport
- Ave. Duration
- 2h
- Frequency
- Hourly
- Estimated price
- Rp 21,000–250,000
- Book at
- https://12go.asia/en/operator/damri
Bus from Terminal Pakupatan Serang to Soekarno-Hatta International Airport
- Ave. Duration
- 2h
- Frequency
- Hourly
- Estimated price
- Rp 21,000–250,000
- Book at
- https://12go.asia/en/operator/damri
- Phone
- +62291440019
- [email protected]
- Website
- nu3tara.com
Bus from Jakarta Daan Mogot to Kudus
- Ave. Duration
- 13h 30m
- Frequency
- Once daily
- Estimated price
- Rp 260,000–450,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
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 Travelling by boat in Italy, 4 of the smartest ways to explore Australia, and The London Underground: Essential tips to navigate the Tube - to help you get the most out of your next trip.
More Questions & Answers
Serang to Surabaya bus services, operated by Damri, arrive at Soekarno-Hatta International Airport station.
Serang to Surabaya train services, operated by Commuter Line, arrive at Tanahabang station.
Yes, the driving distance between Serang to Surabaya is 808 km. It takes approximately 10h 8m to drive from Serang to Surabaya.
Book your Serang to Surabaya train tickets online with 12go.asia.
Book your Serang to Surabaya bus tickets online with 12go.asia.
There are 986+ hotels available in Surabaya.
















