Java By Train: How To Travel Between Jakarta, Yogyakarta & Malang

8 hours ago 1

Indonesia’s largest island, Java, has an excellent train network and beautiful scenery throughout the island, which makes trains easily the best way to travel around it (if you ask me).

I’ve now done so twice and have gone in both directions (west vs. east), so I can give you some first-hand tips on how it all works. 

While Java’s trains are modern and most things work as you’d expect, some aspects can be a bit confusing at first. This is especially the case with the ticketing system: the paper or PDF you get is not your ticket but only a voucher. 

But don’t worry, I’ll explain Java’s train system here — from the different classes, to ticket purchasing, and everything you should expect onboard.

travelers waiting in Tugu Station at nightRolling out from Tugu Station — Java by rail begins

12Go is the simplest way to book trains in Java. I booked all my routes through 12Go on my last Java trip and everything was perfectly smooth. It’s in English, accepts foreign cards, and gives you a clear PDF that explains the voucher-to-ticket process.

book your java train tickets

Is taking the train worth it?

Yes, absolutely! The trains in Java are comfortable, take you directly from city center to city center, are usually a little faster than coach buses, and — best of all — they reward you with some fantastic views along the way. 

Oh, and it’s also significantly cheaper than flying. Ticket prices can be as low as IDR 260,000 (~ €14) for economy class for a 6-hour trip.

Several sections between Bandung and Yogyakarta I found especially memorable as you cross a mountain range and are rewarded with so many vistas of green paddy fields backed by dramatic volcanic peaks. Travelling between Yogyakarta and Malang is almost equally scenic.

All along the way, you’ll see farmers working the fields, flocks of scooters waiting at the railway crossings, and little villages with colorful minarets poking up above the rooftops. 

At times I was taking so many pictures (and walking back and forth to the vestibule for a clearer view) that some locals were clearly amused by this bule (foreigner) being so excited about what I assume was just their routine commute.

In short, you get a real sense of the life and landscapes of Java that you will completely miss by just flying over it! 

View from a moving train window in Java, showing a blur of railway tracks and an expansion of greeneryJava flashing by in soft focus
a view of agricultural fileds seen from a train window with a man in red walking by A window scene somewhere between Yogya and Bandung

It’s for this reason that I highly recommend travelling by day if your travel schedule at all allows. This might eat a little into your daylight hours for sightseeing, so perhaps you’ll still want to travel at night if you’re in a rush, but otherwise, I think it’s highly worth taking a train during the day just to watch the landscapes glide by.  

Java by train – key stops

I’ll focus here specifically on two journeys:

  • Jakarta ​​↔ Yogyakarta (± 6 to 7 hours)
  • Yogyakarta ​​↔ Malang (± 6 hours)

You can take many other routes in Java, but these two trips are most relevant to any tourists on a Java highlights trip. 

  • Jakarta is the key entry point, being the capital and having the largest airport. Just know that it’s an enormous bustling city that can be overwhelming at first. For more tips, check out my post: is Jakarta worth visiting?
  • Yogyakarta is the hub for culture and ancient religious monuments, including Borobudur and Prambanan. It’s a traveller-favorite and many people make Yogyakarta the focal point of their Java trip.
  • Malang is the hub for adventure and nature, being the city nearest to the epic Mt. Bromo volcano and the stunning waterfall of Tumpak Sewu, among other great sights. Malang is also a relatively calm and interesting city.
View from a passing train showing a railway station between Yogyakarta and MalangScenes captured between Yogyakarta and Malang

I also offer a much more in-depth Java travel guide where I go into all of the sights, cities, and what to expect. This also has more info on potential additional stops, such as the (in my opinion) underrated Bandung. 

If you’re still in the planning stages, then I recommend giving my main guide a read, as it’s truly my complete take on Java. But if you’re ready to jump onto a train, then scroll forth as we get into the logistical details. 

How to buy tickets

The easiest way to book your train tickets is online through 12Go.com.

