SurabayaJakarta
Fri, Jul 17, 1 adult
Fri, Jul 17
+ Add return
Fri, Jul 17
+ Add return

No trains found

We are not able to find a train between these two places.

The cheapest and fastest trainsfrom Surabaya to JakartaShowing times and prices for Jul 16

Cheapest price

-

Average price

-

Fastest journey

-

Average duration

-

Trains per day

-

Distance

-

Travellers trust Omio
Join the more than 15 million travellers who’ve planned and booked their journeys with Omio.
Kereta API
Regionale
Deutsche Bahn
iryo
Frecciarossa
1,000+ travel companies
QR-Code
Scan to discover more features and savings in our app
Special in-app offers
Tickets available offline
Live trip updates
Prices include taxes and may change depending on availability. Any additional fees can be reviewed before payment. The total price will be finalized once the purchase is completed.

Surabaya to Jakarta train with Kereta API

Travel Information

Compare bus, train, and flight for Surabaya to Jakarta

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

Distance: 411 miles (662 km)

Compare train with

Train
Most popular
Bus
Flight
Driving

$29

Average price

$24

Average price

Cheapest

$79

Average price

$111

Average price

(fuel + tolls)

10h 6m

Average total duration

9h 36m

Onboard

+

30m

Additional time*

12h 32m

Average total duration

12h 2m

Onboard

+

30m

Additional time*

4h 31m

Average total duration

Fastest

1h 31m

Onboard

+

3h 0m

Additional time*

10h 30m

Average total duration

(door-to-door)

Direct Options

Direct Options

Direct Options

Direct Options

The cheapest way to travel from Surabaya to Jakarta is a bus with an average price of $24 (€20).

This is compared to other travel options from Surabaya to Jakarta:

A bus is $5 (€4) less than a train for this route with tickets for a train from Surabaya to Jakarta costing on average $29 (€24).

A bus is $55 (€45) less than a flight for this route with tickets for a flight from Surabaya to Jakarta costing on average $79 (€65).

The fastest way to travel from Surabaya to Jakarta is by flight with an average journey time of 1h 31m.

Other travel options to Jakarta take longer:

Train takes on average 9h 36m.

Bus takes on average 12h 2m.

It's helpful to compare your options as there are 3 ways to travel between Surabaya and Jakarta including taking a bus, train, and flight.
We recommend using the bus as it is the most popular way to get from Surabaya to Jakarta among Omio's users.
Take the train. On this route, it beats driving on both time and money.

The journey is about 54m faster (9h 36m by train vs 10h 30m by car) and roughly $82 (€67) cheaper once you factor in fuel and tolls ($29 (€24) vs $111 (€91)). You'll also arrive in the city centre rather than hunting for parking, and you can work, read, or watch the landscape go by instead of concentrating on the road.

Direct services run with Kereta API.

Driving is still worth considering if you want to stop along the way or need a car once you arrive.

Live departures

Surabaya to Jakarta train times

The table below shows live departures for Surabaya to Jakarta trains for today, Thursday, July 16. You can also manually refresh the results below to see updated train journeys.

Last updated at
ProviderDepartsDurationArrivesTransfers
Tickets
Kereta API4:05 PM Surabaya Pasar Turi
10h36
2:41 AM Jatinegara0 transfersDirect
Kereta API8:15 PM Surabaya Pasar Turi
8h32
4:47 AM Jatinegara0 transfersDirect
Kereta API9:15 PM Surabaya Pasar Turi
9h10
6:25 AM Jatinegara1 transfer
Kereta API11:00 PM Surabaya Pasar Turi
9h49
8:49 AM Jatinegara Station0 transfersDirect
Friday, July 17
Kereta API7:50 AM Surabaya Pasar Turi
8h27
4:17 PM Jatinegara0 transfersDirect
Kereta API9:10 AM Surabaya Pasar Turi
7h40
4:50 PM Jatinegara0 transfersDirect
Kereta API12:50 PM Surabaya Pasar Turi
12h00
12:50 AM Jatinegara0 transfersDirect
Kereta API3:00 PM Surabaya Pasar Turi
10h40
1:40 AM Jatinegara1 transfer

This is the last train of the day.

Find all the dates and times for this journey

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

Compare bus, train, 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.

Fri
Jul 17
Sat
Jul 18
Sun
Jul 19
Mon
Jul 20
Tue
Jul 21
Wed
Jul 22
Thu
Jul 23
Fri
Jul 24
Sat
Jul 25
Sun
Jul 26
Mon
Jul 27
Tue
Jul 28
Wed
Jul 29
Thu
Jul 30
Fri
Jul 31
Sat
Aug 01
Sun
Aug 02
Mon
Aug 03
Tue
Aug 04
Wed
Aug 05
Thu
Aug 06

Journey information

Overview: Train from Surabaya to Jakarta

IndonesiaIndonesia
IndonesiaIndonesia
Icon of train

Trains from Surabaya to Jakarta run on average 10 times per day, taking around 9h 36m. Cheap train tickets for this journey start at $24 (€20) but you can travel from only $15 (€13) by bus.

