
Having been a Dutch colonial settlement in the past centuries left Indonesia with a highly developed railway system, compared to Southeast Asian standards. The railway in Indonesia runs within its major islands Java and Sumatra. Travelling through Java by train is a pleasant experience we tried during our trip from West to East Java, so here’s all the info you need to know to plan your train travel in Indonesia.
There are two routes leaving from Jakarta heading eastwards. One faster to Surabaya, Java’s second biggest city, running in the north; and the other connecting Yogyakarta. A visit to Java must include Yogyakarta, the cultural capital of the island, so the southern route is your best option. Five trains daily connect Jakarta and Yogyakarta, taking roughly 8 hours, see schedule below. There are no overnight trains.

Here’s our guide on how to book a train ticket in Indonesia.
THERE ARE 3 WAYS TO BOOK A SEAT ON A TRAIN IN INDONESIA:
1. Simply head to the train station and buy the ticket that suits you. Employees speak good English and will take care of your needs, remember to have your passport ready. Read the paragraph below about classes, and consider that the cheapest one (ekonomi) is always the first to sell out, you might want to book online in advance as explained in point 2.
2. Book online in advance on tiket.com, the most reliable ticketing agency countrywide. It allows you to use all the main global credit cards and works on mobile too. You will receive your printable e-tickets to your email, you’ll need to get boarding passes to get on your train, so be at the station in advance.
3. It’s also possible to get tickets at Indomaret convenience stores, when they have ticket terminals available. You can follow instructions on screen, get a receipt and pay cash at the counter. You’ll still need to get your boarding pass printed out at the station before getting on the train.

SEARCH FOR BUS TICKETS IN INDONESIA
Important: you won’t be able to board the train without your orange boarding pass! Get it printed at the station at automatic ticket terminals or by providing your ticket receipt at the counter.
The orange boarding pass…
…the white receipt
WHICH CLASS TO CHOOSE?
Trains in Indonesia have 3 classes, the main difference is leg room as they all are quite comfy, clean and serviced. Food on board is good and cheap. All carriages have AC, small drinks tables and power sockets, and seats can be either rotated or pulled to face travel direction. Depending on routes and times, trains have one or two classes available, hardly ever all three of them. You have these choices:
- Eksekutif class: reclinable individual seats, great leg room. A bit expensive but very comfortable, a Jakarta-Jogja ride costs 300,000 IDR (20 USD);
- Bisnis class: padded 2+2 seats, with decent leg room. A good alternative, not too expensive when Ekonomi class is not available, 170,000 rupiah from Jakarta to Yogyakarta (11 USD);

Although the journey is 8 hours long, you will be delighted by the green Java landscapes, with endless rice paddies seldom interrupted by forests or by the Java Sea.

Travelling in the morning is ideal in order to reach your destination in the afternoon.
YOGYAKARTA
Yogyakarta or Jogjakarta, also known as Jogja, is the cultural and geographic heart of Java and whole Indonesia. It’s definitely a can’t miss for a full understanding of the country. Once home to the Sultan during Java’s greatest kingdom in 17th century, the city is now a mix of tradition and modernity, with historic sites and huge shopping malls serving the 4 million people living within the Yogyakarta special administration region: don’t miss Borobudur and Prambanan temples, and the Sultan Palace in the old town centre. Jogja is also renowned for its traditional production of Batik, which can be found in all markets.
Other than cultural activities, natural excursions are also popular in Yogyakarta, above all to imposing Mt. Merapi, the local volcano visible from any point in town. The Southern Java Sea is not too far, although you may want to keep your beach time for when you reach Bali.

