
1 hr(s), 45 mins
Airline | Departure Time | Arrival Time | Origin airport | Destination airport | |
|---|---|---|---|---|---|
Garuda Indonesia | 12:05 | 13:55 | Batam (BTH) | Jakarta (CGK) | Book flight |
Citilink | 13:20 | 15:05 | Batam (BTH) | Jakarta (CGK) | Book flight |
Garuda Indonesia | 15:30 | 17:20 | Batam (BTH) | Jakarta (CGK) | Book flight |
Citilink | 16:25 | 18:10 | Batam (BTH) | Jakarta (CGK) | Book flight |
Garuda Indonesia | 17:40 | 19:30 | Batam (BTH) | Jakarta (CGK) | Book flight |
Citilink | 19:35 | 21:20 | Batam (BTH) | Jakarta (CGK) | Book flight |
Citilink | 21:15 | 23:00 | Batam (BTH) | Jakarta (CGK) | Book flight |
Compare Batam to Jakarta flights using the airport pair BTH–CGK: Hang Nadim to Soekarno-Hatta. This is an Indonesian domestic journey. If you are starting in Singapore and travelling to Batam by ferry first, treat the border crossing, road transfer and flight as separate parts of the trip. A low airfare alone does not show the cost or time of that complete journey.
For the Batam to Jakarta flight time, read the departure and arrival times for your chosen date in the search results. Check whether the option is nonstop or includes a connection; a duration shown for one itinerary is not a promise for every departure. Compare the arrival time against your meeting or hotel plans, including baggage collection and travel from CGK. Choose a departure with room for delays before any fixed appointment.
Indonesia’s civil aviation authority identifies BTH as Hang Nadim in Batu Besar, Nongsa, Batam. CGK is Jakarta Soekarno-Hatta, also known as Cengkareng, in Tangerang. It is different from Halim Perdanakusuma, coded HLP. A result or nearby-airport card labelled Jakarta may therefore lead to a different airport. Keep CGK selected when comparing this route, and check both airport codes again before payment.
For a Batam to Jakarta flight price comparison, search the same date, passenger count and baggage needs across the available departures. Then compare the complete payable fare, rather than the first displayed amount alone. A fare with checked baggage can be better value than a lower headline fare after extras. Check seat selection, change conditions and any fare difference payable if your plans change. No weekday or advance-booking window guarantees the lowest price.
Flying from Batam is a separate option from departing Changi. Ferry operators serve different Singapore and Batam terminals: BatamFast, for example, lists HarbourFront and Tanah Merah counters, as well as Batam-side locations. Read the terminals on your actual ferry booking. Allow for ferry check-in, the crossing, Indonesian arrival formalities, baggage collection and the road journey to Hang Nadim. An onward flight on a separate booking is not automatically protected if the ferry runs late.
Add ferry tickets, transport to the Singapore terminal, the Batam airport transfer and any extra luggage charges to the flight fare. Include a possible Batam overnight stay if a same-day plan leaves too little margin. Compare that total and the effort involved with a flight departing Singapore. The Batam option may suit someone already on the island; it is not automatically cheaper or faster for a traveller starting in Singapore.
BTH–CGK stays within Indonesia, but domestic does not mean that every traveller can use the same identification. Use your booked airline’s current accepted-document guidance for your nationality and circumstances. Foreign visitors should keep their passport and relevant Indonesian entry documents accessible. Anyone arriving from Singapore must also meet Indonesia’s entry requirements for the ferry crossing. The domestic flight does not replace that border check or establish permission to enter Indonesia.
Jakarta’s government lists airport rail, buses and taxis among the ways to travel between Soekarno-Hatta and Jakarta. Compare the service available at your arrival hour with your exact hotel or office address. Rail can require another transfer after the city station; a road journey depends on traffic. Check current fares, stops and operating hours with the operator. Read the arrival terminal on your ticket instead of relying on an old airline-terminal list.
For the return, confirm that the departure airport is CGK and check its terminal. Leave time for the journey out of Jakarta, your airline’s check-in deadline and security. If you are continuing from Batam to Singapore, book the ferry only after allowing for flight delays, baggage reclaim and the airport-to-terminal transfer. Check the last sailing for the correct port, and consider an overnight stay when a missed sailing would disrupt the trip.
Flight Duration | 1 hr(s) 45 mins |
Airport in Batam | |
Airport in Jakarta |

