The journey from Yogyakarta to Surabaya covers approximately 330 kilometers across East Java. The most comfortable way to travel is by train, specifically the Argo Wilis or Sancaka lines, which take about 4 to 5 hours. Alternatively, you can drive via the Trans-Java Toll Road, which is faster but requires toll fees. The route passes through Solo, Madiun, and Mojokerto. This is a major transit corridor connecting two of the most important cities in Java.
Total Distance: 330 km by road, 280 km by air.
|
Direct
|
Direct
|
|
|---|---|---|
| Duration | 4 hours 30 mins | 5 hours |
| Avg Price | IDR 200,000 - 400,000 | IDR 300,000 - 500,000 |
| Operator | PT Kereta Api Indonesia (Sancaka) | Rental Car / Private |
| Route | Yogyakarta Station (YK) to Surabaya Gubeng Station (SGU). | Trans-Java Toll Road via Solo and Madiun. |
| Tip | The Sancaka train offers multiple daily departures. | Ensure you have an e-toll card with sufficient balance for the highway. |
Dry season from May to September for comfortable travel.