The cheapest and fastest trains from Yogyakarta to Surabaya
Cheapest price
$21
Average price
$21
Fastest journey
3 h 36 m
Average duration
3 h 48 m
Trains per day
5
Distance
270 km
The best way to find a cheap train ticket from Yogyakarta to Surabaya is to book your journey as far in advance as possible and to avoid travelling at rush hour.
The average ticket from Yogyakarta to Surabaya will cost around $21 if you buy it on the day, but you can find cheap train tickets today for only $21.
Of the 5 trains that leave Yogyakarta for Surabaya every day 5 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
These direct trains cover the 270 km distance in an average of 3 h 48 m but if you time it right, some trains will get you there in just 3 h 36 m .
The slowest trains will take 4 h 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, coach and flight for Yogyakarta to Surabaya
Omio recommends booking the coach as it is the most popular option from Yogyakarta to Surabaya among Omio's users. If you are prioritising price take the train with prices starting from $6. For those with little time consider booking a flight which can get you there in 5h 3m. The ticket price range depends on the travel mode: a train costs an average of $6, and a flight costs an average of $50.
Distance: 270 km
Compare train with
| Train | Most popular Coach | Flight |
|---|---|---|
$6 Average Price Cheapest | $8 Average Price | $102 Average Price |
6h 16m Average total duration 5h 46m Onboard + 30m Additional time* | 6h 49m Average total duration 6h 19m Onboard + 30m Additional time* | 8h 3m Average total duration Fastest 5h 3m Onboard + 3h 0m Additional time* |
Direct Options | Direct Options | Direct Options |
Live departures
Yogyakarta to Surabaya train times
| Provider | Departs | Duration | Arrives | Changes | Tickets |
|---|---|---|---|---|---|
![]() | 12:24 am Yogyakarta | 3h36 | 4:00 am Surabaya Gubeng | 0 changesdirect | |
![]() | 6:45 am Yogyakarta | 4h00 | 10:45 am Surabaya Gubeng | 0 changesdirect | |
![]() | 11:30 am Yogyakarta | 4h00 | 3:30 pm Surabaya Gubeng | 0 changesdirect | |
![]() | 1:38 pm Yogyakarta | 3h37 | 5:15 pm Surabaya Gubeng | 0 changesdirect | |
![]() | 5:00 pm Yogyakarta | 4h00 | 9:00 pm Surabaya Gubeng | 0 changesdirect |
Find all the dates and times for this journey
Compare prices and tickets Yogyakarta to Surabaya by train, coach or flight
05 Nov
06 Nov
07 Nov
08 Nov
09 Nov
10 Nov
11 Nov
12 Nov
13 Nov
14 Nov
15 Nov
16 Nov
17 Nov
18 Nov
19 Nov
20 Nov
21 Nov
22 Nov
23 Nov
24 Nov
25 Nov
Journey information
Overview: Train from Yogyakarta to Surabaya
Distance 270 km |
Average train duration 5h 46m |
Cheapest ticket price $6 |
Trains per day 13 |
Direct trains 13 |
Fastest train 5h 46m |
First train 00:40 |
Last train 23:47 |
Train companies: Kereta API from Yogyakarta to Surabaya trainsKereta API trains will get you between Yogyakarta and Surabaya from $6. With over 1000 travel companies on Omio, you can find the best train times and tickets for your trip.
Kereta API
FAQs: Yogyakarta to Surabaya train

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