The cheapest and fastest buses from Yogyakarta to Surakarta
Cheapest price
$3
Average price
$4
Fastest journey
1 h 40 m
Average duration
2 h 12 m
Buses per day
3
Distance
58 km
The best way to find a cheap bus ticket from Yogyakarta to Surakarta is to book your journey as far in advance as possible and to avoid traveling at rush hour.
The average ticket from Yogyakarta to Surakarta will cost around $4 if you buy it on the day, but the cheapest tickets can be found for only $3.
Of the 3 buses that leave Yogyakarta for Surakarta on Sat, Jun 20, 3 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
On Sat, Jun 20 the direct buses cover the 58 km distance in an average of 2 h 12 m but if you time it right, some buses will get you there in just 1 h 40 m .
On Sat, Jun 20 the slowest buses will take 2 h 55 m and usually involve a change or two along the way, but you might be able to save a few pennies if you’re on a budget.
1:30 PM2h00Yogyakarta3:30 PMSurakarta$31One-way0 transfers
11:20 PM1h40Yogyakarta1:00 AMSurakarta$41One-way0 transfers
8:00 AM2h55Yogyakarta10:55 AMSurakarta$41One-way0 transfers
11:20 PM1h40Yogyakarta1:00 AMSurakarta$41One-way0 transfers
1:30 PM2h00Yogyakarta3:30 PMSurakarta$31One-way0 transfers
8:00 AM2h55Yogyakarta10:55 AMSurakarta$41One-way0 transfers
Travel Information
Compare train and bus for Yogyakarta to Surakarta
Omio recommends booking the bus as it is the most popular option from Yogyakarta to Surakarta among Omio's users. If you are prioritising price take the bus with prices starting from $3. For those with little time consider booking a train which can get you there in 59m. The ticket price range depends on the travel mode: a bus costs an average of $3, and a train costs an average of $1.
Distance: 36 miles (58 km)
Compare bus with
Most popular Bus | Train | Driving |
|---|---|---|
$3 Average price Cheapest | $13 Average price | $13 Average price (fuel + tolls) |
2h 55m Average total duration 2h 25m Onboard + 30m Additional time* | 1h 29m Average total duration Fastest 59m Onboard + 30m Additional time* | 1h 46m Average total duration (door-to-door) |
Direct Options | Direct Options | Direct Options |
This is compared to other travel options from Yogyakarta to Surakarta:
A bus is $10 (€8) less than a train for this route with tickets for a train from Yogyakarta to Surakarta costing on average $13 (€11).
Other travel options to Surakarta take longer:
Bus takes on average 2h 25m.
You'll arrive about {timeSavings} sooner ({durationInMinutes} by bus vs {drivingDurationInMinutes} by car) and save roughly {savingsAmount} compared to fuel and tolls ({cheapestPrice} vs {drivingPriceInCents}). You also skip the drive itself — no traffic stress, no parking, and you can use the time to work, nap, or catch up on a series with the onboard Wi-Fi.
Direct coaches are operated by {directProviders}.
Driving is still worth considering if you're travelling with bulky luggage, need flexibility on departure times, or plan to stop along the way.
Yogyakarta to Surakarta Bus Timetables
| Operator | Departure Time | Arrival Time | Duration | Departure days | Cheapest price |
|---|---|---|---|---|---|
Operator Daytrans | Departure Time 03:00AM | Arrival Time 04:55AM | Duration 1h55 | Departure days Fri | Cheapest price $4 |
Operator Daytrans | Departure Time 04:00AM | Arrival Time 06:25AM | Duration 2h25 | Departure days Fri | Cheapest price $4 |
Operator Daytrans | Departure Time 05:00AM | Arrival Time 07:10AM | Duration 2h10 | Departure days Fri | Cheapest price $4 |
Operator Joglosemar Shuttle Bus | Departure Time 06:00AM | Arrival Time 08:00AM | Duration 2h00 | Departure days Fri | Cheapest price $0.68 |
Operator Daytrans | Departure Time 06:00AM | Arrival Time 08:10AM | Duration 2h10 | Departure days Fri | Cheapest price $4 |
Operator Joglosemar Shuttle Bus | Departure Time 06:15AM | Arrival Time 08:00AM | Duration 1h45 | Departure days Fri | Cheapest price $0.68 |
Operator Daytrans | Departure Time 06:15AM | Arrival Time 08:10AM | Duration 1h55 | Departure days Fri | Cheapest price $4 |
Operator Daytrans | Departure Time 07:00AM | Arrival Time 09:25AM | Duration 2h25 | Departure days Fri | Cheapest price $4 |
Operator Daytrans | Departure Time 07:15AM | Arrival Time 09:25AM | Duration 2h10 | Departure days Fri | Cheapest price $4 |
Operator Daytrans | Departure Time 08:00AM | Arrival Time 10:55AM | Duration 2h55 | Departure days Mon, Wed, Thu, Fri, Sat | Cheapest price $4 |
Operator Daytrans | Departure Time 08:15AM | Arrival Time 10:25AM | Duration 2h10 | Departure days Fri | Cheapest price $4 |
Operator Daytrans | Departure Time 09:30AM | Arrival Time 11:55AM | Duration 2h25 | Departure days Fri | Cheapest price $4 |
Operator Daytrans | Departure Time 09:45AM | Arrival Time 11:55AM | Duration 2h10 | Departure days Fri | Cheapest price $4 |
Operator Daytrans | Departure Time 11:00AM | Arrival Time 01:25PM | Duration 2h25 | Departure days Fri | Cheapest price $4 |
Operator Daytrans | Departure Time 11:15AM | Arrival Time 01:25PM | Duration 2h10 | Departure days Fri | Cheapest price $4 |
Operator Joglosemar Shuttle Bus | Departure Time 01:00PM | Arrival Time 03:00PM | Duration 2h00 | Departure days Fri | Cheapest price $3 |
Operator Joglosemar Shuttle Bus | Departure Time 01:30PM | Arrival Time 03:30PM | Duration 2h00 | Departure days Mon, Tue, Wed, Thu, Sat, Sun | Cheapest price $3 |
Operator Daytrans | Departure Time 02:00PM | Arrival Time 04:25PM | Duration 2h25 | Departure days Fri | Cheapest price $4 |
Operator Daytrans | Departure Time 02:15PM | Arrival Time 04:25PM | Duration 2h10 | Departure days Fri | Cheapest price $4 |
Operator Daytrans | Departure Time 02:30PM | Arrival Time 04:55PM | Duration 2h25 | Departure days Tue | Cheapest price $4 |
Operator Daytrans | Departure Time 03:00PM | Arrival Time 05:55PM | Duration 2h55 | Departure days Fri | Cheapest price $4 |
Operator Daytrans | Departure Time 03:15PM | Arrival Time 05:55PM | Duration 2h40 | Departure days Fri | Cheapest price $4 |
Operator Joglosemar Shuttle Bus | Departure Time 03:30PM | Arrival Time 06:00PM | Duration 2h30 | Departure days Fri | Cheapest price $3 |
Operator Daytrans | Departure Time 04:00PM | Arrival Time 06:55PM | Duration 2h55 | Departure days Fri | Cheapest price $4 |
Operator Daytrans | Departure Time 04:15PM | Arrival Time 06:55PM | Duration 2h40 | Departure days Fri | Cheapest price $4 |
Operator Daytrans | Departure Time 05:30PM | Arrival Time 07:55PM | Duration 2h25 | Departure days Fri | Cheapest price $4 |
Operator Daytrans | Departure Time 05:45PM | Arrival Time 07:55PM | Duration 2h10 | Departure days Fri | Cheapest price $4 |
Operator Joglosemar Shuttle Bus | Departure Time 06:00PM | Arrival Time 08:00PM | Duration 2h00 | Departure days Fri | Cheapest price $3 |
Operator Daytrans | Departure Time 06:30PM | Arrival Time 08:55PM | Duration 2h25 | Departure days Fri | Cheapest price $4 |
Operator Daytrans | Departure Time 06:45PM | Arrival Time 08:55PM | Duration 2h10 | Departure days Fri | Cheapest price $4 |
Operator Daytrans | Departure Time 07:30PM | Arrival Time 09:55PM | Duration 2h25 | Departure days Fri | Cheapest price $4 |
Operator Daytrans | Departure Time 07:45PM | Arrival Time 09:55PM | Duration 2h10 | Departure days Fri | Cheapest price $4 |
Operator Joglosemar Shuttle Bus | Departure Time 08:30PM | Arrival Time 10:30PM | Duration 2h00 | Departure days Fri | Cheapest price $3 |
Operator Daytrans | Departure Time 08:30PM | Arrival Time 10:55PM | Duration 2h25 | Departure days Fri | Cheapest price $4 |
Operator Daytrans | Departure Time 08:45PM | Arrival Time 10:55PM | Duration 2h10 | Departure days Fri | Cheapest price $4 |
Operator Daytrans | Departure Time 09:30PM | Arrival Time 11:55PM | Duration 2h25 | Departure days Fri | Cheapest price $4 |
Operator Daytrans | Departure Time 09:45PM | Arrival Time 11:55PM | Duration 2h10 | Departure days Fri | Cheapest price $4 |
Operator Daytrans | Departure Time 10:00PM | Arrival Time 12:25AM | Duration 2h25 | Departure days Fri | Cheapest price $4 |
Operator Daytrans | Departure Time 10:15PM | Arrival Time 12:25AM | Duration 2h10 | Departure days Fri | Cheapest price $4 |
Operator Joglosemar Shuttle Bus | Departure Time 11:20PM | Arrival Time 01:00AM | Duration 1h40 | Departure days Mon, Tue, Wed, Fri, Sat | Cheapest price $3 |
Live departures
Yogyakarta to Surakarta bus times
The table below shows live departures for Yogyakarta to Surakarta buses for tomorrow, Saturday, June 20. You can also manually refresh the results below to see updated bus journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
![]() | 8:00 AM Yogyakarta | 2h55 | 10:55 AM Surakarta | 0 transfersDirect | |
![]() | 1:30 PM Yogyakarta | 2h00 | 3:30 PM Surakarta | 0 transfersDirect | |
This is the last bus of the day. | |||||
Find all the dates and times for this journey
Compare prices and tickets Yogyakarta to Surakarta by train or bus
Compare train and bus prices over the next three weeks. See the best deals at a glance, find the lowest fares, and choose the option that fits your budget.
Jun 20
Jun 21
Jun 22
Jun 23
Jun 24
Jun 25
Jun 26
Why should you book Yogyakarta to Surakarta buses with Omio?
Why book with Omio vs Daytrans?
- Designed for International Travelers: Omio is in your language including 24/7 customer service and offers multiple payment options, including PayPal, credit cards, and bank transfer, in your preferred currency.
- Compare all your options: Omio allows you to compare Daytrans with all available travel options, which are train and bus to ensure you get the best deal for traveling from Yogyakarta to Surakarta.
Why book with Omio over Checkmybus?
- Multiple modes of transport: Omio allows you to compare travel options including train and bus to find the ideal travel option from Yogyakarta to Surakarta.
Journey information
Overview: Bus from Yogyakarta to Surakarta
Buses from Yogyakarta to Surakarta run on average 14 times per day, taking around 2h 25m. Cheap bus tickets for this journey start at $3 (€2) but you can travel from only $1 (€1) by train.
There are 14 buses per day. The earliest bus runs at 04:30, the last at 22:00. The fastest bus covers the 36 miles (58 km) distance in 1h 40m.
Distance 36 miles (58 km) |
Average bus duration 2h 25m |
Cheapest ticket price $3 (€2) |
Buses per day 14 |
Direct buses 14 |
Fastest bus 1h 40m |
First bus 4:30 AM |
Last bus 10:00 PM |
Cheapest Month Aug |
Cheapest Day Fri |
High Season Jul - Sep |
Low Season Jan - Mar |
Bus providers: Daytrans from Yogyakarta to SurakartaYou can travel by bus between Yogyakarta to Surakarta with Daytrans for as low as $1 (€1). When you search for schedules and tickets, Omio will show you the best journey
Daytrans
FAQs: Bus from Yogyakarta to Surakarta
Find answers to the most common questions about traveling from Yogyakarta to Surakarta by bus. From journey times and ticket prices to direct connections, first and last departures, and even whether the route is scenic, our FAQs cover everything you need to plan your trip. Whether you’re looking for the fastest bus, the cheapest option, or tips for making the most of your visit at Surakarta, this guide helps you travel smarter and with confidence.

