Contents
Leaving behind the turquoise surf of Bali for the volcanic landscapes and ancient temple spires of Yogyakarta is a transition from the Indonesia of leisure to the Indonesia of heritage. While Bali feels like a world unto itself, Yogyakarta serves as the soul of Java, where the Sultan's palace still breathes life into local traditions and the massive stone structures of Borobudur and Prambanan dominate the horizon. The journey between them is a rite of passage for many travelers, crossing the Bali Strait and traversing the length of East and Central Java.
Choosing your path depends entirely on whether you value the efficiency of the air or the slow, unfolding narrative of the Indonesian road. You can secure your spot on either of these journeys by booking via GoAsia.cc, ensuring your transition from the beach to the city is as smooth as possible.
Bali to Yogyakarta by Flight
For those who want to maximize their time exploring the Malioboro night markets or catching a sunrise at a temple, flying is the undisputed champion. Non-stop flights from Ngurah Rai International Airport (DPS) to Yogyakarta International Airport (YIA) take about 1 hour 30 minutes, and Super Air Jet, Lion Air, Garuda Indonesia, Batik Air, Indonesia AirAsia and TransNusa all serve the route.[1] The cheapest fares on AirAsia's listing start at about IDR 1,060,000 (about $59), and the Garuda flights on the sample date were around IDR 2,500,000 (about $139).[1]
YIA is in Kulon Progo, outside the city, so plan the last leg. The airport train links it with Yogyakarta Station; Railink published express fares of Rp40,000 to Rp60,000 and a regular fare of Rp20,000, with trains running from 04:20 to 21:30 (September 2025).[2]
Bali to Yogyakarta by Bus
The overland journey is an epic undertaking that appeals to budget travelers and those who enjoy seeing the transition of the Indonesian landscape. Buses cross the Bali Strait by ferry between Gilimanuk in West Bali and Ketapang in East Java, a crossing that ASDP manages, and then continue by road through East and Central Java.[3] Queues can build up at the port: in late September 2026 vehicles waited in a line of about 17 km on the Ketapang side for about 3 days before ASDP brought 26 ships into service, so allow extra time.[3]
Executive, Double Decker and Sleeper Buses
Booking platforms list daily long-distance buses to Yogyakarta from Denpasar, Tabanan and Badung, mostly in executive class, with some double-decker and sleeper services. Listed journey times are about 15 to 19 hours and fares about $28 to $53 (October 2026). Executive buses leave around midday and in the early evening, and a sleeper bus is listed at about 15:45, which means arriving the next morning.[4]
There is also a rail option on the Java side: KAI's Sri Tanjung train runs between Lempuyangan in Yogyakarta and Ketapang station in Banyuwangi,[5] so some travelers cross the strait by ferry and finish the journey by train.
Comparing Your Options
| Mode | Price (USD) | Duration |
|---|---|---|
| Flight (DPS to YIA) | From about $59[1] | About 1h 30min[1] |
| Bus (executive, double decker, sleeper) | About $28 to $53[4] | About 15h to 19h[4] |
Tips for Traveling from Bali to Yogyakarta
- Book in Advance: Flights and overnight buses tend to fill up quickly, particularly during Indonesian public holidays or long weekends.
- Prepare for the Cold: Indonesian buses are notorious for their aggressive air conditioning. Even if it is sweltering outside, carry a light jacket or a sarong to stay warm during the overnight journey.
- Airport Logistics: Yogyakarta International Airport is in Kulon Progo, not in the city. The airport train to Yogyakarta Station is the simplest way into town.
- Pack Snacks: Rest stops on long distance buses can be unpredictable, so carry some water and snacks.
- Ferry Crossing: On the bus option, ask the seller whether the Gilimanuk to Ketapang ferry fare is included in your ticket, and allow extra time in case of queues at the port.
Timetable
| Flight Bali - Yogyakarta $ 62.44–87.32 1h 30m – 1h 50m | |
|
|
| Bus Bali - Yogyakarta $ 28.18–52.52 15h 25m – 18h | |
|
| Bus Denpasar - Yogyakarta $ 28.18–52.52 15h 45m – 19h 5m | |
|
| Bus Bali - Sleman $ 30.41 18h 40m | |
|
| Bus Bali - Kulon Progo $ 29.30–32.34 18h – 18h 10m | |
|
| Bus Bali - Giwangan $ 30.41 18h 40m | |
|
| Bus Tabanan - Yogyakarta $ 28.18–37.59 14h 30m – 18h | |
|
| Bus Tabanan - Sleman $ 30.41 17h | |
|
| Bus Tabanan - Kulon Progo $ 29.30 15h 15m – 15h 25m | |
|
| Bus Tabanan - Giwangan $ 30.41 17h | |
|
| Bus Badung - Yogyakarta $ 30.41 15h 15m | |
|
| Bus Badung - Sleman $ 30.41 17h 10m | |
|
| Bus Badung - Kulon Progo $ 29.30 15h 30m | |
|
Frequently Asked Questions
Use the booking tool on this page to compare the transport options currently available from Bali to Yogyakarta, including current prices and schedules.
The bus is usually the cheapest way, with fares of about $28 to $53 on booking platforms (October 2026). Services leave from Denpasar, Tabanan and Badung.
Flying is the fastest option by a significant margin. A non-stop flight takes about 1 hour 30 minutes, compared with at least 15 hours on the road.
By air, a non-stop flight takes about 1 hour 30 minutes. By bus, the journey takes roughly 15 to 19 hours depending on traffic, the ferry queue and your departure point.
If you have a limited schedule, flying is much better as it saves nearly an entire day of travel. If you are on a budget or want to see the Javanese countryside, the bus is an affordable alternative.
The airport train runs between the airport and Yogyakarta Station. Railink published express fares of Rp40,000 to Rp60,000 and a regular fare of Rp20,000, with trains from 04:20 to 21:30 (September 2025).
Yes. KAI's Sri Tanjung train runs between Ketapang station in Banyuwangi and Lempuyangan in Yogyakarta, so you can cross the Bali Strait by ferry and continue by train.
Sources and background
Numbers in the text such as [1] refer to these sources.
- [1] AirAsia: Cheap Flights from Bali to Yogyakarta Kulon Progo | AirAsia MOVE. Retrieved October 15, 2026.
- [2] Railink: Complete Guide to Taking the Airport Train from Yogyakarta Station to Yogyakarta International Airport (YIA). Retrieved October 15, 2026.
- [3] ASDP Indonesia Ferry: ASDP Percepat Pemulihan Layanan Ketapang-Gilimanuk, Optimalkan 26 Kapal dan Pola Operasi. Retrieved October 15, 2026.
- [4] 12Go: 12Go Timetable: Bali to Yogyakarta. Retrieved October 15, 2026.
- [5] PT Kereta Api Indonesia (KAI): Stasiun Ketapang Perkuat Peran Mobilitas Banyuwangi Selama Nataru 2025/2026. 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.