Semarang to Surabaya train with Kereta API

Thu, Apr 02
+ Add return
Kereta API
Regionale
Deutsche Bahn
iryo
Frecciarossa
2,000+ travel companies
Kereta API
Regionale
Deutsche Bahn
iryo
Frecciarossa
2,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 Semarang to Surabaya

Showing times and prices for Apr 02

Cheapest price

$20

Average price

$20

Fastest journey

2 h 52 m

Average duration

3 h 19 m

Trains per day

5

Distance

259 km

Cheap tickets

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

The average ticket from Semarang to Surabaya 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 5 trains that leave Semarang for Surabaya on Thu, Apr 02, 5 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.

On Thu, Apr 02 the direct trains cover the 259 km distance in an average of 3 h 19 m but if you time it right, some trains will get you there in just 2 h 52 m .

On Thu, Apr 02 the slowest trains will take 4 h 3 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
    12:38 AM3h33
    Semarang Tawang
    4:11 AMSurabaya Pasar Turi
    $201One-way
    0 transfers
  • Kereta API
    1:22 AM2h53
    Semarang Tawang
    4:15 AMSurabaya Pasar Turi
    $201One-way
    0 transfers
  • Kereta API
    3:53 AM4h05
    Semarang Tawang
    7:58 AMSurabaya Pasar Turi
    $201One-way
    0 transfers
  • Kereta API
    4:21 AM4h04
    Semarang Tawang
    8:25 AMSurabaya Pasar Turi
    $201One-way
    0 transfers
  • Kereta API
    8:31 AM4h24
    Semarang Tawang
    12:55 PMSurabaya Pasar Turi
    $201One-way
    0 transfers

Travel Information

Compare train, bus, and flight for Semarang to Surabaya

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

Distance: 160 miles (259 km)

Compare train with

Train
Most popular
Bus
Flight

$20

Average price

$11

Average price

Cheapest

$73

Average price

4h 18m

Average total duration

3h 48m

Onboard

+

30m

Additional time*

5h 55m

Average total duration

5h 25m

Onboard

+

30m

Additional time*

5h 29m

Average total duration

Fastest

2h 29m

Onboard

+

3h 0m

Additional time*

Direct Options

Direct Options

Direct Options

Live departures

Semarang to Surabaya train times

The table below shows live departures for Semarang to Surabaya trains for tomorrow, Wednesday, April 1. You can also manually refresh the results below to see updated train journeys.

Last updated at
ProviderDepartsDurationArrivesTransfers
Tickets
Kereta API12:38 AM Semarang Tawang
3h33
4:11 AM Surabaya Pasar Turi0 transfersDirect
Kereta API1:22 AM Semarang Tawang
2h53
4:15 AM Surabaya Pasar Turi0 transfersDirect
Kereta API3:53 AM Semarang Tawang
4h05
7:58 AM Surabaya Pasar Turi0 transfersDirect
Kereta API4:21 AM Semarang Tawang
4h04
8:25 AM Surabaya Pasar Turi0 transfersDirect
Kereta API8:31 AM Semarang Tawang
4h24
12:55 PM Surabaya Pasar Turi0 transfersDirect

Find all the dates and times for this journey

Compare prices and tickets Semarang to Surabaya 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.

Thu
Apr 02
Fri
Apr 03
Sat
Apr 04
Sun
Apr 05
Mon
Apr 06
Tue
Apr 07
Wed
Apr 08

Journey information

Overview: Train from Semarang to Surabaya

IndonesiaIndonesia
IndonesiaIndonesia
Icon of train

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

There are 10 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 52m.

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 48m
Cheapest ticket price
$20 (€16)
Trains per day
10
Direct trains
10
Fastest train
2h 52m
First train
5:50 AM
Last train
11:00 PM
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 Semarang to Surabaya trainsKereta API trains will get you between Semarang and Surabaya 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 52m
Cheapest Price
$20 (€16)
Kereta API frequency
10 a day

FAQs: Trains from Semarang to Surabaya

Find answers to the most common questions about traveling from Semarang to Surabaya 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 Surabaya, this guide helps you travel smarter and with confidence.

FAQs
Train ticket prices from Semarang to Surabaya can vary. The cheapest ticket starts at $20 (€16), while the average price is around $20 (€16).
The train from Semarang to Surabaya takes 2h 52m and runs 10 per day.
The distance by train from Semarang to Surabaya is 160 miles (259 km).
The first train from Semarang to Surabaya leaves at 5:50 AM.
The last train from Semarang to Surabaya leaves at 11:00 PM.
There is no high speed train available from Semarang to Surabaya.
Yes, there is a direct train from Semarang to Surabaya. This service operates 10 times per day, provided by Kereta API.
Unfortunately, there is no night train available from Semarang to Surabaya.
The train station in Semarang that goes to Surabaya is Train Station Semarang Poncol, which connects to Surabaya Pasarturi.
The cheapest way to get from Semarang to Surabaya is by bus, with a cost of around $6 (€5).
The train journey from Semarang to Surabaya offers a varied landscape with glimpses of lush rice paddies, traditional villages, and occasional views of distant mountains, making it a pleasant and interesting ride.
A day trip from Semarang to Surabaya is not feasible as the journey takes 2h 52m. However, trains run frequently with 10 trips per day.
Two to three days are ideal to explore Surabaya's main attractions, including the House of Sampoerna, Surabaya Zoo, and Tugu Pahlawan.
Yes, you can take the train from Semarang to Surabaya.

More options for your journey from Semarang to Surabaya

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

HomeTrainsSemarang to Surabaya 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