SurabayaYogyakarta
Tue, Jul 14, 1 adult
Tue, Jul 14
+ Add return
Tue, Jul 14
+ Add return

2nd cheapest
Daytrans
03:25PM6h15m09:40PM
Surabaya, Tenggilis Mejoyo (Rungkut Surabaya)
Yogyakarta, Kotagede
$181One-way
2nd cheapest
Daytrans
03:25PM6h30m09:55PM
Surabaya, Tenggilis Mejoyo (Rungkut Surabaya)
Kota Yogyakarta
$181One-way
2nd cheapest
Daytrans
03:40PM6h15m09:55PM
Surabaya, Wonocolo
Kota Yogyakarta
$181One-way
2nd cheapest, 2nd Fastest
Daytrans
03:40PM6h0m09:40PM
Surabaya, Wonocolo
Yogyakarta, Kotagede
$181One-way
2nd cheapest
Daytrans
04:00PM6h40m10:40PM
Surabaya, Embong Malang
Yogyakarta, Kotagede
$181One-way
2nd cheapest
Daytrans
04:00PM6h55m10:55PM
Surabaya, Embong Malang
Kota Yogyakarta
$181One-way
2nd cheapest
Daytrans
04:10PM6h45m10:55PM
Surabaya, Tegalsari
Kota Yogyakarta
$181One-way
2nd cheapest
Daytrans
04:10PM6h30m10:40PM
Surabaya, Tegalsari
Yogyakarta, Kotagede
$181One-way
2nd cheapest
Daytrans
04:25PM6h30m10:55PM
Surabaya, Tenggilis Mejoyo (Rungkut Surabaya)
Kota Yogyakarta
$181One-way
2nd cheapest
Daytrans
04:25PM6h15m10:40PM
Surabaya, Tenggilis Mejoyo (Rungkut Surabaya)
Yogyakarta, Kotagede
$181One-way

The cheapest and fastest busesfrom Surabaya to YogyakartaShowing times and prices for Jul 13

Cheapest price

$11

Average price

$18

Fastest journey

5h 30m

Average duration

6h 26m

Buses per day

46

Distance

265 km

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 Yogyakarta train with Kereta API

Travel Information

Compare train, bus, and flight 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 $88.

Distance: 167 miles (270 km)

Compare train with

Train
Most popular
Bus
Flight
Driving

$24

Average price

$15

Average price

Cheapest

$135

Average price

$60

Average price

(fuel + tolls)

4h 58m

Average total duration

4h 28m

Onboard

+

30m

Additional time*

7h 14m

Average total duration

6h 44m

Onboard

+

30m

Additional time*

5h 40m

Average total duration

Fastest

2h 40m

Onboard

+

3h 0m

Additional time*

4h 28m

Average total duration

(door-to-door)

Direct Options

Direct Options

Direct Options

Direct Options

The cheapest way to travel from Surabaya to Yogyakarta is a bus with an average price of $15 (€13).

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

A bus is $8 (€7) less than a train for this route with tickets for a train from Surabaya to Yogyakarta costing on average $24 (€20).

A bus is $120 (€99) less than a flight for this route with tickets for a flight from Surabaya to Yogyakarta costing on average $135 (€111).

The fastest way to travel from Surabaya to Yogyakarta is by flight with an average journey time of 2h 40m.

Other travel options to Yogyakarta take longer:

Train takes on average 4h 28m.

Bus takes on average 6h 44m.

It's helpful to compare your options as there are 3 ways to travel between Surabaya and Yogyakarta including taking a train, bus, and flight.
We recommend using the bus as it is the most popular way to get from Surabaya to Yogyakarta among Omio's users.
Take the train. It's the cheaper option, and the extra time on board is usually more relaxing than driving it.

Tickets start at around {cheapestPrice} compared to roughly {drivingPriceInCents} in fuel and tolls — a saving of about {savingsAmount}. The journey takes {durationInMinutes} versus {drivingDurationInMinutes} 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, Monday, July 13. You can also manually refresh the results below to see updated train journeys.

