The cheapest and fastest buses from Semarang to Surakarta
Cheapest price
$5
Average price
$5
Fastest journey
2 h 1 m
Average duration
2 h 8 m
Buses per day
2
Distance
77 km
The best way to find a cheap bus ticket from Semarang to Surakarta is to book your journey as far in advance as possible and to avoid traveling at rush hour.
The average ticket from Semarang to Surakarta will cost around $5 if you buy it on the day, but the cheapest tickets can be found for only $5.
Of the 2 buses that leave Semarang for Surakarta on Thu, Nov 06, 2 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
On Thu, Nov 06 the direct buses cover the 77 km distance in an average of 2 h 8 m but if you time it right, some buses will get you there in just 2 h 1 m .
On Thu, Nov 06 the slowest buses will take 2 h 15 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.




Travel Information
Compare train and bus for Semarang to Surakarta
Omio recommends booking the train as it is the most popular option from Semarang 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 1h 38m. The ticket price range depends on the travel mode: a bus costs an average of €3, and a train costs an average of €17.
Distance: 47 miles (77 km)
Compare bus with
| Bus | Most popular Train |
|---|---|
€4 Average price Cheapest | €17 Average price |
2h 30m Average total duration 2h 0m Onboard + 30m Additional time* | 2h 8m Average total duration Fastest 1h 38m Onboard + 30m Additional time* |
Direct Options | Direct Options |
Semarang to Surakarta Bus Timetables
| Operator | Departure Time | Arrival Time | Duration | Departure days | Cheapest price |
|---|---|---|---|---|---|
Operator Joglosemar Shuttle Bus | Departure Time 04:45AM | Arrival Time 08:07AM | Duration 3h22 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 04:50AM | Arrival Time 08:05AM | Duration 3h15 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 05:00AM | Arrival Time 08:02AM | Duration 3h02 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 05:15AM | Arrival Time 07:57AM | Duration 2h42 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 05:30AM | Arrival Time 07:51AM | Duration 2h21 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 05:45AM | Arrival Time 09:07AM | Duration 3h22 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 05:50AM | Arrival Time 09:05AM | Duration 3h15 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 06:00AM | Arrival Time 09:02AM | Duration 3h02 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 06:00AM | Arrival Time 08:21AM | Duration 2h21 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 06:15AM | Arrival Time 08:57AM | Duration 2h42 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 06:20AM | Arrival Time 08:08AM | Duration 1h48 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 06:30AM | Arrival Time 08:11AM | Duration 1h41 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 06:45AM | Arrival Time 10:07AM | Duration 3h22 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 06:50AM | Arrival Time 10:05AM | Duration 3h15 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 07:00AM | Arrival Time 09:21AM | Duration 2h21 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 07:00AM | Arrival Time 10:02AM | Duration 3h02 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 07:15AM | Arrival Time 09:57AM | Duration 2h42 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 07:30AM | Arrival Time 09:11AM | Duration 1h41 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 07:45AM | Arrival Time 11:07AM | Duration 3h22 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 07:50AM | Arrival Time 11:05AM | Duration 3h15 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 08:00AM | Arrival Time 10:21AM | Duration 2h21 | Departure days Wed, Fri | Cheapest price $7 |
Operator Joglosemar Shuttle Bus | Departure Time 08:00AM | Arrival Time 11:02AM | Duration 3h02 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 08:15AM | Arrival Time 10:57AM | Duration 2h42 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 08:15AM | Arrival Time 10:16AM | Duration 2h01 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 08:45AM | Arrival Time 10:06AM | Duration 1h21 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 09:00AM | Arrival Time 11:21AM | Duration 2h21 | Departure days Wed, Fri | Cheapest price $7 |
Operator Daytrans | Departure Time 09:15AM | Arrival Time 11:16AM | Duration 2h01 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 09:20AM | Arrival Time 11:08AM | Duration 1h48 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 09:45AM | Arrival Time 11:06AM | Duration 1h21 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 09:45AM | Arrival Time 01:07PM | Duration 3h22 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 09:50AM | Arrival Time 01:05PM | Duration 3h15 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 10:00AM | Arrival Time 12:21PM | Duration 2h21 | Departure days Wed, Fri | Cheapest price $7 |
Operator Joglosemar Shuttle Bus | Departure Time 10:00AM | Arrival Time 01:02PM | Duration 3h02 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 10:15AM | Arrival Time 12:16PM | Duration 2h01 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 10:15AM | Arrival Time 12:57PM | Duration 2h42 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 10:45AM | Arrival Time 12:06PM | Duration 1h21 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 10:45AM | Arrival Time 02:07PM | Duration 3h22 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 10:50AM | Arrival Time 02:05PM | Duration 3h15 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 11:00AM | Arrival Time 01:21PM | Duration 2h21 | Departure days Wed, Fri | Cheapest price $7 |
Operator Joglosemar Shuttle Bus | Departure Time 11:00AM | Arrival Time 02:02PM | Duration 3h02 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 11:15AM | Arrival Time 01:16PM | Duration 2h01 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 11:15AM | Arrival Time 01:57PM | Duration 2h42 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 11:45AM | Arrival Time 01:06PM | Duration 1h21 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 12:00PM | Arrival Time 02:21PM | Duration 2h21 | Departure days Wed, Fri | Cheapest price $7 |
Operator Daytrans | Departure Time 12:15PM | Arrival Time 02:16PM | Duration 2h01 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 12:20PM | Arrival Time 02:08PM | Duration 1h48 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 12:45PM | Arrival Time 02:06PM | Duration 1h21 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 01:00PM | Arrival Time 03:21PM | Duration 2h21 | Departure days Wed, Fri | Cheapest price $7 |
Operator Daytrans | Departure Time 01:15PM | Arrival Time 03:16PM | Duration 2h01 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 01:45PM | Arrival Time 03:06PM | Duration 1h21 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 01:45PM | Arrival Time 05:07PM | Duration 3h22 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 01:50PM | Arrival Time 05:05PM | Duration 3h15 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 02:00PM | Arrival Time 04:21PM | Duration 2h21 | Departure days Wed, Fri | Cheapest price $7 |
Operator Joglosemar Shuttle Bus | Departure Time 02:00PM | Arrival Time 05:02PM | Duration 3h02 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 02:15PM | Arrival Time 04:57PM | Duration 2h42 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 02:15PM | Arrival Time 04:16PM | Duration 2h01 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 02:30PM | Arrival Time 04:51PM | Duration 2h21 | Departure days Wed, Fri | Cheapest price $7 |
Operator Daytrans | Departure Time 02:45PM | Arrival Time 04:46PM | Duration 2h01 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 02:45PM | Arrival Time 06:07PM | Duration 3h22 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 02:50PM | Arrival Time 06:05PM | Duration 3h15 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 03:00PM | Arrival Time 06:02PM | Duration 3h02 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 03:00PM | Arrival Time 05:21PM | Duration 2h21 | Departure days Wed, Fri | Cheapest price $7 |
Operator Joglosemar Shuttle Bus | Departure Time 03:15PM | Arrival Time 05:57PM | Duration 2h42 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 03:15PM | Arrival Time 05:16PM | Duration 2h01 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 03:20PM | Arrival Time 05:08PM | Duration 1h48 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 03:45PM | Arrival Time 07:07PM | Duration 3h22 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 03:45PM | Arrival Time 05:06PM | Duration 1h21 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 03:50PM | Arrival Time 07:05PM | Duration 3h15 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 04:00PM | Arrival Time 06:21PM | Duration 2h21 | Departure days Wed, Fri | Cheapest price $7 |
Operator Joglosemar Shuttle Bus | Departure Time 04:00PM | Arrival Time 07:02PM | Duration 3h02 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 04:15PM | Arrival Time 06:16PM | Duration 2h01 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 04:15PM | Arrival Time 06:57PM | Duration 2h42 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 04:45PM | Arrival Time 06:06PM | Duration 1h21 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 04:45PM | Arrival Time 08:07PM | Duration 3h22 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 04:50PM | Arrival Time 08:05PM | Duration 3h15 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 05:00PM | Arrival Time 07:21PM | Duration 2h21 | Departure days Wed, Fri | Cheapest price $7 |
Operator Joglosemar Shuttle Bus | Departure Time 05:00PM | Arrival Time 08:02PM | Duration 3h02 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 05:15PM | Arrival Time 07:16PM | Duration 2h01 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 05:15PM | Arrival Time 07:57PM | Duration 2h42 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 05:45PM | Arrival Time 07:06PM | Duration 1h21 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 06:00PM | Arrival Time 08:21PM | Duration 2h21 | Departure days Wed, Fri | Cheapest price $7 |
Operator Daytrans | Departure Time 06:15PM | Arrival Time 08:16PM | Duration 2h01 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 06:20PM | Arrival Time 08:08PM | Duration 1h48 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 06:45PM | Arrival Time 10:07PM | Duration 3h22 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 06:45PM | Arrival Time 08:06PM | Duration 1h21 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 06:50PM | Arrival Time 10:05PM | Duration 3h15 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 07:00PM | Arrival Time 09:21PM | Duration 2h21 | Departure days Wed, Fri | Cheapest price $7 |
Operator Joglosemar Shuttle Bus | Departure Time 07:00PM | Arrival Time 10:02PM | Duration 3h02 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 07:15PM | Arrival Time 09:16PM | Duration 2h01 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 07:15PM | Arrival Time 09:57PM | Duration 2h42 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 07:45PM | Arrival Time 09:06PM | Duration 1h21 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 07:45PM | Arrival Time 11:07PM | Duration 3h22 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 07:50PM | Arrival Time 11:05PM | Duration 3h15 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 08:00PM | Arrival Time 10:21PM | Duration 2h21 | Departure days Wed, Fri | Cheapest price $7 |
Operator Harapan Jaya | Departure Time 08:00PM | Arrival Time 09:30PM | Duration 1h30 | Departure days Wed, Fri | Cheapest price $14 |
Operator Joglosemar Shuttle Bus | Departure Time 08:00PM | Arrival Time 11:02PM | Duration 3h02 | Departure days Wed, Fri | Cheapest price $5 |
Operator Joglosemar Shuttle Bus | Departure Time 08:15PM | Arrival Time 10:57PM | Duration 2h42 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 08:15PM | Arrival Time 10:16PM | Duration 2h01 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 08:45PM | Arrival Time 10:06PM | Duration 1h21 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 09:00PM | Arrival Time 11:21PM | Duration 2h21 | Departure days Wed, Fri | Cheapest price $5 |
Operator Daytrans | Departure Time 09:30PM | Arrival Time 11:11PM | Duration 1h41 | Departure days Wed, Fri | Cheapest price $5 |
Operator Harapan Jaya | Departure Time 10:00PM | Arrival Time 11:30PM | Duration 1h30 | Departure days Wed, Fri | Cheapest price $12 |
Operator Harapan Jaya | Departure Time 11:30PM | Arrival Time 01:00AM | Duration 1h30 | Departure days Wed, Fri | Cheapest price $17 |
Live departures
Semarang to Surakarta bus times
The table below shows live departures for Semarang to Surakarta buses for today, Wednesday, November 5. You can also manually refresh the results below to see updated bus journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
JOGLOSEMAR SHUTTLE BUS | 1:15 PM Semarang, Banyumanik | 2h42 | 3:57 PM Surakarta, Banjarsari | 0 transfersDirect | |
DAYTRANS | 1:15 PM Semarang Barat | 2h01 | 3:16 PM Surakarta, Jl. Brigjen Slamet Riyadi (Solo Square) | 0 transfersDirect | |
DAYTRANS | 1:45 PM Semarang, Banyumanik | 1h21 | 3:06 PM Surakarta, Jl. Brigjen Slamet Riyadi (Solo Square) | 0 transfersDirect | |
DAYTRANS | 2:00 PM Semarang Barat | 2h21 | 4:21 PM Surakarta, Jl. Brigjen Slamet Riyadi (Solo Square) | 0 transfersDirect | |
DAYTRANS | 2:30 PM Semarang, Banyumanik | 1h41 | 4:11 PM Surakarta, Jl. Brigjen Slamet Riyadi (Solo Square) | 0 transfersDirect | |
HARAPAN JAYA | 3:00 PM Semarang, Candisari (SPBU Dokter Wahidin) | 1h30 | 4:30 PM Surakarta, Terminal Tirtonadi | 0 transfersDirect | |
HARAPAN JAYA | 4:30 PM Semarang, Candisari (SPBU Dokter Wahidin) | 1h30 | 6:00 PM Surakarta, Terminal Tirtonadi | 0 transfersDirect | |
| Thursday, November 6 | |||||
![]() | 8:00 AM Semarang | 2h15 | 10:15 AM Surakarta | 0 transfersDirect | |
![]() | 11:15 AM Semarang | 2h01 | 1:16 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 Semarang 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.
Nov 06
Nov 07
Nov 08
Nov 09
Nov 10
Nov 11
Nov 12
Journey information
Overview: Bus from Semarang to Surakarta
Distance 47 miles (77 km) |
Average bus duration 2h 0m |
Cheapest ticket price $4 (€3) |
Buses per day 37 |
Direct buses 37 |
Fastest bus 1h 21m |
First bus 04:45 |
Last bus 21:45 |
FAQs: Bus from Semarang to Surakarta