JAKARTA
Indonesia’s capital city didn’t really strike us positively. To be honest we only stayed for one night so our opinion might be limited, but the fact that your only option to travel between the city and the airport is to be stuck 2 to 4 hours in a taxi/bus in the continuously jammed traffic isn’t a good welcome to the country. The town centre itself is not tourist friendly either, we found it very hard to walk around among busy 6 lane roads and overpasses.
When travelling by train to/from Jakarta, there are two train stations, with different train classes and times (note that trains do not stop at both): Jakarta Gambir, for Eksekutif and Bisnis class trains; Jakarta Pasar Senen for Ekonomi class trains. Always consult the timetables in advance.
PROBOLINGGO (TO MT. BROMO)
Probolinggo is the gateway town to hike to Mt. Bromo in East Java. It is on the main railway route, about 3 hours away from Surabaya, and 8 from Yogyakarta (5 hours from Banyuwangi if you are coming from Bali). We took the 10 am Eksekutif/Bisnis train from Jogja to Probolinggo, arriving at destination at 6 pm, in time to catch a shuttle bus to the mountain village of Cemoro Lawang, base camp to Bromo. Don’t miss the chance to witness an epic sunrise over Mt. Bromo when in Java! Read our detailed article about Mt. Bromo here.
BANYUWANGI (TO BALI)
To complete your Java train trip from West to East (or to start it if travelling the other way round), Banyuwangi Baru is the terminal station at the eastern end of the island. The ferry terminal is just a 5-min-walk, from here you can catch ferries to Bali every 15 minutes for a cheap fare, less than 1$.
You are now more prepared to travel by train across Java, and hopefully one step closer to your trip to Indonesia!
HOTELS – WHERE TO STAY IN JAVA:
- Sheraton Mustika Yogyakarta Resort & Spa: a dream place to use as base to leave from for day trips around Jogja. During medium-low season it’s rather easy to find rooms at affordable prices. Check our full review here.
- With a lower budget it’s still possible to find great stays in Jogja, such as Nextdoor Homestay which offers room, breakfast and swimming pool for 20$ only!
- In Jakarta, Yello Hotel Harmoni is perfect and cheap to spend the night coming or going to the airport.
- For Bromo and Ijen volcanoes, it’s likely that agencies organizing your trip will suggest you a homestay as well, the choice is little and modest, see here.
- You can pre-book all your accommodation in Java and Indonesia with free cancellation here.
TRANSPORTATION – HOW TO GET AROUND:
- By train, as explained in this very article. Train tickets can be bought at stations on the same day of traveling. To plan in advance you can book tickets online through reliable agency EasyBook.
- Traveling by bus is less convenient compared to trains, above all it is slower and dangerous on busy Java roads. It might be your only solution, e.g. for shorter distances or steep sections as to climb on volcano sides. The best advice is to deal with local agencies. We spent 50,000 rupiah each, 3$, for a van ride from Probo to Cemoro Luwang, at Mt. Bromo feet.
- Ferry tickets to travel between Indonesian islands are sold at the pier for very cheap prices. Between Java and Bali you can get a joint ferry+bus ticket to Denpasar terminal in Bali, some 100 km away, for a 100k fee.
- You can book in advance your tickets to travel in Southeast Asia on amt.12go.asia.
TRAVEL INSURANCE:
- Never leave home without a reliable travel insurance. Even if you trust yourself, you can’t always trust others. Better safe than sorry! Get your quote here.
Hey, what a nice post about train in Indonesia as I’m a train fan. For your information, Jakarta Airport( Sukarno Hatta International Airport now has been connected with Airport Train Service. The Airport Train station in Jakarta is very close to the city centre which is called BNI city Station, and MRT station Dukuh Atas, so now it is more convenient to reach the city in and out without being trapped in notorious Jakarta traffic. Thank You for visiting Indonesia, i hope you repeat the visit after the corona pandemic.
Author
Hi Muhammad,
thank you for reading!
Thanks for this information, it sounds like a great improvement in order to ease the commute between Jakarta City and Sukarno Airport.
We will definitely go back to Indonesia sooner or later, we still have so much to see of your beautiful country.
Thanks again for your valuable feedback, we will include it and edit our present and future blogs.
Have a nice day!
Edoardo
Did you measure, or can you measure, the total time and money and transfers to go from West to East?
Author
Hello Ki,
It’s about 8 hours by train from Jakarta to Yogyakarta (1 full day of travelling), another 8 hours between Yogya to Probolinggo (1 day), and 5 hours by bus from Probolinggo to the ferry point to Bali in the east (half day). We did this in about a week stopping in Jakarta-Yogya-Mt.Bromo.
Money wise I’d say between 450.000-750.000 rupiah (30-50$) depending on bus and train ticket classes, that’s from city to city excluding all short transfers for tours and sightseeing.
Have a safe trip,
Edoardo
Is there enough room for a large suitcase?
Author
Hi Elliot,
Yes sure, the majority of locals travel on cheaper “Ekonomi” Class.
We were in “Bisnis” and it was really quiet with plenty of space for luggage.
Thanks for reading and safe travels in Indonesia!
Edoardo