Java

Six days across Java by train

Jakarta to Surabaya is roughly 800 kilometres. By rail it becomes rice fields, volcano silhouettes and station coffee — with two stops worth planning the week around.

A white and orange Indonesian passenger train running through green countryside
A Maharani service on the north Java line. The southern route, through Yogyakarta, is the one this itinerary follows. Adhi Kurniawan · CC BY-SA 4.0

Gambir is the station you want. Jakarta has several, and the long-distance executive trains to Yogyakarta and Surabaya leave from Gambir, not Pasar Senen, which handles the economy services. The concourse is calm by Indonesian station standards, the coffee is overpriced, and the queue for the escalator is the closest the city gets to a formal procession.

Buy on the Access by KAI app or at a station counter. Sales open roughly a month ahead and the good seats go early, particularly on Friday nights. Foreign travellers need a passport number at booking and the passport itself at the gate. Print nothing; the QR code on your phone is enough.

The first thing to know about Javanese railways is that the seats swivel. On services that reverse at a terminus, the crew walks through and turns every seat to face the new direction. The second thing is that the dining car is genuinely good: nasi goreng, fried tempeh, sweet tea, and a window that shows the whole island going past at 100 kilometres an hour.

Day 1 — Jakarta to Yogyakarta

The morning trains take about seven hours. Leave before nine and you get the best of the light: suburbs, then rice fields, then the long climb into the Preanger highlands, where the line follows the Serayu valley and the windows earn their keep. The Taksaka runs the route in about seven hours; the Argo Semeru continues east afterwards.

Arrive in Yogyakarta in the afternoon, check in around Prawirotaman or Jalan Malioboro, and eat early. The city is best on foot and by becak, and the becak drivers near the kraton know the back lanes better than any map app.

Day 2 — Borobudur before the heat

Borobudur is about 40 kilometres northwest of the city. Public buses leave from Jombor terminal and take around an hour and a half; a car is faster and lets you arrive at opening. The monument is a mandala, and the correct way around it is a slow clockwise spiral through ten terraces to the summit. More than 500 Buddha statues sit in perforated stupas, and almost 1,500 narrative panels line the galleries.

It was built in the 8th and 9th centuries under the Sailendra dynasty, abandoned, and brought back into the world in 1814. UNESCO listed it in 1991 after a decade-long restoration. Sunrise access runs through the Manohara hotel inside the park; regular gates open at 6.30. Either way, be there early. By ten the stone is radiating heat and the tour buses have arrived.

Borobudur temple with its terraces and bell-shaped stupas, Central Java
Borobudur's upper terraces. The walk is clockwise; the panels are the reason to slow down. Photo: Jakub Hałun, CC BY-SA 4.0.

Day 3 — Prambanan, then Kotagede

Prambanan is 17 kilometres east and has its own station on the Yogyakarta–Solo line. The 9th-century Hindu complex is a different register from Borobudur: taller, sharper, built around three temples to Shiva, Vishnu and Brahma. Go in the late afternoon when the stone turns gold and the day-trippers thin out.

Back in the city, Kotagede is the old capital of Mataram and still a silver quarter. The lanes are narrow, the walls are crumbling in the good way, and the workshops are open to anyone who asks politely. Go in the morning when the hammering starts.

The train does not take you to Borobudur or Bromo. It takes you close enough that the last hour is a bus, a bemo and a walk — which is the point.

The Travelsaya editors

Day 4 — Yogyakarta to Malang

The Malioboro Ekspres leaves in the morning and reaches Malang in the afternoon, roughly seven hours east. Malang sits about 500 metres up, so the air is cooler and the evenings need a sleeve. It is also the most comfortable base for Bromo that is not a 3am bus from Surabaya.

Spend the evening around Jalan Soekarno-Hatta, where the bakso stalls do a brisk trade and the colonial-era streets are still walkable. Book a Bromo transfer for the next morning before you go to bed; the good drivers leave at three.

Day 5 — Bromo, before dawn

Buses from Malang's Arjosari terminal reach Probolinggo in about two and a half hours. From there, a green angkot climbs to Cemoro Lawang in another ninety minutes, or a pre-booked 4WD does it faster. Sleep in Cemoro Lawang, not Probolinggo. The whole point is to wake up already on the rim.

Jeeps leave at three for the Penanjakan viewpoint. The walk takes about forty-five minutes and avoids the queue at the gate, and the walkers get the better sunrise because they are not behind a windscreen. Below you is the sea of sand; to the left, the cone of Bromo is already smoking.

Then the crater itself: about 250 steps up the ash, a rim path, and a smell of sulphur that a mask mostly fixes. It is cold at 2,300 metres before dawn — single digits, with wind. Bring a shell, a hat and a headtorch.

Day 6 — Surabaya, and out

Down to Probolinggo by nine, then the train east to Surabaya Gubeng. Surabaya has a better food scene than its reputation suggests: the Arab quarter around Ampel, the spice stalls of Pasar Pabean at dawn, and a bowl of rawon that justifies the detour on its own.

From Juanda airport you can be in Jakarta, Bali or Singapore by evening. If you have a spare day, cross the Suramadu bridge to Madura for the salt pans and the bull races, which run in the dry season.

The practicalities

Rail in Java is comfortable and cheap by European standards. The friction is in the last mile, not the train.

Tickets
Access by KAI app or station counter; sales open about 30 days ahead
Classes
Eksekutif (2–1 seating) or Ekonomi Premium; the old Bisnis class is gone
Stations
Gambir (Jakarta), Tugu (Yogyakarta), Malang, Gubeng (Surabaya)
Bromo
Sleep at Cemoro Lawang; 4WD or a 45-minute walk to Penanjakan
Pack
Passport, layer for 2,300 m, mask for the ash, cash for angkots

Six days is the minimum that does not feel rushed. Add a day in Yogyakarta for the kraton and a day in Malang for the temples at Singosari, and you have a week that moves at the speed of the island rather than the speed of a checklist.