Sahid Hotel, Surabaya

Semarang to Surabaya

Compare trains, coaches, flights and ferries from Semarang to Surabaya. From €27.29, fastest 2h 33m, with the total price and every fee shown up front.

Semarang to Surabaya runs about 10 times a day, with the first departure around 06:04 and the last around 17:11. One passenger pays between €27.29 and €35.54, every fee included, depending on the operator and the way you travel. The fastest door to door is 2h 33m over 263 km, on services run by 5 operators across 2 modes.

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

What one seat costs

The spread between the cheapest and dearest typical fare on this corridor, across 5 operators and 2 ways of making the journey. The operator sets the price on the day.

Typical fares · Priced for 6 October 2026

€27.29 to €35.54

  • 177%Moves across the booking window

When it runs, leaving Semarang

No operator has filed a timetable for this direction yet, so the first and last departure below follow the pattern of the corridor. Read them as the shape of the service day rather than as times to turn up for.

  • 06:04First departure
  • 17:11Last departure
  • 10Services per day
  • 60%Run direct

Kereta Api Indonesia runs this service and does not sell it here. Bookaway takes the payment.

Buying this journey

Bookaway lists departures for Semarang to Surabaya on your date, and you pay on their side.

Partner link. We do not sell this ticket, and we earn nothing from this one.

Fares by date

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

Typical fares

  1. about €65.04Fri18
  2. about €57.37Sat19
  3. about €53.83Sun20
  4. about €45.57Mon21
  5. about €41.44Tue22
  6. about €44.98Wed23
  7. about €53.24Thu24
  8. about €43.24Fri25
  9. about €42.14Sat26
  10. about €39.67Sun27
  11. about €34.99Mon28
  12. about €36.13Tue29
  13. about €37.31Wed30
  14. about €39.08Thu1
  15. about €33.34Fri2
  16. about €32.59Sat3
  17. about €30.59Sun4
  18. about €30.59Mon5
  19. about €27.29Tue6
  20. about €29.49Wed7
  21. about €35.54Thu8

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.

The flight 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 flight 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.9490 days
  2. €23.4460 days
  3. €25.0945 days
  4. €29.4930 days
  5. €35.5421 days
  6. €39.0814 days
  7. €53.247 days
  8. €53.833 days
  9. €65.041 days
Cheapest lead time
Fares bottom out around 60 days ahead, at €23.44.
How much it moves
The gap between the cheapest and dearest lead time is 177 percent. The dearest point is €65.04, 1 days out.
What that means
Today sits inside the cheap window, which closes about 60 days before departure. Waiting from here has usually cost money on this corridor rather than saved it.
€65.04€23.44137142130456090

Book now Fares on this route are lowest around 60 days ahead. You are inside that window.

This corridor, specifically

Facts that apply to Semarang to Surabaya and to no other route on the site.

Clocks

Both ends keep the same time, so the arrival is the departure plus the journey.

The shape of it

263 km

259 km as the crow flies, 2% further by the route services take. The bearing runs east.

Who lives at each end

1,694,7403,018,022

Population at the departure city and at the arrival city, which is usually what decides how often anything runs.

How we know

0/4

4 of these connections were inferred from service-area overlap rather than observed in a timetable. We would rather say so.

The route

SemarangSemarangSurabayaSurabaya
The journey

What the journey looks like

Direct or connecting, how far the route really runs, and what happens when a connection is missed.

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 263 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.

Surabaya is large, and the road in from SUB can take longer than the last hour of the flight. Cars are not our business.

A taxi rank outside an airport terminal

A car waiting when you land in Surabaya

Settled in advance, so the ride into Surabaya costs what it said it would rather than what the rank says.

Partner links. We do not operate transfers. We earn a commission on a booking, and the fare is the same as going direct.

Who runs this route

The flight gets in hours before any room is ready. Holding a bag is not what we sell.

Left luggage lockers

Left luggage near Surabaya Kota railway station

Most of the points near Surabaya Kota railway station open before the first train and shut after the last one.

Partner links. We do not run these networks. We earn a commission on a booking, and the price is the same as going direct.

Questions about Semarang to Surabaya