- Daytrans
- Luggage included in fare
- specific size/type not provided.
- Daytrans
- Excess luggage and bulky luggage allowed for an additional fee
popular bus stations
Popular bus stations from Yogyakarta to Surakarta
- 05:00-21:00
- Free Wi-Fi in main terminal area
- Parking available for motorcycles and cars with hourly rates
- Local food stalls and restaurants available in and around terminal
- Available at designated taxi stands along Malioboro Street
- Ramps available
- Public toilets available with small fee
- Bus: Trans Jogja lines 1A, 1B, 2A, 2B
- Local minibuses (angkot)
- 05:00-21:00
- Street parking available for motorcycles and cars
- Small local food stalls and street vendors near the terminal
- Available at the terminal entrance
- Basic ramps available
- Basic public toilets available
- Bus: Trans Jogja 3A, 3B
- Local minibus: P6, P7
- 05:00-21:00
- Free Wi-Fi in some areas
- Street parking available for motorcycles and cars
- Many street food vendors and local restaurants nearby
- Available along Malioboro Street
- Basic ramps available
- Public toilets available for small fee
- Bus: Trans Jogja 1A, 1B, 2A, 2B
- Becak and Andong (traditional transport)
- 05:00-21:00
- Free Wi-Fi available
- Available in front of terminal
- Local food stalls and small restaurants nearby
- Available at designated taxi stands
- Basic ramps available
- Public toilets available
- Bus: BST Corridor 1, Local buses
- Angkot: Various routes
- 04:00-22:00
- Free Wi-Fi available
- Available for both cars and motorcycles
- Food court and various food stalls available
- Available at designated taxi stand
- Wheelchair ramps, assistance available
- Public toilets available
- Bus: City Bus, Inter-city Bus
- Angkot (public minivan)
Most popular bus connections from Yogyakarta
More options for your journey from Yogyakarta to Surakarta
Here are some other resources that might have the information you need