There are 10 trains per day. The earliest train runs at 06:20, the last at 23:35. The fastest train covers the 411 miles (662 km) distance in 7h 40m.

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 $15 (€13)
Distance
411 miles (662 km)
Average train duration
9h 36m
Cheapest ticket price
$24 (€20)
Trains per day
10
Direct trains
10
Fastest train
7h 40m
First train
6:20 AM
Last train
11:35 PM
Cheapest Month
Jun
Cheapest Day
Wed
High Season
Jul - Sep
Low Season
Jan - Mar
Busiest Day
Wed
Least Busy Day
Mon
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 $15 (€13)

Train companies: Kereta API from Surabaya to Jakarta trainsKereta API trains will get you between Surabaya and Jakarta from $15 (€13). 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
7h 40m
Cheapest Price
$24 (€20)
Kereta API frequency
7 a day

Complete guide to Jakarta

Things to do in Jakarta

Discover the best of Jakarta — top attractions, local food, transport tips, budget advice, and currency essentials. Plan your perfect Jakarta trip today.

  • Must visit

Museum Sejarah Jakarta

Housed in a grand colonial building, this museum introduces Jakarta's history from ancient port city to modern capital.

  • Must visit

Museum Nasional Indonesia

Indonesia's flagship museum displays archaeology, ethnography, and iconic treasures, making it essential for understanding the nation.

  • Must visit

Museum MACAN

A contemporary art institution with rotating exhibitions, public programs, and an accessible introduction to current Indonesian art.

Indonesian rupiah (Rp)

Moderate for Southeast Asia: hotels vary widely, local meals are cheap, malls and nightlife cost more, and transit is low-cost if you use commuter rail or buses.

Average meal costs

Budget
Rp25.000-Rp60.000 for street food or simple meals.
Mid-range
Rp100.000-Rp250.000 per person for a meal.
Fine dining
Rp400.000+ per person for upscale dining.
Coffee
Rp30.000-Rp60.000 for a coffee.

Tipping culture

Tipping is not mandatory. Restaurants may add service charge; otherwise round up or leave 5-10%. Round up taxi fares. Small tips at cafes are appreciated but optional.

FAQs: Trains from Surabaya to Jakarta

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

FAQs
Train ticket prices from Surabaya to Jakarta can vary. The cheapest ticket starts at $24 (€20), while the average price is around $29 (€24).
The train from Surabaya to Jakarta takes 7h 40m and runs 10 per day.
The distance by train from Surabaya to Jakarta is 411 miles (662 km).
The first train from Surabaya to Jakarta leaves at 6:20 AM.
The last train from Surabaya to Jakarta leaves at 11:35 PM.
There is no high speed train available from Surabaya to Jakarta.
Yes, there is a direct train from Surabaya to Jakarta. This service operates 10 times per day, provided by Kereta API.
Unfortunately, there is no night train available from Surabaya to Jakarta.
The train station in Surabaya that goes to Jakarta is Surabaya Gubeng, which connects to Jatinegara.
The cheapest way to get from Surabaya to Jakarta is by bus, with a cost of around $15 (€13).
The train journey from Surabaya to Jakarta offers a variety of scenic views, including lush countryside, rice paddies, and glimpses of local villages, providing a picturesque window into the natural and cultural landscapes of Java.
A day trip from Surabaya to Jakarta is not feasible as the journey takes 7h 40m. However, there are 10 trains per day for this route, covering a distance of 411 miles (662 km).
Typically, 3 to 4 days in Jakarta is sufficient to explore its main attractions, enjoy local cuisine, and experience the city's vibrant culture.
Yes, you can take the train from Surabaya to Jakarta.
Since neither Surabaya nor Jakarta are in the Schengen Area, passport requirements depend on the specific immigration rules of Indonesia and Indonesia. Entry and visa requirements can be subject to change. For the latest information, check with your destination's embassy or consulate.
We recommend using the bus as it is the most popular way to get from Surabaya to Jakarta among Omio's users.
Items not allowed on trains typically include hazardous materials such as explosives, flammable liquids, corrosive substances, and illegal drugs. Additionally, large or bulky items that may obstruct aisles or emergency exits, as well as pets without proper carriers, may be restricted. Specific prohibited items can vary by train operator and region, so please check the rules for your particular journey.
The currency used in Indonesia is the Indonesian Rupiah (IDR). For travelers, it is generally better to carry cash, especially in smaller towns and markets where card acceptance may be limited, though cards are widely accepted in major cities and larger establishments.
In Jakarta, travelers should be cautious of petty theft, especially pickpocketing in crowded areas and on public transportation. Scams involving overcharging by taxi drivers and unofficial ride-hailing services are common, so it's advisable to use reputable apps or agree on fares beforehand. Avoid accepting unsolicited help from strangers and be wary of counterfeit money when making payments. Traffic safety is also a concern due to heavy congestion and aggressive driving habits. Staying vigilant and using official transportation options can help mitigate these risks.
Pack lightweight, versatile clothing suitable for the destination's climate, and use secure, lockable luggage to protect belongings. Keep essential items like travel documents, medication, and valuables in a carry-on bag for easy access. Use packing organizers or cubes to maximize space and maintain order. Lastly, include a small first aid kit and personal hygiene items for added comfort during travel.

More options for your journey from Surabaya to Jakarta

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

HomeTrainsSurabaya to Jakarta 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