Yogyakarta to Surabaya by Train

The eastern half of the southern line — four to five hours through Madiun and the Brantas valley, and the most comfortable way to link Java's cultural centre with its second city.
Which class to book
Sancaka in ekonomi. It is a short daytime run and the eksekutif premium buys very little on this leg.
Yogyakarta to Surabaya by Train

Roughly 310km separates Yogyakarta Tugu from Surabaya Gubeng, and the trains cover it in four to five and a half hours depending on service. This is a comfortable daytime leg rather than an endurance test, and it fills the awkward gap in most Java itineraries.

The line runs east through Klaten, Madiun and Jombang. Scenery is gentler than the Jakarta–Yogyakarta stretch but still pleasant — sugar cane, rice, and the occasional volcano on the horizon.

Which trains run this route: Sancaka is the workhorse, running twice daily in each direction with both eksekutif and ekonomi carriages. Ranggajati and Wijayakusuma are longer-distance services passing through. Bima and Turangga call here on their way east.

Note the Surabaya stations. Gubeng is the southern-line station and the more central of the two. Pasarturi handles the northern coastal line. Trains from Yogyakarta arrive at Gubeng — do not book onward travel from Pasarturi without allowing transfer time across the city.

Route details

Journey times vary by service and season. Confirm against current schedules before booking.

Departures Per Day
8
Destination City
Surabaya
Destination Station
Surabaya Gubeng
Distance
310
Journey Time
4h - 5h 30m
Ferry Connection
No
Named Trains
Sancaka, Ranggajati, Wijayakusuma, Bima, Turangga
Origin City
Yogyakarta
Origin Station
Yogyakarta Tugu
Overnight Service
No
Scenery
Good - worth a window seat
Service Status
Operating
Highest Class Available
Eksekutif

Fares

Indicative bands only. KAI adjusts fares by season and subclass, so treat these as a guide to the order of magnitude rather than a quote.

Fare Range (Ekonomi)
Rp 150-260k
Fare Range (Eksekutif)
Rp 300-520k

Categories

From Yogyakarta

Last updated 8 Sep 2026

© Indonesia By Train 2026. All rights reserved