Three weeks in Indonesia: temples, volcanoes and reefs
Three weeks is the sweet spot: long enough for Java and the eastern islands, short enough that every day still counts. The secret is dropping one destination before you start.
Bromo and Semeru at dawn. The caldera is the highlight of eastern Java. Jakub Hałun, CC BY-SA 4.0
Three weeks is the most common length for a serious first trip to Indonesia, and the most common mistake is trying to see four islands in it. This route covers three: Java, Bali and Flores, with Lombok and the Gilis as an optional add-on. It runs from Yogyakarta to Labuan Bajo and uses the train across Java, which is the single best travel experience in the country.
The logic is simple. Java gives you the temples and volcanoes, Bali gives you the beach and the culture, and Flores gives you the wild east and Komodo. Each is different enough to justify the journey, and each is served by flights, so you are never more than a few hours from the next. The itinerary below assumes you start in Yogyakarta because that is where the country's best monuments are, and it saves Jakarta for a future trip.
Days 1 to 5: Yogyakarta and the temples
Fly into Yogyakarta from Jakarta or Bali, or take the train if you are coming overland. Give the city four nights. Day one is the kraton, the water palace and Malioboro in the evening. Day two is Borobudur at sunrise and Prambanan in the afternoon. Day three is Kotagede for silver and batik, or a cooking class. Day four is a day trip to the Dieng plateau or the beaches at Parangtritis.
Stay in Prawirotaman if you want restaurants and coffee, or near Malioboro if you want to be in the middle of the city. Eat gudeg, the jackfruit stew that is Yogyakarta's signature dish, and try the local coffee at a warung. Book the Borobudur sunrise ticket online a few days ahead; the combined ticket with Prambanan is better value.
On day five, take the morning train to Malang or Surabaya. The journey is four to five hours in eksekutif class and costs IDR 300,000 to 600,000. From Malang, a car climbs to Cemoro Lawang in about three hours. Sleep early, because the Bromo jeep leaves at three.
- Yogyakarta: four nights
- Borobudur sunrise plus Prambanan: one day
- Train to Malang: 4-5 hours
- Bromo jeep leaves at 3am
Days 6 to 8: Bromo and Ijen
Bromo is the easy volcano: a jeep to the viewpoint, a short walk to the crater, and a landscape that looks like another planet. Two nights in Cemoro Lawang gives you a spare morning if the cloud comes in. From there, drive to Banyuwangi, which takes six to seven hours, and sleep before the Ijen climb.
Ijen is harder. The trail starts at midnight, climbs three kilometres to the rim and then descends steeply to the blue flames. It is sulphur-heavy, cold and crowded, but the flames are one of the strangest sights in Indonesia. The sunrise version, without the descent, is easier and still worth doing.
From Banyuwangi, take the ferry to Gilimanuk in Bali, which takes an hour, then drive to Ubud in three to four hours. Alternatively, fly Surabaya to Denpasar and save a day. You should be in Bali by the evening of day eight.
Days 9 to 14: Bali, split in two
Six days in Bali is enough if you split them between the interior and the coast. Three nights in Ubud for the terraces, the temples and the food, then three on the coast: Sanur for calm water, Canggu for surf, or Amed for snorkelling. Do not try to see the whole island; the traffic will eat the holiday.
In Ubud, walk the Campuhan ridge early, visit Tegallalang before nine, see a dance performance at the palace and eat at a warung. Take one day trip to the Tirta Empul water temple or the Batur caldera. In the south, do very little: swim, eat, watch the sunset and recover from Java.
If you want to add Lombok and the Gilis, take three days from the Bali coast and fly or take the fast boat. It is worth it if you dive. If you do not dive, Bali has enough reef and beach to keep you happy, and the extra move costs a day.
- Ubud: three nights
- South or east coast: three nights
- Fast boat to the Gilis: 1.5-2.5 hours
- Skip Lombok if you do not dive
Days 15 to 19: Flores and Komodo
Fly Bali to Labuan Bajo, 1.5 hours. Spend the first afternoon arranging a Komodo trip: a day boat to Padar, Komodo and Pink Beach, or a two-night liveaboard for the diving. The dragons are impressive, but the landscape, the water and the sunsets are what people remember.
Use two days for mainland Flores. The mirror caves are close to town, the spider-web rice fields at Cancar are a half-day drive, and the villages around Bajawa are worth an overnight. If you have time, continue to Kelimutu for the coloured lakes, but that adds two days and a lot of road.
The last full day should be slow. Labuan Bajo has good cafes and a waterfront that rewards sitting still. Buy coffee and ikat cloth, sort your photos and prepare for the flight home. The journey back to Bali or Jakarta takes most of a day, so do not schedule an international connection on the same date.
- Bali to Labuan Bajo: 1.5 hours
- Komodo day boat: IDR 1-2 million
- Liveaboard: IDR 3-6 million for two nights
- Keep a buffer day before flying home
What to drop and what to keep
The thing to drop is Jakarta. It is a useful gateway but not a highlight, and skipping it buys you two days for Flores or a rest in Bali. The thing to keep is Java's train journey, even though it takes a day, because it shows you the country in a way that a flight cannot.
The second thing to drop is the idea of seeing everything. Three weeks in Indonesia is a generous trip, but the country is 5,000 kilometres wide. Travellers who accept that they will come back enjoy the trip far more than those trying to tick off Raja Ampat and Sumatra in the same fortnight.
Budget USD 1,200 to 2,600 per person for three weeks, excluding international flights. Transport is the biggest variable: two domestic flights, three boats and a lot of drivers. Book the flights early, keep the boats flexible and carry cash for the rest.
Three weeks is long enough to fall into the rhythm of the country and short enough to leave you wanting more. That is the correct outcome.
The Travelsaya editorsThe practicalities
Everything below is a range, not a quote. Confirm ferry times and car rates locally; both move with fuel and season.
- Length
- 21 days
- Route
- Yogyakarta to Labuan Bajo
- Train
- Yogyakarta-Malang, 4-5 hours
- Bali to Flores
- 1.5 hours by air
- Budget
- USD 1,200-2,600
- Best months
- May to September
Questions people actually ask
Is three weeks enough for Indonesia?
Enough for Java, Bali and Flores, or Java, Bali and Lombok. Not enough to add Sumatra or Raja Ampat without rushing.
Should I skip Jakarta?
If you only have three weeks, yes. Fly straight to Yogyakarta and save two days for the islands.
Do I need to book domestic flights in advance?
Yes for Bali to Labuan Bajo and any flight around a public holiday. A few weeks ahead is usually enough for the rest.
Can I do this route with children?
The Java section is hard with young children because of the midnight starts. Bali and Flores are easier. Consider a shorter, slower version.