Last updated at
ProviderDepartsDurationArrivesTransfers
Tickets
Kereta API7:20 PM Surabaya Gubeng
3h47
11:07 PM Yogyakarta0 transfersDirect
Kereta API8:00 PM Surabaya Gubeng
3h49
11:49 PM Yogyakarta0 transfersDirect
Tuesday, July 14
Kereta API5:00 AM Surabaya Gubeng
5h35
10:35 AM Yogyakarta1 transfer
Kereta API7:00 AM Surabaya Gubeng
4h00
11:00 AM Yogyakarta0 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, 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.

Tue
Jul 14
Wed
Jul 15
Thu
Jul 16
Fri
Jul 17
Sat
Jul 18
Sun
Jul 19
Mon
Jul 20

Journey information

Overview: Train from Surabaya to Yogyakarta

IndonesiaIndonesia
IndonesiaIndonesia
Icon of train

Trains from Surabaya to Yogyakarta run on average 15 times per day, taking around 4h 28m. Cheap train tickets for this journey start at $19 (€16) but you can travel from only $9 (€7) 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.

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 $9 (€7)
Distance
167 miles (270 km)
Average train duration
4h 28m
Cheapest ticket price
$19 (€16)
Trains per day
15
Direct trains
15
Fastest train
3h 27m
First train
12:40 AM
Last train
11:47 PM
Cheapest Month
Jun
Cheapest Day
Tue
High Season
Oct - Dec
Low Season
Apr - Jun
Busiest Day
Sun
Least Busy Day
Sun
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 $9 (€7)

Train companies: Kereta API from Surabaya to Yogyakarta trainsKereta API trains will get you between Surabaya and Yogyakarta from $9 (€7). 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
3h 27m
Cheapest Price
$19 (€16)
Kereta API frequency
7 a day

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.

FAQs
Train ticket prices from Surabaya to Yogyakarta can vary. The cheapest ticket starts at $19 (€16), while the average price is around $24 (€20).
The train from Surabaya to Yogyakarta takes 3h 27m and runs 15 per day.
The distance by train from Surabaya to Yogyakarta is 167 miles (270 km).
The first train from Surabaya to Yogyakarta leaves at 12:40 AM.
The last train from Surabaya to Yogyakarta leaves at 11:47 PM.
There is no high speed train available from Surabaya to Yogyakarta.
Yes, there is a direct train from Surabaya to Yogyakarta. This service operates 15 times per day, provided by Kereta API.
Unfortunately, there is no night train available from Surabaya to Yogyakarta.
The train station in Surabaya that goes to Yogyakarta is Surabaya Gubeng, which connects to Train Station Yogyakarta.
The cheapest way to get from Surabaya to Yogyakarta is by bus, with a cost of around $9 (€7).
The train journey from Surabaya to Yogyakarta offers scenic views including lush rice paddies, rolling hills, and glimpses of traditional Javanese villages, providing passengers with an authentic and picturesque travel experience.
A day trip from Surabaya to Yogyakarta is not feasible as the journey takes 3h 27m. The distance is 167 miles (270 km) and there are 15 trains per day.
A stay of 3 to 4 days in Yogyakarta is ideal to explore its main attractions, such as Borobudur and Prambanan temples, the Sultan's Palace, and the cultural streets of Malioboro, while allowing some time for local cuisine and shopping.
Yes, you can take the train from Surabaya to Yogyakarta.
Since neither Surabaya nor Yogyakarta 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 Yogyakarta 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 Yogyakarta, travelers should be cautious of petty theft, particularly pickpocketing in crowded areas and markets. Scams involving overpriced transportation or unofficial taxi services are common, so it's advisable to use registered taxis or ride-hailing apps. Additionally, travelers should be wary of unlicensed tour guides and always agree on prices beforehand for rides and services. Staying alert in busy tourist spots and avoiding isolated areas at night enhances safety.
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 Yogyakarta

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

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