Semarang to Surabaya train

Trains from Semarang to Surabaya start at €32.79 and take 2h 36m at their fastest.

SemarangSemarangSurabayaSurabaya
Sahid Hotel, Surabaya

The Trains from Semarang to Surabaya starts at €32.79 and takes 2h 36m door to door, run by 2 operators over 259 km, with around 10 departures a day. Fares bottom out about 21 days before departure.

Checked September 15, 2026Priced for October 6, 2026One passenger, all fees included

  • 2h 36mDoor to door
  • 1h 52mMoving
  • €32.79 to €70.19From
  • 06:04 to 17:11First and last departure
  • 10Per day
  • 8.5 kgCO2

First and last are taken from the services we sell on October 6, 2026. The return direction keeps its own timetable and is not these times reversed.

€32.79 to €70.19 for one passenger across the 14 departure dates priced here. The low end is one day, not every day. Worked out from this corridor rather than held for anybody. The operator sets the price on the day.

Fares by date

What this journey usually costs, by departure date. It shows which days run dearer.

Typical fares

  1. about €58.09Wed16
  2. about €70.19Thu17
  3. about €52.59Fri18
  4. about €59.74Sat19
  5. about €50.94Sun20
  6. about €46.54Mon21
  7. about €33.89Tue22
  8. about €38.84Wed23
  9. about €45.99Thu24
  10. about €43.24Fri25
  11. about €42.14Sat26
  12. about €45.44Sun27
  13. about €34.99Mon28
  14. about €32.79Tue29

Based on what this route has cost recently. The operator sets the price on the day, and the live fare is confirmed when you book.

Real services

The cheapest and the fastest on October 6, 2026

Cheapest€27.29
  1. Kereta Api Indonesia KA808211:571h 57m13:54Semarang Gudang railway stationSurabaya Kota railway station

Door to door 2h 41mCO2 8.5 kgChanges 0Refundable

Fastest€36.09
  1. KAI KA399006:041h 52m07:56Semarang Gudang railway stationSurabaya Kota railway station

Door to door 2h 36mCO2 8.5 kgChanges 0Refundable

Carriers

Rail operators

Every operator we sell on this corridor. Speed is the carrier's own typical cruising speed, not the average over this route.
OperatorFromFastest
KAI€30.592h 34m
Kereta Api Indonesia€27.292h 33m

The train gets you into Surabaya. It does not get you a bed, and neither do we.

A hotel room

A room in Surabaya for the night the train gets in

Sort by distance from Surabaya Kota railway station and you can see which places are ten minutes on foot and which are not.

Partner links. We do not sell accommodation. We earn a commission when a booking completes, and it never changes what you pay.

Booking window

When to book Semarang to Surabaya

The same search run across the whole booking window, so the shape of the curve is visible rather than described.

  1. €28.3990 days
  2. €27.8460 days
  3. €28.3945 days
  4. €32.0030 days
  5. €27.2921 days
  6. €31.4114 days
  7. €33.897 days
  8. €47.933 days
  9. €55.011 days
Cheapest lead time
Fares bottom out around 21 days ahead, at €27.29.
How much it moves
The gap between the cheapest and most expensive lead time is 102 percent. The most expensive point is €55.01, 1 days out.
What that means
Today sits inside the cheap window, which closes about 21 days before departure. Waiting from here has usually cost money on this corridor rather than saved it.
Day of the week

Which departure day costs least

Median cheapest fare for each weekday, taken across the next three weeks of real prices.

  1. €39.67Sun
  2. €34.99Mon
  3. €31.41Tue
  4. €37.90Wed
  5. €44.39Thu
  6. €43.24Fri
  7. €42.14Sat
Terminals

Where you leave from and where you arrive

Semarang

Rail
  • Semarang Gudang railway station
  • Semarang Poncol railway station
  • Semarang Tawang railway station

Surabaya

Rail
  • Surabaya Kota railway station
  • Surabaya Gubeng railway station
  • Surabaya Pasar Turi railway station
The journey

What the journey actually looks like

Direct or connecting
75% of the services we sell on this corridor run through without a change. The remaining 25% involve one connection.
How far it really runs
The route covers 259 km against 259 km in a straight line, a detour of 2 percent. Track and road geometry account for the difference.
Where the change is
Connections are made at Cepu, Purwodadi, Blora, Bojonegoro. The gap between arriving and leaving is 55 minutes, of which about 5 is walking.
If the connection is missed
The tightest connection we sell here has a 17 percent chance of not being made on the timetable alone. Both legs are sold on one booking, so a missed connection is ours to fix and you are rebooked at no charge.
First and last departure
The first service of the day leaves Semarang at 06:04 and the last at 17:11, across 10 departures The return direction keeps its own timetable, so the times back are not these times reversed.
The alternatives

