Surabaya to Semarang train with Kereta API

Sat, Dec 20
+ Add return
Kereta API
Regionale
Deutsche Bahn
iryo
Italo
1,000+ travel companies
Kereta API
Regionale
Deutsche Bahn
iryo
Italo
1,000+ travel companies
QR-Code
Scan to get our free app
Use our app to get live travel updates and book mobile tickets for trains, buses, flights, and ferries.
App Store
rate4.9
42K ratings
Google Play
rate4.6
136K reviews

The cheapest and fastest trains from Surabaya to Semarang

Showing times and prices for Dec 22

Cheapest price

$20

Average price

$20

Fastest journey

3 h 4 m

Average duration

3 h 36 m

Trains per day

4

Distance

259 km

Cheap tickets

The best way to find a cheap train ticket from Surabaya to Semarang is to book your journey as far in advance as possible and to avoid traveling at rush hour.

The average ticket from Surabaya to Semarang will cost around $20 if you buy it on the day, but the cheapest tickets can be found for only $20.

Fast trains

Of the 4 trains that leave Surabaya for Semarang on Mon, Dec 22, 4 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.

On Mon, Dec 22 the direct trains cover the 259 km distance in an average of 3 h 36 m but if you time it right, some trains will get you there in just 3 h 4 m .

On Mon, Dec 22 the slowest trains will take 4 h 21 m and usually involve a change or two along the way, but you might be able to save a few pennies if you’re on a budget.

Kereta API
05:45PM4h21
Surabaya Pasar Turi
10:06PMSemarang Tawang
$201One-way
0 transfers
Kereta API
08:15PM3h26
Surabaya Pasar Turi
11:41PMSemarang Tawang
$201One-way
0 transfers
Kereta API
09:15PM3h04
Surabaya Pasar Turi
12:19AMSemarang Tawang
$201One-way
0 transfers
Kereta API
11:00PM3h31
Surabaya Pasar Turi
02:31AMSemarang Tawang
$201One-way
0 transfers

Travel Information

Compare train, bus, and flight for Surabaya to Semarang

Omio recommends booking the flight as it is the most popular option from Surabaya to Semarang among Omio's users. If you are prioritising price take the bus with prices starting from €5. For those with little time consider booking a flight which can get you there in 1h 32m. The ticket price range depends on the travel mode: a bus costs an average of €5, and a flight costs an average of €37.

Distance: 160 miles (259 km)

Compare train with

Train
Most popular
Flight
Bus

€16

Average price

€60

Average price

€6

Average price

Cheapest

4h 14m

Average total duration

3h 44m

Onboard

+

30m

Additional time*

4h 32m

Average total duration

Fastest

1h 32m

Onboard

+

3h 0m

Additional time*

5h 59m

Average total duration

5h 29m

Onboard

+

30m

Additional time*

Direct Options

Direct Options

Direct Options

Compare prices and tickets Surabaya to Semarang by train, bus, or flight

Compare train, bus, and flight prices over the next three weeks. See the best deals at a glance, find the lowest fares, and choose the option that fits your budget.

Mon
Dec 22
Tue
Dec 23
Wed
Dec 24
Thu
Dec 25
Fri
Dec 26
Sat
Dec 27
Sun
Dec 28

Why should you book Surabaya to Semarang trains with Omio?

Kereta API operates all train services from Surabaya to Semarang. Omio is the only official third party seller for Kereta API tickets.

Why book with Omio vs Kereta API?

  • Designed for International Travelers: Omio is in your language including 24/7 customer service and offers multiple payment options, including PayPal, credit cards, and bank transfer, in your preferred currency.
  • Compare all your options: Omio allows you to compare Kereta API with all available travel options, which are train, bus and flight to ensure you get the best deal for traveling from Surabaya to Semarang.

Why book with Omio over Trainline and Rail Europe?

