Image Source: KotaJogja
Planning the journey between these two cities can feel overwhelming. Fly? Take the train? Hop on a bus? Or drive yourself?
Each option suits a different type of traveler. Each has a different budget. Each offers a different experience.
This guide covers all four ways to travel from Jakarta to Yogyakarta – including flying, taking the train, boarding a bus, and driving with WAHDAH. No fluff. Just practical, useful information to help you choose the right option for your trip.
Quick Guide: How to Get from Jakarta to Yogyakarta at a Glance
| Transport | Duration | Price (IDR) | Best For |
|---|---|---|---|
| Flight | 1-1.5 hours | From 600k – 1.8M | Time-conscious travelers |
| Train | 7-9 hours | 200k – 900k | Comfort, scenery, experience |
| Bus (Sleeper) | 8-12 hours | 250k – 450k | Budget travelers, overnight journey |
| Car (Self-Drive) | 8-10 hours | Varies | Freedom, flexibility, groups |
| Car (With Driver) | 8-10 hours | Varies | Relaxed exploration, families |
How to Get from Jakarta to Yogyakarta by Flight
Flying is the fastest way how to get from Jakarta to Yogyakarta. The air distance is around 430 kilometers, and flight time is typically 60 to 75 minutes. The shortest flight time from Jakarta to Yogyakarta is approximately 1 hour and 10 minutes.
Several airlines operate this route daily, including Garuda Indonesia, Lion Air, Citilink, Batik Air, and AirAsia Indonesia.
Main Route: Soekarno-Hatta (CGK) to Yogyakarta International Airport (YIA)
Soekarno-Hatta is Indonesia's busiest airport. Yogyakarta International Airport opened in 2020 and is modern and well-designed. The trade-off is distance – YIA sits about 45 kilometers west of Yogyakarta city center.
From YIA to city center:
-
Damri airport bus: IDR 20,000 – 25,000
-
Airport train (Kereta Bandara): 40 minutes, IDR 15,000
-
Taxi (official counter): IDR 150,000 – 200,000
-
Grab or Gojek: from designated pick-up zone
Typical flight prices CGK to YIA:
-
Budget carriers (Lion Air, Citilink, Batik Air): from approximately Rp600,000 – Rp800,000
-
Full service (Garuda Indonesia): IDR 800,000 – 1,800,000 one way
Secondary Route: Halim Perdana Kusuma (HLP) to Adisucipto (JOG)
This route is less well known but has practical advantages. Halim Airport is in East Jakarta, much closer to the city center than CGK. Adisucipto is only 8 kilometers east of Yogyakarta city center.
From JOG to city center:
-
Grab or Gojek: IDR 25,000 – 40,000, 15-20 minutes
The catch? Fewer airlines operate this route, and prices are often higher.
Which Airport Pair Should You Choose?
Choose CGK to YIA if you are staying in West or Central Jakarta, want the most flight options, or are on a budget.
Choose HLP to JOG if you are staying in East or South Jakarta, and saving time on the ground matters more than ticket price.
How to Get from Jakarta to Yogyakarta by Train
The train is one of the great rail journeys in Java and, for many travelers, the most enjoyable way how to get from Jakarta to Yogyakarta. The journey takes 7 to 9 hours and passes through landscapes that shift from dense urban sprawl to volcanic hills and fertile plains. The average train journey time is 6 hours and 21 minutes.
Departure and Arrival Stations
In Jakarta:
-
Gambir Station – Executive and premium class services, centrally located
-
Pasar Senen Station – Economy and some business class trains
In Yogyakarta:
-
Tugu Station – Main station, walking distance to Malioboro Street (preferred arrival point)
-
Lempuyangan Station – Some economy services, slightly further east
Train Classes
| Class | Seat Configuration | Price (IDR) | Best For |
|---|---|---|---|
| Executive (Eksekutif) | 2-2, wide recline, power socket | 350k – 650k | Comfort, overnight travel |
| Business | 2-2, better than economy | 250k – 450k | Middle-ground option |
| Economy (Ekonomi) | 2-2 or 2-3, narrower seats | 200k – 350k | Budget travelers |
Top Train Services
-
Argo Lawu and Argo Dwipangga – Premium executive services, shorter journey times
-
Taksaka – Popular overnight service, depart evening, arrive early morning
-
Gajayana and Bima – Other well-regarded overnight options
How to Book Train Tickets
Book through the official KAI Access app (iOS/Android), the KAI website (kai.id), or third-party platforms. Booking up to 90 days in advance is possible, and strongly recommended for travel during Lebaran, Christmas, and school holidays.
Typical train prices Jakarta to Yogyakarta:
-
Economy class: IDR 200,000 – 350,000
-
Executive class: IDR 350,000 – 650,000
-
Premium overnight services: IDR 500,000 – 900,000
How to Get from Jakarta to Yogyakarta by Bus
The bus is the budget option for how to get from Jakarta to Yogyakarta. If you choose wisely, it is considerably more comfortable than the word "bus" might suggest.
Departure: Pulo Gebang Terminal, Jakarta
Pulo Gebang is one of the largest bus terminals in Southeast Asia. It is accessible via the Transjakarta bus network and by Grab or Gojek. Evening departures typically leave between 5:00 PM and 9:00 PM.
Arrival: Jombor Bus Terminal, Yogyakarta
Jombor is the more convenient arrival point for most visitors. It is significantly closer to the city center, Malioboro Street, and most hotels than Giwangan Terminal. From Jombor, a Grab or Gojek into central Yogyakarta costs IDR 15,000 – 30,000 and takes 10-20 minutes.
Choose the Sleeper Bus
This is the most important advice in this section. If you are traveling by bus, book a sleeper bus rather than a standard reclining seat service. The price difference is modest, and the experience is substantially better.
Sleeper buses feature fully flat or near-flat beds in individual pods, blankets and pillows, curtains for privacy, and sometimes personal entertainment screens.
Typical bus prices Jakarta to Yogyakarta:
-
Standard reclining seat: IDR 100,000 – 200,000 (Sinar Jaya and Agramas are around Rp190,000)
-
Sleeper bus: IDR 250,000 – 450,000 (Sant Gold from Rp260,000, Unicorn Indorent ~Rp400,000)
How to Get from Jakarta to Yogyakarta by Car (Self-Drive or With Driver)
For travelers who value freedom and flexibility, driving is an excellent option on how to get from Jakarta to Yogyakarta. You control the schedule. You stop when you want. You explore hidden gems along the way.
The Route
The journey covers approximately 577 kilometers via the Trans-Java Toll Road. The drive takes 8 to 10 hours depending on traffic and stops.
Typical route: Jakarta → Cikampek → Palimanan → Pejagan → Pemalang → Batang → Semarang → Solo → Yogyakarta
Self-Drive vs. With Driver
| Option | Best For | Benefits |
|---|---|---|
| Self-Drive | Confident drivers, small groups | Total freedom, lower cost |
| With Driver | Families, first-time visitors | Relax, enjoy the views, local knowledge |
Why Choose WAHDAH for Your Jakarta to Yogyakarta Drive
WAHDAH offers well-maintained vehicles for both self-drive and with-driver options. All cars are regularly serviced, clean, and equipped with cold AC – essential for Java's tropical heat.
With WAHDAH, you get:
-
Unlimited mileage – drive without watching the odometer
-
Flexible pickup and drop-off – Jakarta to Yogyakarta or other cities
-
24/7 customer support – help when you need it
-
Transparent pricing – no hidden fees
-
Self drive or with driver option
Estimated costs: Contact WAHDAH for a specific quote based on your vehicle choice and itinerary.
Best Time to Travel from Jakarta to Yogyakarta
The timing of your journey affects both comfort and cost.
Best days of the week: Tuesday, Wednesday, and Thursday are consistently the cheapest and least crowded days to travel.
Best months: April, May, August, September, and October offer the best combination of good weather and reasonable travel prices.
Avoid: July (peak tourism, higher prices) and Lebaran holiday period (sold out weeks in advance).
Packing and Clothing Tips for the Journey
For flights: The cabin can be cold. Bring a light jacket.
For overnight trains: Executive class carriages are heavily air-conditioned. Bring a light blanket or travel jacket. A neck pillow makes a significant difference.
For sleeper buses: The air conditioning can be even colder than the train. Bring a warm layer, socks, and an eye mask.
For driving: Comfortable clothes, sunglasses, and a hat. Bring snacks and water for the road.
For Yogyakarta itself: Lightweight, breathable fabrics. If visiting Borobudur or Prambanan, shoulders and knees must be covered.
How to Get from Jakarta to Yogyakarta: FAQ
What is the fastest way to get from Jakarta to Yogyakarta?
Flying is the fastest option, taking 1 to 1.5 hours flight time plus airport transfers. Total door-to-door time is around 4-5 hours. The shortest flight time is approximately 1 hour 10 minutes.
What is the cheapest way to get from Jakarta to Yogyakarta?
The bus is the cheapest option, with standard reclining seats from IDR 100,000 – 200,000 (Sinar Jaya and Agramas are around Rp190,000). The sleeper bus, at IDR 250,000 – 450,000, offers better value for overnight travel.
How long does the train take from Jakarta to Yogyakarta?
The train takes 7 to 9 hours depending on the service. The average train journey time is 6 hours 21 minutes. Executive class overnight trains are popular for saving on accommodation.
Can I drive from Jakarta to Yogyakarta?
Yes. The drive via the Trans-Java Toll Road is approximately 577 km and takes 8 to 10 hours. Toll costs are approximately Rp458,000 and fuel approximately Rp385,000. WAHDAH offers self-drive and with-driver options for a stress-free journey.
Which airport is closer to Yogyakarta city center?
Adisucipto Airport (JOG) is only 8 kilometers from the city center (15-20 minutes by car). Yogyakarta International Airport (YIA) is 45 kilometers west (45-75 minutes by car).
What is the most comfortable way to travel?
For most travelers, the executive class train offers the best balance of comfort, scenery, and central locations. For those who want complete flexibility, a private car with driver is the ultimate stress-free option.
Do I need to book tickets in advance?
Yes, especially for travel during Lebaran, Christmas, New Year, and school holidays. Trains can sell out weeks ahead. Flights are more expensive closer to departure.
How much does the airport train cost from YIA to Yogyakarta?
The airport train (Kereta Bandara) costs IDR 15,000 for the 40-minute journey from YIA to Yogyakarta.
Final thought. Yogyakarta is waiting. The majestic Borobudur. The magnificent Prambanan. The vibrant Malioboro. The warm Javanese hospitality. All of it is just a journey away.
Whether you fly, take the train, hop on a bus, or drive with WAHDAH – the cultural heart of Java is ready to welcome you.
Selamat jalan and enjoy Yogyakarta! ๐๐ฎ๐ฉ
Check out other interesting articles:
-Rent a Car Jakarta with Driver | Transparent Pricing & Flexible Pickup and Dropoff