The questions people actually ask about this journey, 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 it take to get from Semarang to Surabaya?

The fastest journey from Semarang to Surabaya takes 2h 33m door to door, of which 1h 52m is spent moving, on the train. Most services take around 3h 19m, because that average includes slower stopping services and journeys with a connection. Times include reaching the terminal and leaving it at the far end.

How much does it cost to travel from Semarang to Surabaya?

The cheapest fare from Semarang to Surabaya is €27.29, as of 17 September 2026. A typical fare across the next three weeks is €46.16. Both figures are the total for one passenger, including taxes, supplier fees and our service fee, so nothing is added at checkout.

What is the cheapest way to get from Semarang to Surabaya?

The cheapest way from Semarang to Surabaya is by train, at €27.29 for one passenger on 6 October 2026. That journey takes 2h 36m door to door. Cheaper is rarely faster on this corridor, and the comparison table on this page shows what each mode costs against what it saves.

What is the fastest way to get from Semarang to Surabaya?

The fastest way from Semarang to Surabaya is by train, at 2h 36m door to door. Only 1h 52m of that is spent moving; the remaining 44m is reaching the terminal and leaving it at the far end. The cheapest fare on that mode is €27.29.

When should I book Semarang to Surabaya?

Fares from Semarang to Surabaya bottom out around 60 days before departure, at €23.44. Across the whole booking window the gap between the cheapest and the dearest lead time is 177 percent, measured on 17 September 2026. Booking inside the last week has consistently cost more on this corridor.

Which day of the week is cheapest for Semarang to Surabaya?

Monday is the cheapest day to depart from Semarang to Surabaya, at €34.99. That is the median of 21 priced departure days across the next three weeks, as of 17 September 2026. Shifting a departure by one day is usually worth more than shifting the booking by one week.

Which month is cheapest for Semarang to Surabaya?

February is the cheapest of the next 5 months to travel from Semarang to Surabaya, at €22.89 for one passenger. Each month is priced on its fifteenth, so the comparison is like for like rather than a mix of weekends and midweek departures.

Who runs services from Semarang to Surabaya?

No operator record names Semarang to Surabaya directly. Garuda Indonesia, KAI, Kereta Api Indonesia, NAM Air, Wings Air publish service areas covering both ends and may serve it, so we list them as possible operators rather than confirmed ones.

Is there a direct service from Semarang to Surabaya?

75 percent of the services we sell from Semarang to Surabaya are direct. The rest connect at Cepu, Purwodadi, Blora, Bojonegoro, with about 55 minutes between the two services. Both legs are sold on one booking, so a missed connection is rebooked at no charge.

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

Travelling from Semarang to Surabaya by train produces about 8.5 kg of CO2 per passenger, the lowest of any mode on this corridor. The same journey by Flight produces about 65.4 kg, roughly 8 times as much for one passenger.

Which station or terminal do services from Semarang to Surabaya use?

Services from Semarang to Surabaya by train leave from Semarang Gudang railway station and arrive at Surabaya Kota railway station. Allow about 44m in total for reaching the departure terminal and leaving the arrival one, which is already included in every door to door time on this page.

Can I change or refund a ticket from Semarang to Surabaya?

2 of the 5 operators we sell from Semarang to Surabaya allow a change or a refund. A change on a changeable fare costs €5.00. The operator table on this page names which is which, and the condition is shown again before you pay.

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.

Derived from service area No carrier record names this exact pair. The operators listed publish a service area covering both places at a distance their mode plausibly carries people, which is evidence that the corridor is served and not evidence of a specific service. Pages state which, because presenting the two as the same thing would be dishonest.

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, Distances

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

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.

The two ends, compared

Semarang reaches 84 places in 3 countries on services we hold, over distances from 52 to 1,486 km. Surabaya reaches 89 places in 8 countries, from 42 to 8,662 km.

Other ways to make this journey

Leaving Semarang

  • 84Places you can leave for
  • 3Countries
  • 13Operators

Arriving in Surabaya

Leaving Surabaya

  • 89Places you can leave for
  • 8Countries
  • 23Operators

Find tickets

Plan with Ori

Ori, the trip planner

Ask it something like this