Semarang to Surabaya by Train

The eastern leg of the north coast line — four hours through Bojonegoro into Surabaya Pasarturi.
Which class to book
Ekonomi, ideally new-generation stock. Four flat hours does not justify the eksekutif premium.
Semarang to Surabaya by Train

Roughly 280km separates Semarang Tawang from Surabaya Pasarturi, covered in three and a half to four and a half hours. It is the second half of the northern corridor and a straightforward daytime run.

The line follows the coastal plain through Bojonegoro. Like the rest of this corridor it is flat and functional rather than scenic, but four hours passes quickly and the services are frequent.

Which trains run this route: Argo Bromo Anggrek and Sembrani pass through on their way from Jakarta. Harina runs from Bandung via Semarang. Several ekonomi services also cover the leg.

Useful if you are breaking the Jakarta–Surabaya journey: an overnight in Semarang followed by a morning run to Surabaya splits an awkward eleven-hour trip into two comfortable halves, and gives you a city worth seeing in between.

Route details

Journey times vary by service and season. Confirm against current schedules before booking.

Departures Per Day
8
Destination City
Surabaya
Destination Station
Surabaya Pasarturi
Distance
280
Journey Time
3h 30m - 4h 30m
Ferry Connection
No
Named Trains
Argo Bromo Anggrek, Sembrani, Harina, Kertajaya
Origin City
Semarang
Origin Station
Semarang Tawang
Overnight Service
No
Scenery
Functional - get some sleep
Service Status
Operating
Highest Class Available
Eksekutif

Fares

Indicative bands only. KAI adjusts fares by season and subclass, so treat these as a guide to the order of magnitude rather than a quote.

Fare Range (Ekonomi)
Rp 120-220k
Fare Range (Eksekutif)
Rp 260-450k

Categories

Northern Line

Last updated 8 Sep 2026

© Indonesia By Train 2026. All rights reserved