The cheapest and fastest trains from Surabaya to Yogyakarta
Cheapest price
$20
Average price
$24
Fastest journey
3 h 27 m
Average duration
3 h 49 m
Trains per day
9
Distance
270 km
The best way to find a cheap train ticket from Surabaya to Yogyakarta is to book your journey as far in advance as possible and to avoid traveling at rush hour.
The average ticket from Surabaya to Yogyakarta will cost around $24 if you buy it on the day, but the cheapest tickets can be found for only $20.
Of the 9 trains that leave Surabaya for Yogyakarta on Fri, Aug 28, 7 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
On Fri, Aug 28 the direct trains cover the 270 km distance in an average of 3 h 49 m but if you time it right, some trains will get you there in just 3 h 27 m .
On Fri, Aug 28 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.
7:00 AM4h00Surabaya Gubeng11:00 AMYogyakarta$201One-way0 transfers
8:30 AM3h27Surabaya Gubeng11:57 AMYogyakarta$201One-way0 transfers
11:15 AM4h00Surabaya Gubeng3:15 PMYogyakarta$201One-way0 transfers
4:28 PM5h56Surabaya Gubeng10:24 PMYogyakarta Tugu$201One-way0 transfers
4:30 PM4h05Surabaya Gubeng8:35 PMYogyakarta$201One-way0 transfers
8:30 AM3h27Surabaya Gubeng11:57 AMYogyakarta$201One-way0 transfers
7:20 PM3h47Surabaya Gubeng11:07 PMYogyakarta$201One-way0 transfers
8:00 PM3h49Surabaya Gubeng11:49 PMYogyakarta$201One-way0 transfers
7:00 AM4h00Surabaya Gubeng11:00 AMYogyakarta$201One-way0 transfers
11:15 AM4h00Surabaya Gubeng3:15 PMYogyakarta$201One-way0 transfers
Travel Information
Compare train, flight, and bus for Surabaya to Yogyakarta
Omio recommends booking the bus as it is the most popular option from Surabaya to Yogyakarta among Omio's users. If you are prioritising price take the bus with prices starting from $9. For those with little time consider booking a flight which can get you there in 2h 40m. The ticket price range depends on the travel mode: a bus costs an average of $9, and a flight costs an average of $115.
Distance: 167 miles (270 km)
Compare train with
| Train | Most popular Bus | Flight | Driving |
|---|---|---|---|
$24 Average price | $17 Average price Cheapest | $147 Average price | $62 Average price (fuel + tolls) |
4h 58m Average total duration 4h 28m Onboard + 30m Additional time* | 7h 12m Average total duration 6h 42m Onboard + 30m Additional time* | 4h 40m Average total duration Fastest 2h 40m Onboard + 2h 0m Additional time* | 4h 28m Average total duration (door-to-door) |
Direct Options | Direct Options | Direct Options | Direct Options |
This is compared to other travel options from Surabaya to Yogyakarta:
A bus is $7 (€6) less than a train for this route with tickets for a train from Surabaya to Yogyakarta costing on average $24 (€20).
A bus is $131 (€105) less than a flight for this route with tickets for a flight from Surabaya to Yogyakarta costing on average $147 (€119).
Other travel options to Yogyakarta take longer:
Train takes on average 4h 28m.
Bus takes on average 6h 42m.
Tickets start at around $24 (€20) compared to roughly $62 (€50) in fuel and tolls — a saving of about $37 (€30). The journey takes 4h 28m versus 4h 28m by car, so you'll arrive a bit later, but you can work, read, or sleep along the way rather than spending the time behind the wheel. You'll also save the hassle of parking at the other end.
Direct services run with Kereta API.
Driving is worth it if you're on a tight schedule, travelling as a group, or want to stop somewhere en route.
Live departures
Surabaya to Yogyakarta train times
The table below shows live departures for Surabaya to Yogyakarta trains for today, Thursday, August 27. You can also manually refresh the results below to see updated train journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
![]() | 11:15 AM Surabaya Gubeng | 4h00 | 3:15 PM Yogyakarta | 0 transfersDirect | |
![]() | 2:18 PM Surabaya Gubeng | 5h55 | 8:13 PM Yogyakarta Tugu | 1 transfer | |
![]() | 4:28 PM Surabaya Gubeng | 5h56 | 10:24 PM Yogyakarta Tugu | 0 transfersDirect | |
![]() | 4:30 PM Surabaya Gubeng | 4h05 | 8:35 PM Yogyakarta | 0 transfersDirect | |
![]() | 7:20 PM Surabaya Gubeng | 3h47 | 11:07 PM Yogyakarta | 0 transfersDirect | |
![]() | 8:00 PM Surabaya Gubeng | 3h49 | 11:49 PM Yogyakarta | 0 transfersDirect | |
| Friday, August 28 | |||||
![]() | 5:00 AM Surabaya Gubeng | 5h35 | 10:35 AM Yogyakarta | 1 transfer | |
![]() | 7:00 AM Surabaya Gubeng | 4h00 | 11:00 AM Yogyakarta | 0 transfersDirect | |
![]() | 8:30 AM Surabaya Gubeng | 3h27 | 11:57 AM Yogyakarta | 0 transfersDirect | |
This is the last train of the day. | |||||
Find all the dates and times for this journey
Compare prices and tickets Surabaya to Yogyakarta by train, flight, or bus
Compare train, flight, and bus 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.
Aug 28
Aug 29
Aug 30
Aug 31
Sep 01
Sep 02
Sep 03
Journey information
Overview: Train from Surabaya to Yogyakarta
Trains from Surabaya to Yogyakarta run on average 15 times per day, taking around 4h 28m. Cheap train tickets for this journey start at $20 (€16) but you can travel from only $9 (€8) by bus.
There are 15 trains per day. The earliest train runs at 00:40, the last at 23:47. The fastest train covers the 167 miles (270 km) distance in 3h 27m.
Distance 167 miles (270 km) |
Average train duration 4h 28m |
Cheapest ticket price $20 (€16) |
Trains per day 15 |
Direct trains 15 |
Fastest train 3h 27m |
First train 12:40 AM |
Last train 11:47 PM |
High Season Jul - Sep |
Low Season Jan - Mar |
Busiest Day Sun |
Least Busy Day Sun |
Train companies: Kereta API from Surabaya to Yogyakarta trainsKereta API trains will get you between Surabaya and Yogyakarta from $9 (€8). 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 Yogyakarta
Find answers to the most common questions about traveling from Surabaya to Yogyakarta 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 Yogyakarta, this guide helps you travel smarter and with confidence.

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