Bus & shuttle

Semarang to Surabaya by bus & shuttle

From Semarang to Surabaya: distance, estimated time, pick-up points and live times & fares from licensed operators.

Times & fares: Semarang → Surabaya

Bus, shuttle and train times, fares and seats come live from licensed operators through our official ticketing partner, which handles booking, payment and your ticket.

About the Semarang – Surabaya trip

The Semarang to Surabaya route is about 350 km and takes around 7 hours depending on traffic and the drop-off point.

Pick-up points in Semarang: Terminal Mangkang, Banyumanik, Kaligawe, Simpang Lima. In Surabaya: Terminal Purabaya (Bungurasih), Terminal Osowilangun, Waru, Surabaya Kota.

Tips

  • Weekdays are usually cheaper and quieter than weekends and holidays.
  • Book early around Eid, Christmas–New Year and Indonesian school holidays.
  • Arrive 30 minutes before departure with your ticket and ID or passport.

FAQ: Semarang to Surabaya

How far is Semarang from Surabaya?

About 350 km by road; the trip takes roughly 7 hours depending on traffic and stops.

How much is a ticket from Semarang to Surabaya?

Fares differ by operator, vehicle class and season. Tap “See times & book” to see current fares before you pay.

Where do buses leave from in Semarang?

Common pick-up points in Semarang: Terminal Mangkang, Banyumanik, Kaligawe, Simpang Lima. Each operator's exact point is shown when you book.

Who issues the ticket?

Licensed operators sell the seats through SiapPergi's official ticketing partner, which handles payment and emails your ticket.