I used 12Go to book all my trains in my most recent Java trip and it was a completely smooth process. I think it’s best for several reasons:

  • Everything is in English
  • International payment methods accepted
  • Pictures of the actual carriage class you’re booking
  • PDF with excellent instructions for getting to the train station and boarding 

I’ve also seen Traveloka mentioned, but I found this platform pretty awkward to use. First, you have to set your currency to IDR (Indonesian Rupiah) to see any search results. And for some reason, Yogjakarta’s Tugu station is not available, only Brambanan station, which is far outside the city. Asian travelers may be more familiar with the Traveloka platform, but personally, I recommend 12Go.

You can also purchase tickets at Indonesian convenience stores like Alphamart or Indomaret, or directly at the train station, though online booking is quickest and most convenient. In some cases, it can also help you avoid inflated tourist prices.

As for prices, they range from IDR 260,000 (~13) for economy class to IDR 520,000 (~27) for Executive AA. There are even some luxury services (Gajayana Luxury class) costing ± €71, so you travel in whatever style you’d like. More on that later.

Tip: The official Indonesian Railways website can only be accessed through an Indonesian IP address and doesn’t take most international payment methods, so it’s not the best option for foreigners. 

When to buy tickets

Train tickets are typically available six weeks in advance and sell out quickly during weekends and public holidays. Book as early as possible, though last-minute deals sometimes appear for spontaneous travelers.

My tip: If tickets are sold out online, head to the train station and ask about last-minute availability in a lower class. You may not get a designated seat, but it’s an option if you’re flexible. However, I think most tourists will want to reserve their seats in advance to avoid any disruptions to their travel plans.

Which train station to search for

All three cities have multiple stations. Choose based on your accommodation location — some stations are far from city centers.

  • Jakarta: Pasar Senen Station is centrally located and easy to reach (but there are many other options). If you’re taking the high-speed rail to Bandung, note it goes from a separate and dedicated station (Halim) in the east of the city. 
  • Yogyakarta: Tugu Station is most convenient, located at the top of Malioboro Street where most travelers stay.
  • Malang: Malang Central station is where you’ll want to go

My tip: On 12Go.com, search “all stations” to see all options, then pick the most convenient one.

 the left one showing arrivals under the yellow “Kedatangan” sign, and travelers moving past overhead direction boards. the right one showing travelers passing by in the central stationSenen Station, Central Jakarta
train departure board at Tugu StationTrain departure board at Tugu Station

Which seats should you get?

The scenery is nice on both sides of the tracks, so you don’t have to worry much about getting seats on one particular side of the aisle. However, you may wish to select seats facing the direction of travel as it’s slightly nicer viewing. 

Check-in process explained

I recommend arriving at the station at least 30 minutes in advance so you can buy some snacks and, most importantly, get your final boarding pass.

Regardless of whether you buy online or offline, the document you get is not your boarding pass. It’s just a booking confirmation with a QR code, which you’ll need to use to get your actual ticket at the station.

Below is an one of my booking confirmations from 12Go. Use the QR code at the top to get your final tickets. Instructions for reaching the correct station are included.

12GO e-ticket screenshot

You must go to one of the check-in counters where you can scan your e-ticket document. You’ll find them in any of the station halls. If you booked online via 12Go, use the QR code on the PDF file that was sent to you. There’s no need to print it; you can just scan the code from your phone. 

train station Check-in Counter in Tugu Station
Check-in machine at Tugu StationCheck-in machine at Tugu Station

The instructions are in English, but it’s easy to figure out anyway. Just use the QR scanning device and the machine will give you a white-and-orange slip with your boarding pass. Now you’re all set!

All three train stations I’ve mentioned in this guide are easy to navigate. There are screens showing departure times and you just need to find your way to the right platform. There are various convenience stores and small eateries letting you stock up on any last-minute snacks.

What to expect on board

If you have visions of train travel in Indonesia being in some way challenging because it’s a ‘developing country’, fret not. (Actually, Indonesia is classified as middle-income.)

I’ve been on trains in other countries where the carriages will sway wildly from side to side or where there are no toilets on board, but that’s not the case here at all. The train system in Java is modern and reliable. However, there are expectedly some distinct differences between the classes.

