Yogyakarta’s Adisucipto International Airport connects to most Indonesian cities and receives international flights from Kuala Lumpur and Singapore. The airport is 8 km from the center of the city and official taxis (via a voucher from the airport taxi desk) are widely available.
Yogyakarta Train Station, sometimes referred to by its previous name Tugu Station, receives trains from Jakarta, Bandung and Surabaya. It is also on the route for many destinations throughout Java. Depending on the train service, it can take 7 to 12 hours to arrive from Jakarta.
Yogyakarta can be accessed via Jalur Selatan, which stretches through parts of Southern Java.
From Jakarta, Jalur Selatan or Jalur Pantura can both be used to reach Yogjakarta. The trip is expected to take 11 hours. Bandung is 380 km to the east of the city while Surabaya is 300 km southwest. But beware traffic and road accidents might seriously affect estimated travel times.
Metered taxis are extremely easy to get in Yogyakarta by either hailing them from the street or asking your hotel to call you one. Yogyakarta is a relatively small city so getting around is quite reasonable.
Ride hailing service
The Uber, Grab and Go-jek apps work well in Jogyakarta and can be used to call cars, taxis or motorcycle taxis, also known as ojeks.
TransJogyakarta is Yogyakarta’s public bus system. It has 17 routes and operates from 5:30am to 9:30pm. Single-stop tickets cost Rp 3,500 and can be bought at any bus stop. For more information and routes, see here and here.