Contents
Batam to Jakarta is one of Indonesia's most practical island to capital journeys. Batam sits in the Riau Islands close to Singapore and Malaysia, while Jakarta is the country's political, business, and transport center on Java. The trip crosses water, so the useful long distance option for most travelers is the flight.
Soekarno-Hatta International Airport (CGK), the main airport for Jakarta, is located in Tangerang, which is why booking platforms list this route as Batam to Tangerang. Flights depart from Hang Nadim International Airport (BTH) in Batam. After landing at CGK you continue by rail, bus, taxi, or ride-hailing to the part of Jakarta you need. You can compare flights on GoAsia.cc, then confirm airline, terminal, and baggage details on your ticket.
Batam to Tangerang by Flight
Direct flights from Batam to Jakarta take about 1 hour 35 minutes to 1 hour 38 minutes, with departures from about 07:00 to 21:00 (October 2026).[1] Fares depend on the airline, the date, and baggage, so check the airline's own site before you book.
Departure: Hang Nadim Airport
Hang Nadim International Airport is on Jl. Hang Nadim in Batam, and it is open 24 hours with a domestic terminal.[2] Leave enough time to reach the airport from Batam Center, Nagoya, Sekupang, Nongsa, or your resort area. Low fare Economy tickets may be fine if you travel light, but check the cabin bag weight and any checked baggage allowance before you leave for the airport.
Arrival: Soekarno-Hatta Airport
Terminal assignments at CGK depend on the airline. Citilink, for example, has moved all its domestic flights at CGK to Terminal 1B since 15 March 2025,[3] so check the terminal on your ticket.
If you are going into the city, the airport rail link is an option. KAI Commuter's Basoeta Commuter Line runs from the airport station via Duri and Sudirman Baru to Manggarai, with 62 daily trips; the fare to Duri, BNI City and Manggarai was Rp 70,000 in November 2024.[4] Trains run between about 05:00 and 23:37.[5] Taxis or ride-hailing can be easier with luggage or a group. Jakarta traffic is the biggest variable after arrival, so a late afternoon landing can feel very different from a midday arrival. If you have a meeting, appointment, or onward connection, choose an earlier departure from Batam.
For international travelers coming from Singapore via Batam, make sure your documents and timing line up. A ferry to Batam plus a flight to Jakarta adds port formalities, local transfer time, airport check-in, and Jakarta arrival transport. Keep your passport and boarding pass easy to reach until you are fully checked in.
Comparing Your Options
| Mode | Price (USD) | Duration | Comfort |
|---|---|---|---|
| Flight | Varies by airline and date | 1 hour 35 minutes to 1 hour 38 minutes[1] | Economy |
Tips for Traveling from Batam to Jakarta
- Remember the airport is in Tangerang. The flight gets you to Soekarno-Hatta, then you still need to continue to your Jakarta neighborhood.
- Check your terminal. CGK terminal assignments vary by airline, and pickups, buses, trains, and transfers depend on the terminal.
- Watch baggage rules. Economy fares can differ, especially on low fare tickets.
- Allow time after landing. Baggage reclaim, terminal movement, and city traffic are not included in the flight time.
Timetable
| Flight Batam - Tangerang $ 42.97–163.26 1h 35m – 1days 1h 38m | |
|
Frequently Asked Questions
Use the booking tool on this page to compare the transport options currently available from Batam to Jakarta, including current prices and schedules.
Fly from Hang Nadim International Airport (BTH) in Batam to Soekarno-Hatta International Airport (CGK), which serves Jakarta from Tangerang. Direct flights take about 1 hour 35 minutes.
Fares depend on the airline, date and baggage. Compare them on the airline's own site or on GoAsia.cc before you book.
Direct flights take about 1 hour 35 minutes to 1 hour 38 minutes.
Soekarno-Hatta International Airport serves Jakarta but is located in Tangerang, so booking platforms list the flight as ending there.
Flights use Hang Nadim International Airport (BTH) in Batam.
No. The flight time covers the flight only. Add time for baggage, terminal movement, and onward transport from Soekarno-Hatta.
Sources and background
Numbers in the text such as [1] refer to these sources.
- [1] 12Go: Batam - Jakarta (Tangerang) timetable. Retrieved October 17, 2026.
- [2] Citilink Indonesia: Batam (BTH) Airport Information. Retrieved October 17, 2026.
- [3] Citilink Indonesia: Terminal Information. Retrieved October 17, 2026.
- [4] KAI Commuter: Mudah dan Praktis, Begini Cara Naik Commuter Line Basoetta. Retrieved October 15, 2026.
- [5] KAI Commuter: Jadwal Commuter Line Basoeta, rute Bandara Soekarno-Hatta - Duri - Manggarai. Retrieved October 15, 2026.
Guide prices and journey times are indicative, not live quotes. A booked package may include transfers and waiting time as well as the main journey. Check the selected offer, pickup point and current conditions before booking.