Jakarta is Indonesia's main transportation hub and the most accessible Indonesian city from abroad.
You'll find a major international airport here, and air travel is also the fastest way to reach domestic destinations. You can also get to cities on the island of Java by train and bus.
By air
Jakarta is often the cheapest destination if you're buying flights to Indonesia from abroad. If you're heading to other islands, such as Bali, Sumatra or Borneo, it may be worth buying a return ticket to Jakarta, followed by another domestic flight to your final destination.
Jakarta has very frequent connections to the whole of Southeast and East Asia, with direct flights also to the Middle East, Sri Lanka, the Maldives, India, Europe, Africa and Australia.
Jakarta has 2 airports.
- Jakarta Soekarno-Hatta CGK - Indonesia's largest airport with frequent international and domestic connections
- Jakarta Halim Perdanakusuma HLP - a small domestic airport with routes mainly to destinations in Java, Sumatra, Bali and Borneo
Where to buy tickets to Jakarta
Generally, the cheapest flights from Europe, America or Australia tend to be for the winter months when the rainy season prevails in Java.
If you're heading to Jakarta or Indonesia in the high season, look for flights ideally 5-7 months before departure.
You can purchase tickets on airline websites or through a flight search engine.
- airasia.com - Cheap flights to Kuala Lumpur, Penang and domestic Indonesian destinations
- Batik Air - Cheap flights to Southeast Asia and domestic Indonesian destinations
- Citilink - cheap flights to Southeast Asia and domestic Indonesian destinations
- Lion Air - cheap flights to Southeast Asia and domestic Indonesian destinations
- qatarairways.com - Doha and connecting flights to Europe, America and Africa
- emirates.com - Dubai and connecting flights to Europe, America and Africa
- klm.com - Frequent flyer tickets from Europe
- And more - compare all flights at skyscanner.com
By train
Java has a fairly dense rail network and you can take the train from Jakarta to most major cities on the island.
High-speed train
The only high-speed railway in Indonesia, operated by Whoosh, runs from Jakarta to the large inland city of Bandung.
The modern Chinese trains run at a top speed of 350 km/h and cover the route in about 30 minutes.
Tickets can be conveniently purchased online at ticket.kcic.co.id.
The high-speed trains stop at Halim station about 15 km southeast of the city centre, which can be reached in about 10 000 idr by LRT from Dukuh Atas station or in about 50 000 idr via Grab / Gojek.
In Bandung, the train stops at Padalarang station, from where a free connecting suburban train runs to the centre, or at Tegalluar station, where no public transport runs.
Conventional train
Conventional trains also run from Jakarta to Java.
The carriages and all railway stations in Java are modern, very clean and well equipped. The disadvantage is the relatively low speed and therefore long journey times.
The official Indonesian Railways website is kai.id, but when buying from abroad, no confirmation text message with a code is required.
However, tickets for all long-distance trains can be bought on the 12go.asia website at a small extra cost (approx. 20 000 idr).
Buy tickets for the lowest price up to 2 months before departure!
Where can I get to from Jakarta by train?
- Yogyakarta - from 590 000 idr, the journey takes about 6.5 hours
- Surabaya - from 600 000 idr, the journey takes about 10.5 hours
- Semarang - from 380 000 idr, the journey takes about 5 hours
- Malang - from 650 000 idr, journey time approx. 12.5 hours
The main long-distance train station is called Gambir and is located right in the city centre near the Monas Monument. Although there are also commuter trains that pass by Gambir station on the tracks, they do not stop directly at Gambir station, so the nearest commuter train station is Juanda.
Gambir station can therefore only be reached by bus lines 2, 2A, 1P and 6H.
For example, you can also use the luggage storage or shower facilities at Gambir Station, on the 1st floor in the "Shower & Locker" branch.
- Shower - 70 000 idr
- Luggage room - 50 000 idr to 140 000 idr for 24 hours depending on the size of the luggage
By bus
Java has a very extensive but also very confusing long-distance bus system.
Buses are busier, faster and cheaper than trains, but considerably less convenient.
While there is only one rail company in Java, departing from a single main station at Gambir, there are dozens of bus companies, each using different bus stations.
In addition, online ticket purchases directly from the individual companies' websites are often only possible by registering with an Indonesian phone number.
Therefore, we highly recommend using the services of some reputable websites and ticket resellers.
We use the 12go.asia website when travelling in Asia, where you can find most of the large and modern bus companies in Java.
Examples of routes and prices
Taking a bus from Jakarta will take you to literally every major city throughout Java. Below are examples of the most touristy destinations from Jakarta.
The routes below have an average of 1-5 connections per hour.
- Yogyakarta - from 270 000 idr, journey time from 11am
- Surabaya - from 220 000 idr, journey time from 9.5 hours
- Semarang - from 140 000 idr, journey time from 8 hours
- Malang - from 430 000 idr, journey time from 13 hours
- Bandung - from 50 000 idr, journey time from 3 hours
You can usually find out the specific bus station after purchase in the ticket details.
Avoid connections that have "Bekasi" or "Kota Bekasi" as the starting station, which start very far from the city centre (about 40 km).