There are 12 ways to get from Tanjung Priok to Surabaya by train, bus, ferry, 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 Kota
best- Take the train from Jakarta Gambir to Surabaya Pasar Turitrain Argo Bromo Anggrek / ...
9h 51mRp 329,501–459,501Bus
cheapest- Take the bus from DAMRI Bus Station Jakarta to Surabaya Kotabus Jakarta - Surabaya Kota
12h 45mRp 228,420–1,295,855Ferry
- Take the ferry from Tanjung Priok to Surabayaferry KM Dobonsolo / ...
28h 41mRp 355,810–426,181Drive 731.5 km
- Drive from Tanjung Priok to Surabayacar 731.5 km
9h 20mRp 1,444,622–2,086,677Train
- Take the train from Pasar Senen to Surabaya Pasar Turitrain Gumarang / ...
12h 36mRp 323,500–443,500Line 10 bus to Halim Perdanakusuma Airport, fly to Juanda International Airport
- Take the bus from Tanjung Priok to Cawang Sentralbus
- Fly from Halim Perdanakusuma Airport (HLP) to Juanda International Airport (SUB)plane HLP - SUB
7h 1mRp 1,213,000–2,373,500Bus to Soekarno–Hatta International Airport, fly to Juanda International Airport, train
- Take the bus from Jakarta Tanjung Priok Bus Station to Soekarno-Hatta International Airportbus
- Fly from Soekarno–Hatta International Airport (CGK) to Juanda International Airport (SUB)plane CGK - SUB
- Take the train from Waru to Surabaya Gubengtrain
6h 21mRp 1,018,420–2,515,855Line 10 bus to Halim Perdanakusuma Airport, fly to Abdul Rachman Saleh Airport, train
- Take the bus from Tanjung Priok to Cawang Sentralbus
- Fly from Halim Perdanakusuma Airport (HLP) to Abdul Rachman Saleh Airport (MLG)plane HLP - MLG
- Take the train from Lawang to Gubengtrain
7h 9mRp 1,738,500–6,933,500Fly Soekarno–Hatta International Airport to Abdul Rachman Saleh Airport, train
- Fly from Soekarno–Hatta International Airport (CGK) to Abdul Rachman Saleh Airport (MLG)plane CGK - MLG
- Take the train from Lawang to Gubengtrain
6h 33mRp 1,443,920–2,575,855Fly Soekarno–Hatta International Airport to Ahmad Yani, train
- Fly from Soekarno–Hatta International Airport (CGK) to Ahmad Yani (SRG)plane CGK - SRG
- Take the train from Semarang Tawang to Surabaya Pasar Turitrain
7h 17mRp 1,238,920–2,765,855Fly Soekarno–Hatta International Airport to Kediri, shuttle
- Fly from Soekarno–Hatta International Airport (CGK) to Kediri (DHX)plane CGK - DHX
- Take a shuttle bus from Nganjuk to Surabaya
6h 4mFly Soekarno–Hatta International Airport to Adisumarmo International Airport, train
- Fly from Soekarno–Hatta International Airport (CGK) to Adisumarmo International Airport (SOC)plane CGK - SOC
- Take the train from Solo Balapan to Surabaya Gubengtrain
8h 14mRp 1,115,920–1,972,855
Tanjung Priok to Surabaya by bus and train
Questions & Answers
The cheapest way to get from Tanjung Priok to Surabaya is to train which costs Rp320000 - Rp450000 and takes 12h 36m.
The fastest way to get from Tanjung Priok to Surabaya is to bus and fly and train which takes 6h 21m and costs Rp1000000 - Rp2600000.
No, there is no direct bus from Tanjung Priok station to Surabaya. However, there are services departing from Jakarta Tanjung Priok Bus Station and arriving at Surabaya Kota via Soekarno-Hatta International Airport and DAMRI Bus Station Jakarta. The journey, including transfers, takes approximately 12h 45m.
No, there is no direct ferry from Tanjung Priok to Surabaya. However, there are services departing from Tanjung Priok and arriving at Surabaya via . The journey, including transfers, takes approximately 28h 41m.
No, there is no direct train from Tanjung Priok to Surabaya. However, there are services departing from Tanjung Priok and arriving at Surabaya Pasar Turi via Jakarta Kota and Jakarta Gambir. The journey, including transfers, takes approximately 9h 51m.
The distance between Tanjung Priok and Surabaya is 735 km. The road distance is 731.5 km.
The best way to get from Tanjung Priok to Surabaya without a car is to train via Jakarta Kota which takes 9h 51m and costs Rp330000 - Rp460000.
It takes approximately 9h 51m to get from Tanjung Priok to Surabaya, including transfers.
Tanjung Priok to Surabaya bus services, operated by Damri, depart from DAMRI Bus Station Jakarta.
Tanjung Priok to Surabaya train services, operated by Kereta API, depart from Jakarta Gambir station.
What companies run services between Tanjung Priok, Indonesia and Surabaya, Indonesia?
Kereta API operates a train from Jakarta Gambir to Surabaya Pasar Turi 4 times a day. Tickets cost Rp 320,000–440,000 and the journey takes 7h 45m. Alternatively, Damri operates a bus from DAMRI Bus Station Jakarta to Surabaya Kota once daily. Tickets cost Rp 210,000–800,000 and the journey takes 10h.
- Website
- batikair.com
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 Juanda International Airport
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- Rp 1,200,000–2,900,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 Abdul Rachman Saleh Airport
- Ave. Duration
- 1h 40m
- When
- Every day
- Estimated price
- Rp 1,500,000–3,500,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
- Website
- garuda-indonesia.com
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 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 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 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 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 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,700,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,500,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 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 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 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 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 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 Jakarta Tanjung Priok Bus Station to Soekarno-Hatta International Airport
- Ave. Duration
- 30 min
- Frequency
- Every 30 minutes
- Estimated price
- Rp 8,500–250,000
- Book at
- https://12go.asia/en/operator/damri
- Phone
- 1500102
- [email protected]
- Website
- transjakarta.co.id
Bus from Tanjung Priok to Cawang Sentral
- Ave. Duration
- 1h 23m
- Frequency
- Every 10 minutes
- Estimated price
- Rp 3,501
- Schedules at
- transjakarta.co.id
Bus from Tanjung Priok to Cawang Sentral
- Ave. Duration
- 1h 23m
- Frequency
- Every 10 minutes
- Estimated price
- Rp 3,501
- Schedules at
- transjakarta.co.id
- [email protected]
- Website
- indahjayatrans.com
Shuttle from Nganjuk to Surabaya
- Ave. Duration
- 1h 1m
- Frequency
- 4 times a day
- Schedules at
- indahjayatrans.com
- Phone
- +62 811-1621-162
- [email protected]
- Website
- facebook.com
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
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 Southend Airport into central London, How to get from London to Edinburgh, and Train travel in Spain: A guide to Renfe - to help you get the most out of your next trip.
More Questions & Answers
The best way to get from Tanjung Priok to Surabaya is to train via Jakarta Kota which takes 9h 51m and costs Rp330000 - Rp460000. Alternatively, you can bus, which costs Rp220000 - Rp1300000 and takes 12h 45m.
Tanjung Priok to Surabaya bus services, operated by Damri, arrive at Surabaya Kota station.
Tanjung Priok to Surabaya train services, operated by Kereta API, arrive at Surabaya Pasar Turi station.
Yes, the driving distance between Tanjung Priok to Surabaya is 731 km. It takes approximately 9h 20m to drive from Tanjung Priok to Surabaya.
Book your Tanjung Priok to Surabaya train tickets online with 12go.asia.
Book your Tanjung Priok to Surabaya bus tickets online with 12go.asia.
There are 971+ hotels available in Surabaya.













