How to get from Semarang to Surabaya by train

280km
12 per day
3h - 5h
Reverse route

Twelve trains run from Semarang Tawang to Surabaya Pasar Turi, taking between 2 hours 57 minutes and 4 hours 36 minutes. Departures run from 00:38 to 18:25, so the whole service is in the first three-quarters of the day.

Have questions about your trip?Ask our Facebook group of fellow train travellers.
Join the group

Timetables

TrainSemarangSurabaya
42 Sembrani00:3803:55
4 Argo Bromo Anggrek01:1804:15
32/33 Pandalungan01:3905:08
164 Gumarang03:5707:58
96 Harina04:3808:25
30F Argo Anjasmoro05:1308:40
266 Ambarawa Ekspres08:4112:55
264 Ambarawa Ekspres11:5216:28
2 Argo Bromo Anggrek13:0816:05
40 Sembrani15:3018:47
101/100 Harina16:3020:10
146/147 Blambangan Ekspres18:2522:15

Average journey time: 3 hours 38 minutes

How to buy tickets

The easiest way to book Semarang to Surabaya train tickets is through 12Go, which shows availability and lets you pay by card.

Tickets go on sale 45 days in advance. For full details on booking windows, see the when to book Indonesia train tickets guide.

Semarang to Surabaya train tickets

Book with 12Go

About the route

The morning options include the Argo Anjasmoro at 05:13, the Ambarawa Ekspres at 08:41, and then the Argo Bromo Anggrek at 13:08 and the Sembrani at 15:30. The early trains in the night, the Sembrani at 00:38, the Argo Bromo Anggrek at 01:18 and the Pandalungan at 01:39, run overnight and arrive before sunrise.

Pasar Turi is in the north of Surabaya, and it is closer to the old town, the Kya-Kya district and the port than Gubeng. If you plan to go on to Malang or Banyuwangi, take a taxi or the local train across the city to Gubeng.


Have questions about your trip?Ask our Facebook group of fellow train travellers.
Join the group