Multiple modes of transport
  • Official reseller: Kereta API tickets can only be bought on Omio or Kereta API's website as Omio is the only official third party seller for Kereta API tickets. Trainline, RailEurope, and Rail.Ninja do not sell Kereta API tickets as they are not official sellers.
  • Multiple modes of transport: Omio allows you to compare travel options including train, bus and flight to find the ideal travel option from Surabaya to Semarang.

Journey information

Overview: Train from Surabaya to Semarang

IndonesiaIndonesia
IndonesiaIndonesia
Icon of train

Trains from Surabaya to Semarang run on average 5 times per day, taking around 3h 44m. Cheap train tickets for this journey start at $20 (€16) but you can travel from only $6 (€5) by bus.

There are 5 trains per day. The earliest train runs at 05:50, the last at 23:00. The fastest train covers the 160 miles (259 km) distance in 2h 59m.

Fares are the lowest economy prices found on Omio. Early booking often means lower prices. Prices change daily and are subject to availability. Discount cards, coach trips, and booking fees are not included.
Price information
Cheapest alternative travel mode
Bus from $6 (€5)
Distance
160 miles (259 km)
Average train duration
3h 44m
Cheapest ticket price
$20 (€16)
Trains per day
5
Direct trains
5
Fastest train
2h 59m
First train
05:50
Last train
23:00
Fares are the lowest economy prices found on Omio. Early booking often means lower prices. Prices change daily and are subject to availability. Discount cards, coach trips, and booking fees are not included.
Price information
Cheapest alternative travel mode
Bus from $6 (€5)

Train companies: Kereta API from Surabaya to Semarang trainsKereta API trains will get you between Surabaya and Semarang from $6 (€5). With over 1000 travel companies on Omio, you can find the best train times and tickets for your trip.

Kereta API

Luggage & cancellation policy
Average Duration
2h 59m
Cheapest Price
$20 (€16)
Kereta API frequency
8 a day

FAQs: Trains from Surabaya to Semarang

Find answers to the most common questions about traveling from Surabaya to Semarang by train. From journey times and ticket prices to direct connections, first and last departures, and even whether the route is scenic, our FAQs cover everything you need to plan your trip. Whether you’re looking for the fastest train, the cheapest option, or tips for making the most of your visit at Semarang, this guide helps you travel smarter and with confidence.

FAQs
The train journey from Surabaya to Semarang offers scenic views of Java's lush landscapes, including rice paddies, rural villages, and volcanic mountains, providing a picturesque travel experience.
Three to four days are ideal to explore Semarang, allowing time to visit historical sites like Lawang Sewu, enjoy local cuisine, and discover cultural attractions such as Sam Poo Kong Temple and Kota Lama.
The distance by train from Surabaya to Semarang is 160 miles (259 km).
A day trip from Surabaya to Semarang is not feasible as the journey takes 2h 59m each way. However, there are 5 train trips available per day.
The train station in Surabaya that goes to Semarang is Surabaya Pasarturi, which connects to Semarang Tawang Bank Jateng.
Train ticket prices from Surabaya to Semarang can vary. The cheapest ticket starts at $20 (€16), while the average price is around $20 (€16).
There is no high speed train available from Surabaya to Semarang.
The train from Surabaya to Semarang takes 2h 59m and runs 5 per day.
The cheapest way to get from Surabaya to Semarang is by bus, with a cost of around $6 (€5).
The last train from Surabaya to Semarang leaves at 11:00 PM.
The first train from Surabaya to Semarang leaves at 5:50 AM.
Unfortunately, there is no night train available from Surabaya to Semarang.
Yes, you can take the train from Surabaya to Semarang.
Yes, there is a direct train from Surabaya to Semarang. This service operates 5 times per day, provided by Kereta API.

More options for your journey from Surabaya to Semarang

Here are some other resources that might have the information you need

HomeTrainsSurabaya to Semarang train

The Omio App Makes Travel Planning Easy

We’ll get you where you want to go. From live train updates to mobile tickets, our innovative app is the ideal way to plan and keep track of your travel.

ios-badge
android-badge
Hand With Phone