Trains against the other ways to make this journey

Door to door means the whole journey, including reaching the terminal and leaving it at the far end. Fares are the cheapest sold on each mode.
ModeDoor to doorMovingAt the endsFromCO2Per day
Train2h 36m1h 52m44m€32.798.5 kg10
Flight3h 55m45m3h 10m€31.4165.4 kg6

Questions about Semarang to Surabaya

The questions people actually ask about this trip, answered from the same prices and times the page above is built on rather than written once and left to go stale.

How long does the Train from Semarang to Surabaya take?

The Train from Semarang to Surabaya takes 2h 36m door to door, of which 1h 52m is spent moving. The route runs 259 km. The difference between the two times is reaching the terminal and leaving it at the far end, which every time on this page includes.

How much does the Train from Semarang to Surabaya cost?

The Train from Semarang to Surabaya starts at €32.79 for one passenger, as of September 15, 2026. A typical fare is €35.54. Both are the total including taxes, supplier fees and our service fee, so the price here is the price at checkout.

Who runs the Train from Semarang to Surabaya?

2 operators run the Train from Semarang to Surabaya: KAI, Kereta Api Indonesia. Between them they file around 10 departures a day. The operator table on this page compares them on fare, journey time, cruising speed, fare conditions and what is provided on board.

Which terminal does the Train from Semarang to Surabaya use?

The Train from Semarang to Surabaya leaves from Semarang Gudang railway station and arrives at Surabaya Kota railway station. Allow about 44m for reaching the departure terminal and leaving the arrival one. That time is already inside every door to door figure quoted on this page.

Is the Train the best way from Semarang to Surabaya?

Traveling from Semarang to Surabaya by Flight costs €31.41 and takes 3h 55m door to door, against 2h 36m by Train. Which is better depends on whether the money or the hours matter more on this trip. The comparison table on this page shows every mode side by side.

When should I book the Train from Semarang to Surabaya?

Fares for the Train from Semarang to Surabaya bottom out around 21 days ahead, at €27.29. The gap between the cheapest and most expensive lead time across the window is 102 percent, measured on September 15, 2026. Booking inside the final week has consistently cost more.

How much CO2 does the Train from Semarang to Surabaya produce?

The Train from Semarang to Surabaya produces about 8.5 kg of CO2 per passenger over 259 km, which works out at roughly 33 grams per passenger kilometer. That figure is for the whole journey and for one traveler, not for the vehicle.

What is provided on board the Train from Semarang to Surabaya?

Operators on the Train from Semarang to Surabaya publish Power outlets, Wi-Fi. That is what 2 carriers on this corridor state about their own fleets, across a journey of 2h 36m door to door. Where a carrier publishes nothing, this page lists nothing for it.

Where these numbers come from

Places, coordinates, operators, which operator serves which pair, and every distance on this page are real and come from open data. Where a corridor has a filed timetable the departure times are real too, and ferry fares are the prices the operators publish themselves.

Observed service A carrier record shows this named operator serving this named pair, and we carry that through unchanged.

Where no operator publishes a fare for a corridor, the price here is our own estimate, worked out from the real distance and the real operator through a fare curve that follows lead time, day of the week and season. It tells you roughly what the journey costs. It is not a seat anyone has agreed to sell, and the payment step will not take it.

Defined in full at Door to door, Fares, The booking window, Carbon

On this page
Every figure above was computed for Semarang to Surabaya on September 15, 2026: 259 km of route against 259 km in a straight line, 10 services a day, 2 operators a cheapest fare of €32.79, and 2h 36m door to door on the fastest mode. The return direction is computed separately and its numbers are not these numbers.

Related journeys

Being on the water gives Surabaya a set of days out that do not start at a station. We do not sell those either.

A guided tour group

Day trips out of Surabaya and across Indonesia

Day trips that leave Surabaya in the morning and cover a good part of Indonesia by evening.

Partner links. We do not sell tours or tickets. We earn a commission on a booking, and it never changes the price.

Plan with Ori

Ori, the trip planner

Ask it something like this