The different train classes: Economy, Business or Executive?

Broadly speaking, Indonesian trains have three classes: Eksekutif (Executive), Bisnis (Business), and Ekonomi (Economy). Not all trains offer all classes—Executive trains are usually exclusively Executive, while Business and Economy are sometimes combined. Business class seats are surprisingly scarce on these routes, so you’ll typically choose between Executive and Economy.

A man walking through the central aisle of a train in YogyakartaExecutive class seat configuration

I should mention the class system can seem more complex than it really is. You’ll often see letter codes (like AA, AB, CA, CB, H, I, J, etc.) but these are just subclass codes that indicate pricing tiers, not different levels of comfort or different seat locations. You can just ignore these codes and focus on the main three classes.

Executive Luxury Class

Since 2018, select trains offer Executive Luxury class, which resembles airplane business class with individual pods and personal TVs. Seats recline but don’t lie flat, and this class is only available on certain days with limited availability.

You can find a lot of vlogs on YouTube showing off the experience, such as this one, which for some tourists can offer some nice luxury at still a good value price, at least by Western standards.

Which class should you choose?

The main difference is the seat type. Executive seats are spacious, recline for sleeping, and include fold-out tables. Business seats are benches for two people that don’t recline. Economy is similar to Business but with less legroom and narrower seats. All classes are air-conditioned with power sockets. 

As a bit of a ‘flashpacker’ (a backpacker but willing to pay a bit extra for comfort), the Eksekutif (Executive) hits the sweet spot for me. The price difference with Economy is minimal but you’ll arrive a little more rested thanks to the nicer seats.

Other aspects on board

Luggage

There’s no luggage car — you’re responsible for your bags throughout the journey. Don’t give luggage to anyone offering to carry it.

Overhead bins work for most bags (Executive and Business have more space), with additional storage at the back of each car. If you’re not traveling light, I’ve heard the 20kg weight limit is rarely enforced.

shot of a train carriage with seats rows occupied by travelers and with  luggage stored on overhead racks

Food on the train

You could buy some snacks at the station — but don’t worry, you won’t get hungry! Food carts pass regularly, and there’s a catering car serving nasi goreng, fried chicken, and meatballs for €2-5. Train food is expensive by Indonesian standards but most foreign tourists would probably consider it affordable.

Train attendants in the aisle serving food and beverages from a metal service trolley.

Toilets

Each car has at least one toilet (usually western-style, occasionally squat). They’re surprisingly clean with toilet paper and soap usually available.

Safety

Indonesian trains are very safe. The trains move slowly, making accidents uncommon. You can leave luggage at your seat when visiting the bathroom or dining car, though take valuables with you in crowded Economy class. Petty theft is rare but possible.

Are night trains worth it?

I considered travelling part of my trip at night, but after researching the options, I decided against it. 

Firstly, know there are no true sleeping trains on these routes. There are only normal trains that just run at night, so they don’t have any sleeping compartments with beds.

I watched some videos of travellers doing these night trips and saw seats that only barely recline, fully lit carriages, and loud station announcements that will wake you constantly. It seemed like a nightmare I wanted to avoid. 

Besides this, you also lose out on seeing those wonderful landscapes I mentioned earlier.

If you do want to travel overnight to save time, I suggest getting an executive-class ticket on a coach bus, as this will give you a better chance of catching some Z’s. 

Getting to your final destination

The locker station & mobile credit/SIM card services in Tugu Train Station, Yogyakarta

After arriving, the easiest way to your hotel is likely to hail a ride using the Grab or Gojek apps. If you decide to take a local taxi, be sure the driver uses a meter.

In some cases, the distance to your accommodation may be walkable.

In both Yogjakarta and Malang, I could walk with my backpack for 15-20 minutes to the station from the hostels I was staying at. 

If you’re making a quick stopover or won’t be checking in to your place until later, most stations have lockers where you can leave your luggage. I can’t vouch for Malang, but I saw these at Tugu Station in Yogyakarta and Pasar Senen Station in Jakarta.

Read Entire Article