There are 6 ways to get from Semarang to Surabaya by train, bus, car, taxi, 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
best- Take the train from Semarang Tawang to Surabaya Pasar Turitrain Argo Bromo Anggrek / ...
2h 53mRp 160,000–330,000Bus
cheapest- Take the bus from Semarang to Surabaya Kotabus Semarang - Surabaya Kota
6hRp 85,000–320,000Drive 293.3 km
- Drive from Semarang to Surabayacar 293.3 km
4h 24mRp 578,050–834,961Taxi
- Take the taxi from Semarang to Surabayataxi 293.3 km
4h 24mRp 1,900,000–2,300,000Fly, train
- Fly from Ahmad Yani (SRG) to Juanda International Airport (SUB)plane SRG - SUB
- Take the train from Waru to Surabaya Gubengtrain
4h 2mRp 1,580,305–3,353,678Shuttle
- Take a shuttle bus from Semarang to SurabayaSurabaya
3hRp 220,000–300,000
Semarang to Surabaya by train
Questions & Answers
The cheapest way to get from Semarang to Surabaya is to bus which costs Rp85000 - Rp320000 and takes 6h.
The fastest way to get from Semarang to Surabaya is to train which takes 2h 53m and costs Rp160000 - Rp330000.
Yes, there is a direct bus departing from Semarang and arriving at Surabaya Kota. Services depart once daily, and operate every day. The journey takes approximately 6h.
Yes, there is a direct train departing from Semarang Tawang and arriving at Surabaya Pasar Turi. Services depart every three hours, and operate every day. The journey takes approximately 2h 53m.
The distance between Semarang and Surabaya is 279 km. The road distance is 293.3 km.
The best way to get from Semarang to Surabaya without a car is to train which takes 2h 53m and costs Rp160000 - Rp330000.
The train from Semarang Tawang to Surabaya Pasar Turi takes 2h 53m including transfers and departs every three hours.
Semarang to Surabaya bus services, operated by Damri, depart from Semarang station.
Semarang to Surabaya train services, operated by Kereta API, depart from Semarang Tawang station.
The best way to get from Semarang to Surabaya is to train which takes 2h 53m and costs Rp160000 - Rp330000. Alternatively, you can bus, which costs Rp85000 - Rp320000 and takes 6h.
What companies run services between Semarang, Indonesia and Surabaya, Indonesia?
Kereta API operates a train from Semarang Tawang to Surabaya Pasar Turi every 3 hours. Tickets cost Rp 160,000–330,000 and the journey takes 2h 53m. Alternatively, Damri operates a bus from Semarang to Surabaya Kota once daily. Tickets cost Rp 85,000–320,000 and the journey takes 6h.
- Website
- lionair.co.id
Flights from Ahmad Yani to Juanda International Airport
- Ave. Duration
- 1h 10m
- When
- Tuesday, Thursday, and Saturday
- Estimated price
- Rp 1,300,000–1,800,000
- Website
- flynamair.com
Flights from Ahmad Yani to Juanda International Airport via Pangkalanbun
- Ave. Duration
- 2h 50m
- When
- Every day
- Estimated price
- Rp 950,000–5,500,000
- Phone
- 021-121
- [email protected]
- Website
- kai.id
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 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
- Phone
- (021) 1500 825
- [email protected]
- Website
- damri.co.id
Bus from Semarang to Surabaya Kota
- Ave. Duration
- 6h
- Frequency
- Once daily
- Estimated price
- Rp 85,000–320,000
- Book at
- https://12go.asia/en/operator/damri
- [email protected]
- Website
- indahjayatrans.com
Shuttle from Semarang to Surabaya
- Ave. Duration
- 3h
- Frequency
- Twice daily
- Estimated price
- Rp 220,000–300,000
- Schedules at
- indahjayatrans.com
- Ave. Duration
- 4h 24m
- Estimated price
- Rp 1,900,000–2,300,000
Blue Bird Group
- Phone
- +62246701234
- Website
- bluebirdgroup.com
Grab Taxi
- Website
- grab.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 Train travel in Spain: A guide to Renfe, South Korea: Travelling from Seoul to Busan , and How to plan an amazing trip around Scandinavia - to help you get the most out of your next trip.
More Questions & Answers
Semarang to Surabaya bus services, operated by Damri, arrive at Surabaya Kota station.
Semarang to Surabaya train services, operated by Kereta API, arrive at Surabaya Pasar Turi station.
Yes, the driving distance between Semarang to Surabaya is 293 km. It takes approximately 4h 24m to drive from Semarang to Surabaya.
Book your Semarang to Surabaya train tickets online with 12go.asia.
Book your Semarang to Surabaya bus tickets online with Omio and 12go.asia.
There are 980+ hotels available in Surabaya.










