GoAsia
How to Get from Bali to Yogyakarta

How to Get from Bali to Yogyakarta

Last updated: October 15, 2026
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.

Train, Bus, Flight and Ferry tickets

Booking and payment are handled by 12Go, not GoAsia. We may receive a commission when you book through our links.

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

ModePrice (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
  • →  Economy 10:00, 12:05, 15:00
Bus Bali - Yogyakarta $ 28.18–52.52 15h 25m – 18h
  • →  Executive 12:00, 12:30, 18:30, 18:35
  • →  Double Decker 13:55
  • →  Sleeper 15:45
Bus Denpasar - Yogyakarta $ 28.18–52.52 15h 45m – 19h 5m
  • →  Executive 11:00, 12:00, 18:00, 18:02, 18:15, 18:25
  • →  Double Decker 13:10
  • →  Sleeper 15:00
Bus Bali - Sleman $ 30.41 18h 40m
  • →  Executive 12:30
Bus Bali - Kulon Progo $ 29.30–32.34 18h – 18h 10m
  • →  Executive 10:00, 10:30
Bus Bali - Giwangan $ 30.41 18h 40m
  • →  Executive 12:30
Bus Tabanan - Yogyakarta $ 28.18–37.59 14h 30m – 18h
  • →  Executive 12:30, 14:10, 19:30
  • →  Double Decker 14:10
Bus Tabanan - Sleman $ 30.41 17h
  • →  Executive 14:10
Bus Tabanan - Kulon Progo $ 29.30 15h 15m – 15h 25m
  • →  Executive 13:15
Bus Badung - Yogyakarta $ 30.41 15h 15m
  • →  Executive 14:00
Bus Badung - Sleman $ 30.41 17h 10m
  • →  Executive 14:00
Bus Badung - Kulon Progo $ 29.30 15h 30m
  • →  Executive 13:00

Frequently Asked Questions

How can I book tickets from Bali to Yogyakarta?

Use the booking tool on this page to compare the transport options currently available from Bali to Yogyakarta, including current prices and schedules.

What is the cheapest way to get from Bali to Yogyakarta?

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.

What is the fastest way to get from Bali to Yogyakarta?

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.

How long does it take to get from Bali to Yogyakarta?

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.

Is it better to fly or take the bus to Yogyakarta?

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.

How do I get from Yogyakarta International Airport into the city?

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).

Can I take a train from Java's east coast to Yogyakarta?

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. [1] AirAsia: Cheap Flights from Bali to Yogyakarta Kulon Progo | AirAsia MOVE. Retrieved October 15, 2026.
  2. [3] ASDP Indonesia Ferry: ASDP Percepat Pemulihan Layanan Ketapang-Gilimanuk, Optimalkan 26 Kapal dan Pola Operasi. Retrieved October 15, 2026.
  3. [4] 12Go: 12Go Timetable: Bali to Yogyakarta. Retrieved October 15, 2026.
  4. [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.