The cheapest and fastest trains from Surabaya to Jakarta
- Cheapest price on 12 Nov
- Rp 403,652
- Average ticket price on 12 Nov
- Rp 481,961
- Fastest journey on 12 Nov
- 7 h 40 m
- Average journey duration on 12 Nov
- 8 h 44 m
- Trains on 12 Nov
- 8
- 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 travelling at rush hour.
The average ticket from Surabaya to Jakarta will cost around Rp 481,961 if you buy it on the day, but you can find cheap train tickets today for only Rp 403,652.
On Thu, 12 Nov, we found 8 trains from Surabaya to Jakarta, including 6 direct services.
These 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 .
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.

7:50 AM 8h27 Surabaya Pasar Turi 4:17 PM Jatinegara Rp 403,652 1 One-way 0 changes
9:10 AM 7h40 Surabaya Pasar Turi 4:50 PM Jatinegara Rp 403,652 1 One-way 0 changes
12:50 PM 12h00 Surabaya Pasar Turi 12:50 AM Jatinegara Rp 403,652 1 One-way 0 changes
4:05 PM 10h36 Surabaya Pasar Turi 2:41 AM Jatinegara Rp 403,652 1 One-way 0 changes
8:15 PM 8h32 Surabaya Pasar Turi 4:47 AM Jatinegara Rp 403,652 1 One-way 0 changes

9:10 AM 7h40 Surabaya Pasar Turi 4:50 PM Jatinegara Rp 403,652 1 One-way 0 changes
7:50 AM 8h27 Surabaya Pasar Turi 4:17 PM Jatinegara Rp 403,652 1 One-way 0 changes
8:15 PM 8h32 Surabaya Pasar Turi 4:47 AM Jatinegara Rp 403,652 1 One-way 0 changes
9:15 PM 9h10 Surabaya Pasar Turi 6:25 AM Jatinegara Rp 726,574 1 One-way 1 change
11:00 PM 9h49 Surabaya Pasar Turi 8:49 AM Jatinegara Station Rp 403,652 1 One-way 0 changes
Journey information
Overview: Train from Surabaya to Jakarta
Take a train from Surabaya to Jakarta and enjoy the approximately 662 km long journey. Find schedules and pricing options for a convenient and affordable trip.
The earliest train runs at 06:20, the last at 23:35.
Distance 662 km |
First train 6:20 AM |
Last train 11:35 PM |
High Season Jul - Sept |
Low Season Jan - Mar |
Busiest Day Sat |
Least Busy Day Mon |
Live departures
Surabaya to Jakarta train times
The table below shows live departures for Surabaya to Jakarta trains for today, Wednesday, 11 November. You can also manually refresh the results below to see updated train journeys.
| Provider | Departs | Duration | Arrives | Changes | Tickets |
|---|---|---|---|---|---|
![]() | 9:15 PM Surabaya Pasar Turi | 9h10 | 6:25 AM Jatinegara | 1 change | |
![]() | 11:00 PM Surabaya Pasar Turi | 9h49 | 8:49 AM Jatinegara Station | 0 changesdirect | |
| Thursday, 12 November | |||||
![]() | 7:50 AM Surabaya Pasar Turi | 8h27 | 4:17 PM Jatinegara | 0 changesdirect | |
![]() | 9:10 AM Surabaya Pasar Turi | 7h40 | 4:50 PM Jatinegara | 0 changesdirect | |
![]() | 12:50 PM Surabaya Pasar Turi | 12h00 | 12:50 AM Jatinegara | 0 changesdirect | |
![]() | 3:00 PM Surabaya Pasar Turi | 10h40 | 1:40 AM Jatinegara | 1 change | |
![]() | 4:05 PM Surabaya Pasar Turi | 10h36 | 2:41 AM Jatinegara | 0 changesdirect | |
![]() | 8:15 PM Surabaya Pasar Turi | 8h32 | 4:47 AM Jatinegara | 0 changesdirect | |
This is the last train of the day. | |||||
Find all the dates and times for this journey
FAQs: Surabaya to Jakarta train
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
