Indonesia is over 17,000 islands, and "getting around" means something different depending on which one you're on. Jakarta has a genuinely modern transit system buried under legendary traffic. Java has some of the best trains in Southeast Asia. Bali has almost no public transport at all. And the boats that connect it all together come with real, current safety considerations worth understanding before you book. Here's the honest version.
Jakarta has a reputation for some of the worst traffic on the planet — and that reputation is earned. What surprises a lot of visitors is that underneath the gridlock, Jakarta has built a genuinely modern, expanding transit network: a busway system covering most of the city, a clean new MRT line, a growing LRT, and an extensive commuter rail network reaching the entire greater Jakarta region. The trick is knowing it exists and using it — most visitors never get past the traffic and assume the whole city is just like that.
Transjakarta is Southeast Asia's largest bus rapid transit system — dedicated busway lanes physically separated from regular traffic, covering most of central and greater Jakarta with dozens of corridors. Flat fare of Rp3,500 regardless of distance, paid by tapping a card (TransJakarta card, or any major Indonesian e-money card like Flazz or e-Money) at enclosed stations. Because the busways are physically separated, Transjakarta buses bypass much of the gridlock that swallows ordinary cars and taxis — a Transjakarta corridor can be dramatically faster than a Grab car covering the same route at peak hours.
The Jakarta MRT runs north-south through the city centre — Lebak Bulus to Bundaran HI, with extensions under construction — clean, modern, and a genuine relief from street-level Jakarta. The Jakarta LRT covers a smaller network in the eastern part of the city. Both are paid via tap card, same e-money cards as Transjakarta. Neither covers as much ground as Transjakarta yet, but where they go, they're the fastest and most comfortable option in the city by a wide margin.
Jakarta's traffic isn't an exaggeration — peak-hour journeys that should take 20 minutes can take well over an hour, and the city's notorious "macet" (gridlock) is a fact of daily life for residents, not a tourist-season anomaly. The practical takeaway: check whether your route is served by Transjakarta or the MRT before defaulting to a car — even if it means a short walk or an extra transfer, it's often dramatically faster. If you do need a car (Grab/GoJek), build serious buffer time into any schedule involving an airport transfer or appointment, especially during weekday rush hours (roughly 6:30–9:30am and 4–8pm).
Beyond the city centre, the KRL Commuterline rail network covers the entire Jabodetabek region (Jakarta, Bogor, Depok, Tangerang, Bekasi) — useful if you're staying in or visiting the outer suburbs, including some popular day-trip destinations like Bogor's botanical gardens. Fares are very cheap (typically under Rp10,000 for most journeys), paid with the same e-money cards. Trains can get extremely crowded at peak times — if you have a choice, travel outside rush hour.
Indonesia is the one country in the region where the home-grown super-app, GoJek, genuinely rivals Grab rather than playing a distant second fiddle — GoJek was born in Jakarta and the local loyalty shows. Beyond the app war, the bigger thing to understand is the role of the motorbike taxi (ojek) — in Indonesia's traffic, two wheels beating four is often not a preference, it's the only realistic way to make a meeting on time.
Services: GoRide (motorbike), GoCar, GoFood, GoSend, payments
Payment: GoPay e-wallet, cash, cards
Reality: Often the more popular choice with locals over Grab
Services: GrabBike, GrabCar, GrabFood
Payment: OVO/DANA-linked wallets, cash, cards
Reality: Worth having both apps installed and comparing
Unlike some neighbouring countries where one app has near-total dominance, in Indonesia GoJek and Grab compete closely enough that prices and driver availability for the same trip can differ meaningfully between the two — sometimes by a significant margin, sometimes one app simply has a driver nearby and the other doesn't. The habit worth building from day one: open both apps, check the price and ETA for your route, and book whichever is better. It takes thirty extra seconds and can save real money over a trip, especially if you're relying on rides daily as an expat.
Presidential Regulation No. 27/2026, effective July 1, 2026, caps the platform commission that GoJek and Grab can charge motorcycle ride-hailing drivers at 8% — down from the previous ~20%. Both platforms confirmed implementation. In practice this means drivers retain 92% of fares, which should improve driver availability and satisfaction. Fare prices to passengers are not mandated to change, though the competitive dynamic between platforms continues. Note: the commission cap applies to two-wheel (GoRide/GrabBike) services only — car services (GoCar/GrabCar) are not included in the initial regulation.
GoRide and GrabBike (app-based motorbike taxis) are often the fastest and cheapest way to move through Indonesian cities, particularly Jakarta — a helmet is provided, and weaving through gridlock that would trap a car for an hour can take ten minutes on a bike. Traditional street-side ojek (unofficial motorbike taxis, no app, negotiate the price) still exist alongside the app versions, especially in areas the apps don't cover well — useful to know about but negotiate the fare before getting on.
GoJek's GoPay and the independent wallets OVO and DANA are widely used across Indonesia for ride payments, food delivery, and increasingly for everyday purchases at convenience stores and small vendors. Registration generally requires an Indonesian phone number, similar to other regional e-wallets — get a local SIM early if you're staying more than a few days, as cash-only riding gets old fast in a country this cashless-leaning in its cities.
Indonesia's scale doesn't sink in until you try to plan a multi-island trip — Jakarta to Bali to Lombok to Flores isn't a road trip, it's a series of flights, and for most combinations of islands, flying is genuinely the only practical option for anyone not on a multi-week budget itinerary. The domestic flight network is extensive and, on the routes tourists use, generally affordable — but it comes with a reliability reputation worth planning around.
Garuda Indonesia is the flag carrier — full-service, generally the most reliable, and priced accordingly. Citilink is Garuda's budget arm — solid mid-tier option. The Lion Air Group (Lion Air, Wings Air, Batik Air, Super Air Jet) covers the widest network of routes, including many smaller and more remote airports that other carriers don't serve — but it's also the group most associated with delays and last-minute schedule changes. AirAsia Indonesia covers some routes, mostly to/from Bali and Jakarta.
Traveloka is the dominant Indonesian booking app/site for domestic flights, hotels, and increasingly buses and trains too — widely used by both locals and travellers, with an English-language interface. Booking direct with the airline works too, but Traveloka often surfaces the full range of options (including smaller regional carriers) in one place, which is useful when you're trying to find any flight at all to a smaller airport.
This is the single most common planning mistake on Indonesia trips that involve multiple islands: booking a flight that lands the same day a boat departs, or scheduling a flight connection with only an hour or two of buffer. Lion Air Group flights in particular have a reputation for delays and schedule changes that can happen with little notice — and on top of that, inter-island boats (covered in the Boats tab) get weather-cancelled regularly. If your itinerary has a flight feeding into a same-day boat, or a tight connection between two domestic flights, that's the leg most likely to unravel your schedule. Where possible, build in a buffer day around any island-to-island transition — especially the ones involving both a flight and a boat.
If there's one transport surprise that consistently delights visitors, it's Java's train network. Run by KAI (Kereta Api Indonesia), trains connecting Jakarta, Bandung, Yogyakarta, and Surabaya are comfortable, punctual by Indonesian standards, and very affordable — a genuine highlight rather than something to merely tolerate. If your Indonesia trip includes any Java overland travel, the train should be your default, not the bus.
The premium "Argo" series trains run the main Jakarta–Bandung–Yogyakarta–Surabaya corridors with executive class (assigned, air-conditioned, reclining seats, genuinely pleasant) and business/economy options at lower prices. Booking is straightforward via the KAI Access app or Traveloka, and seats on popular routes (especially Jakarta–Yogyakarta around weekends and holidays) sell out — book ahead rather than turning up. The Jakarta–Bandung high-speed rail (Whoosh) has also added a genuinely fast option on that specific corridor.
Overnight buses ("bus malam") connect cities across Java and beyond, with sleeper-style reclining seats on the better operators. They're cheaper than trains and cover routes trains don't, but comfort and reliability vary significantly by operator — read recent reviews before booking an overnight bus on an unfamiliar company. For any route where both train and bus exist, the train is almost always the better experience for a similar or only slightly higher price.
If you're travelling overland from Java to Bali (by train or bus, continuing onward), the route ends with a vehicle ferry crossing the narrow Bali Strait between Ketapang (East Java) and Gilimanuk (Bali) — normally a short, routine crossing of around 30–45 minutes. It's worth knowing this is the same general route where a vehicle ferry sank in 2025, which made headlines and renewed safety scrutiny on this crossing specifically. The crossing remains heavily used and is part of daily life for thousands of people — but if conditions look rough or operators pause sailings, that's a signal worth heeding rather than pushing through on a tight schedule.
This is the single biggest transport adjustment for anyone arriving in Bali expecting something like Jakarta's growing transit network, or even Thailand's tourist-area infrastructure. Bali essentially has no meaningful public transport system — no metro, no real city buses for tourist areas, nothing comparable to what's covered elsewhere on this page. What fills the gap is a combination of ride-hailing apps (with real local restrictions), private drivers, and scooters — each with its own honest tradeoffs.
This is the issue that catches a lot of people off guard, especially those who've used Grab freely elsewhere in Southeast Asia. In parts of Bali — certain areas of Ubud, Canggu, and various villages — local taxi and transport driver associations have informally restricted app-based ride-hailing pickups and drop-offs, sometimes blocking app drivers from entering certain zones at all. This isn't official government policy and isn't consistent across the island, but it's a real, long-running dynamic similar to taxi-mafia tensions seen in parts of Thailand. In practice: the app may show no available drivers in some areas, or a driver may ask you to walk to a nearby main road for pickup rather than entering a village centre. It's frustrating but rarely dangerous — having a backup plan (a hotel-arranged driver, or knowing the nearest main-road pickup point) avoids most of the friction.
Renting a scooter is extremely common in Bali and genuinely transforms how much of the island you can see — but it comes with real risk that's worth taking seriously rather than dismissing. Indonesia legally requires an International Driving Permit with a motorcycle endorsement for foreigners; enforcement varies but police checkpoints in tourist areas do check documents, and unlicensed riders face fines (sometimes resolved informally, on the spot, in cash). Beyond the legal side: Bali's roads mix narrow village lanes, fast main roads, and increasingly heavy tourist traffic in areas like Canggu and Seminyak — accident rates among tourist riders are a real and ongoing concern, not a scare story. None of this means don't rent — it means: have actual riding experience, wear a helmet, carry the right documents, and don't treat checkpoint stops as something to be aggressive about.
Hiring a private driver for a day (or for your whole trip) is extremely common in Bali and surprisingly affordable — typically a flat day rate covering the driver, fuel, and the car, often arranged through your hotel/villa or via local recommendations and review platforms. For families, groups, anyone uncomfortable on a scooter, or longer trips out to places like Ubud's surrounding sights or the east coast, a private driver is often the most relaxed and cost-effective option once split between a few people — and sidesteps both the scooter risk question and the ride-hailing pickup-zone friction entirely.
Bali's tourist hotspots have grown faster than their road networks — narrow lanes built for a fraction of today's traffic now carry a constant stream of scooters, cars, and tour vans, especially around Canggu's beach roads and Ubud's centre during peak season. Short distances that look like a five-minute trip on a map can take 20–30 minutes at busy times. Factor this into any plans with a fixed arrival time — flights, bookings, tours — particularly if you're travelling between these areas during the day.
In a country of 17,000+ islands, boats aren't a novelty — they're essential infrastructure, used daily by millions of people. For travellers, the main routes are the fast boats connecting Bali to Nusa Penida, Nusa Lembongan, Lombok, and the Gili Islands, plus the larger Pelni ferries for longer inter-island journeys. Boat safety has been a genuinely live topic in Indonesian travel news recently, and it's worth understanding the real picture rather than either panicking or dismissing it.
Boat accidents involving Indonesian ferries have made international news in recent years, including a vehicle ferry sinking between Java and Bali in 2025. It's reasonable for this to raise questions before you book a fast boat to Nusa Penida or the Gilis. The honest picture: that incident involved a large vehicle ferry, not the smaller fast boats tourists typically use — but tourist fast boats have also had safety incidents, and there's been ongoing pressure on operators around the Nusa Islands and Gili routes to improve safety standards and procedures. Hundreds of fast boat trips run safely every day. The practical takeaway: choose an established operator with a track record (not the cheapest option at the harbour), make sure life jackets are actually provided and worn, and don't treat "the boat is running" as proof that conditions are fine — captains should have real authority to delay or cancel for weather, and operators who clearly don't are worth avoiding.
Fast boat routes between Bali, Nusa Penida, Lombok, and the Gilis cross stretches of water that can deteriorate quickly when swell picks up, and operators do — and should — cancel or delay sailings when conditions aren't safe. This isn't rare; it happens regularly, especially in the wetter months. If any part of your itinerary depends on a same-day boat crossing — particularly one feeding into a flight, or vice versa — build in at least one buffer day. Treating an inter-island boat as a guaranteed, on-time connection is the single most common cause of itinerary chaos in this part of Indonesia.
This surprises people who've been riding scooters everywhere else in Indonesia: Gili Trawangan, Gili Air, and Gili Meno ban motorized vehicles entirely. Getting around is by foot, bicycle, or cidomo (a traditional horse-drawn cart). It's part of what makes the Gilis feel distinctly different — quieter, slower-paced — but it does mean planning for a different kind of "getting around" than the rest of your trip, including for luggage transfer from the boat to your accommodation, which is typically handled by cidomo or porters.
For longer journeys beyond the Bali/Lombok/Gili cluster — to places like Sulawesi, Kalimantan, or further into eastern Indonesia — Pelni operates the national long-distance ferry network, with multi-day routes and a range of cabin classes from basic shared deck space to private cabins. These are a different experience entirely from the short fast boats: slower, more of a journey in themselves, and popular with budget travellers doing extended Indonesia itineraries. Schedules can be infrequent on some routes (sometimes weekly), so for longer inter-island trips, check Pelni's schedule early when planning rather than assuming daily departures.
Every topic covered in depth — pick any deep dive and go straight in.
Bali vs Jakarta vs Yogyakarta. Real monthly budgets, upfront rent reality, and category-by-category breakdown.
Read the guide →VOA, E33G nomad visa, Second Home Visa, B211A, KITAS/KITAP — the full picture with 2026 enforcement context.
Read the guide →Hak Sewa vs Hak Pakai vs PT PMA. Why nominee structures are illegal. What upfront rent really means.
Read the guide →BPJS eligibility for expats, private hospitals in Bali and Jakarta, medevac reality, insurance requirements.
Read the guide →Scooters, Grab vs GoJek, getting around Bali without dying, inter-island flights, Jakarta MRT.
PLN electricity (prepaid token system), IndiHome vs Biznet internet, water supply realities, mobile SIMs.
Read the guide →KITAS vs tourist accounts, best banks, QRIS, e-wallets, and the IDR-only rule for domestic transactions.
Read the guide →Where expats shop, Tokopedia vs Shopee vs Lazada, Bali markets, import tax reality, alcohol pricing.
Read the guide →Warungs, nasi goreng, Bali's café culture, food delivery (GoFood/GrabFood), vegetarian options, what to avoid.
Read the guide →