The cheapest and fastest trains from Surabaya to Jakarta
Cheapest price
$25
Average price
$25
Fastest journey
7 h 40 m
Average duration
8 h 44 m
Trains per day
5
Distance
662 km
The best way to find a cheap train ticket from Surabaya to Jakarta is to book your journey as far in advance as possible and to avoid traveling at rush hour.
The average ticket from Surabaya to Jakarta will cost around $25 if you buy it on the day, but the cheapest tickets can be found for only $25.
Of the 5 trains that leave Surabaya for Jakarta on Thu, Jan 15, 4 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
On Thu, Jan 15 the direct trains cover the 662 km distance in an average of 8 h 44 m but if you time it right, some trains will get you there in just 7 h 40 m .
On Thu, Jan 15 the slowest trains will take 9 h 49 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.










Travel Information
Compare train, bus, 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 €13. For those with little time consider booking a flight which can get you there in 1h 28m. The ticket price range depends on the travel mode: a bus costs an average of €13, and a flight costs an average of €39.
Distance: 411 miles (662 km)
Compare train with
| Train | Most popular Bus | Flight |
|---|---|---|
€24 Average price | €14 Average price Cheapest | €53 Average price |
10h 6m Average total duration 9h 36m Onboard + 30m Additional time* | 12h 33m Average total duration 12h 3m Onboard + 30m Additional time* | 4h 28m Average total duration Fastest 1h 28m Onboard + 3h 0m Additional time* |
Direct Options | Direct Options | Direct Options |
Live departures
Surabaya to Jakarta train times
The table below shows live departures for Surabaya to Jakarta trains for today, Wednesday, January 14. You can also manually refresh the results below to see updated train journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
![]() | 3:00 PM Surabaya Pasar Turi | 10h40 | 1:40 AM Jatinegara | 1 transfer | |
![]() | 4:05 PM Surabaya Pasar Turi | 10h36 | 2:41 AM Jatinegara | 0 transfersDirect | |
| Thursday, January 15 | |||||
![]() | 7:50 AM Surabaya Pasar Turi | 8h27 | 4:17 PM Jatinegara | 0 transfersDirect | |
![]() | 9:10 AM Surabaya Pasar Turi | 7h40 | 4:50 PM Jatinegara | 0 transfersDirect | |
![]() | 12:50 PM Surabaya Pasar Turi | 12h00 | 12:50 AM Jatinegara | 0 transfersDirect | |
Find all the dates and times for this journey
Compare prices and tickets Surabaya to Jakarta 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.
Jan 15
Jan 16
Jan 17
Jan 18
Jan 19
Jan 20
Jan 21
Why should you book Surabaya to Jakarta trains with Omio?
Kereta API operates all train services from Surabaya to Jakarta. 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 Jakarta.
Why book with Omio over Trainline and Rail Europe?
- 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 Jakarta.
Journey information
Overview: Train from Surabaya to Jakarta
Train Ticket Prices
- Budget Options: Train tickets from Surabaya to Jakarta start from as low as $25 (€20) if booked well in advance.
- Standard Fares: Typically, trains cost $30 (€24) depending on the train type and class.
Journey Duration & Frequency
- On average there are 10 daily trains from Surabaya to Jakarta with 10 direct service.
- The fastest trains can take as little as 7h 40m but the average duration is 9h 36m
Train Operators
- Travel from Surabaya to Jakarta with Kereta API
- The most booked train company for this route on Omio is Kereta API.
Stations & Schedule
- Most trains depart from Surabaya Gubeng and arrive in Jatinegara
- First train typically departs at 06:20 AM and the last at 11:35 PM
Distance 411 miles (662 km) |
Average train duration 9h 36m |
Cheapest ticket price $25 (€20) |
Trains per day 10 |
Direct trains 10 |
Fastest train 7h 40m |
First train 06:20 |
Last train 23:35 |
Train companies: Kereta API from Surabaya to Jakarta trainsKereta API trains will get you between Surabaya and Jakarta from $16 (€13). With over 1000 travel companies on Omio, you can find the best train times and tickets for your trip.
Kereta API
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.

More options for your journey from Surabaya to Jakarta
Here are some other resources that might have the information you need