To find the cheapest bus tickets for your trip from Semarang to Surakarta, follow these tips:
Start your search now and compare ticket prices to find the best deal!
popular bus stations
Popular bus stations from Semarang to Surakarta
- 24 hours
- Free Wi-Fi available throughout the station.
- Parking available on-site for a fee.
- Food stalls and small cafes are available inside the station.
- Taxis available at the station entrance.
- Accessible facilities including ramps and elevators.
- Public toilets are available for a small fee.
- Bus: 1, 2, 3, 4
- Train: Kereta Api Indonesia
- Available on the main road
- Bus: Trans Semarang Corridor I, Local buses
- 06:00-22:00
- Available at the gas station parking area
- Small food stalls and warung nearby
- Available at the gas station area
- Basic ramps
- Available at the gas station
- Bus: Trans Semarang Corridor I, Local buses
- 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: Trans Semarang Corridor I, II
- Angkot: B.01, B.02
- 24 hours
- Free Wi-Fi
- Parking available on-site.
- Food stalls and small cafes are available nearby.
- Available outside the station.
- Elevators and ramps available for accessibility.
- Available with a small fee for use.
- Bus: 10, 12, 15
- 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
- Ramps available
- Public toilets available
- Bus: Trans Semarang Corridor I, Local buses
- 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)
- 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
Most popular bus connections from Semarang
More options for your journey from Semarang to Surakarta
Here are some other resources that might have the information you need


