Surabaya to Malang by Train

Two hours south into the highlands — frequent, cheap, and the easiest escape from Surabaya's heat.
Which class to book
Penataran in ekonomi. At these fares nothing else makes sense — just take the next departure.
Surabaya to Malang by Train

Malang sits about 95km south of Surabaya at around 450m elevation, which makes it several degrees cooler and a standing weekend destination for Surabaya residents. The train covers it in roughly two hours with good frequency.

The line climbs steadily through Lawang and Singosari with Mount Arjuno visible on the right heading south. It is a pleasant short run rather than a spectacular one, and at these fares there is no reason to take a car.

Which trains run this route: Penataran is the frequent local service and the one most people use. Tumapel covers the same corridor. Long-distance services from Jakarta including Gajayana terminate at Malang, so they also cover this leg.

Malang station is central and walkable to the colonial-era town centre. From Malang, onward connections run to Blitar and the Bromo access points.

Route details

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

Departures Per Day
12
Destination City
Malang
Destination Station
Malang
Distance
95
Journey Time
2h - 2h 30m
Ferry Connection
No
Named Trains
Penataran, Tumapel, plus Jakarta services terminating at Malang
Origin City
Surabaya
Origin Station
Surabaya Gubeng
Overnight Service
No
Scenery
Good - worth a window seat
Service Status
Operating
Highest Class Available
Ekonomi (new generation)

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 12-40k

Categories

East Java and the Bali Crossing

Last updated 8 Sep 2026

© Indonesia By Train 2026. All rights reserved