The cheapest and fastest coaches from Semarang to Boyolali
Cheapest price
4Rp
Average price
5Rp
Fastest journey
25 m
Average duration
25 m
Buses per day
94
Distance
63 km
The best way to find a cheap coach ticket from Semarang to Boyolali is to book your journey as far in advance as possible and to avoid travelling at rush hour.
The average ticket from Semarang to Boyolali will cost around 5Rp if you buy it on the day, but you can find cheap coach tickets today for only 4Rp.
Of the 94 buses that leave Semarang for Boyolali every day 94 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
These direct buses cover the 63 km distance in an average of 25 m but if you time it right, some buses will get you there in just 25 m .
The slowest buses will take 25 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.
JOGLOSEMAR SHUTTLE BUS5:30 PM1h45Semarang, Banyumanik7:15 PMKota Boyolali4 Rp1One-way0 changes
JOGLOSEMAR SHUTTLE BUS5:15 PM2h00Semarang, Candisari (SPBU Akpol)7:15 PMKota Boyolali4 Rp1One-way0 changes
05:30 PM1h45Semarang7:15 PMBoyolali5 Rp1One-way0 changes
PUTRA REMAJA SHUTTLE7:20 AM1h40Semarang, Jatingaleh9:00 AMKota Boyolali5 Rp1One-way0 changes
DAYTRANS2:00 PM1h00Kota Semarang3:00 PMKota Boyolali5 Rp1One-way0 changes
DAYTRANS12:05 PM0h25Semarang, Banyumanik (Srondol Toll Plaza)12:30 PMKota Boyolali5 Rp1One-way0 changes
DAYTRANS3:05 PM0h25Semarang, Banyumanik (Srondol Toll Plaza)3:30 PMKota Boyolali5 Rp1One-way0 changes
DAYTRANS4:05 PM0h25Semarang, Banyumanik (Srondol Toll Plaza)4:30 PMKota Boyolali5 Rp1One-way0 changes
DAYTRANS2:05 PM0h25Semarang, Banyumanik (Srondol Toll Plaza)2:30 PMKota Boyolali5 Rp1One-way0 changes
DAYTRANS9:05 AM0h25Semarang, Banyumanik (Srondol Toll Plaza)9:30 AMKota Boyolali5 Rp1One-way0 changes
Live departures
Semarang to Boyolali bus times
The table below shows live departures for Semarang to Boyolali coaches for tomorrow, Friday, 14 August. You can also manually refresh the results below to see updated coach journeys.
| Provider | Departs | Duration | Arrives | Changes | Tickets |
|---|---|---|---|---|---|
DAYTRANS | 3:00 AM Kota Semarang | 1h00 | 4:00 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 3:05 AM Semarang, Train Station Kereta Api Tawang | 0h55 | 4:00 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 3:30 AM Semarang, Banyumanik (Srondol Toll Plaza) | 0h30 | 4:00 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 4:00 AM Kota Semarang | 1h00 | 5:00 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 4:05 AM Semarang, Train Station Kereta Api Tawang | 0h55 | 5:00 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 4:30 AM Semarang, Banyumanik (Srondol Toll Plaza) | 0h30 | 5:00 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 4:30 AM Kota Semarang | 1h00 | 5:30 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 4:35 AM Semarang, Train Station Kereta Api Tawang | 0h55 | 5:30 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 5:00 AM Kota Semarang | 1h00 | 6:00 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 5:00 AM Semarang, Banyumanik (Srondol Toll Plaza) | 0h30 | 5:30 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 5:30 AM Semarang, Gayamsari | 1h00 | 6:30 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 5:30 AM Semarang, Banyumanik (Srondol Toll Plaza) | 0h30 | 6:00 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 6:05 AM Semarang, Banyumanik (Srondol Toll Plaza) | 0h25 | 6:30 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 6:30 AM Semarang, Gayamsari | 1h00 | 7:30 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 7:00 AM Kota Semarang | 1h00 | 8:00 AM Kota Boyolali | 0 changesdirect | |
PUTRA REMAJA SHUTTLE | 7:00 AM Kota Semarang | 2h00 | 9:00 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 7:05 AM Semarang, Banyumanik (Srondol Toll Plaza) | 0h25 | 7:30 AM Kota Boyolali | 0 changesdirect | |
PUTRA REMAJA SHUTTLE | 7:05 AM Kalibanteng kulon, Semarang Barat | 1h55 | 9:00 AM Kota Boyolali | 0 changesdirect | |
PUTRA REMAJA SHUTTLE | 7:15 AM Kota Semarang | 1h45 | 9:00 AM Kota Boyolali | 0 changesdirect | |
PUTRA REMAJA SHUTTLE | 7:20 AM Semarang, Jatingaleh | 1h40 | 9:00 AM Kota Boyolali | 0 changesdirect | |
PUTRA REMAJA SHUTTLE | 7:25 AM Kota Semarang | 1h35 | 9:00 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 7:30 AM Semarang, Banyumanik (Srondol Toll Plaza) | 0h30 | 8:00 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 8:00 AM Kota Semarang | 1h00 | 9:00 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 8:30 AM Semarang, Gayamsari | 1h00 | 9:30 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 8:30 AM Semarang, Banyumanik (Srondol Toll Plaza) | 0h30 | 9:00 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 9:00 AM Kota Semarang | 1h00 | 10:00 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 9:05 AM Semarang, Banyumanik (Srondol Toll Plaza) | 0h25 | 9:30 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 9:30 AM Semarang, Gayamsari | 1h00 | 10:30 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 9:30 AM Semarang, Banyumanik (Srondol Toll Plaza) | 0h30 | 10:00 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 9:30 AM Kota Semarang | 1h00 | 10:30 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 10:00 AM Kota Semarang | 1h00 | 11:00 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 10:00 AM Semarang, Banyumanik (Srondol Toll Plaza) | 0h30 | 10:30 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 10:05 AM Semarang, Banyumanik (Srondol Toll Plaza) | 0h25 | 10:30 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 10:30 AM Semarang, Gayamsari | 1h00 | 11:30 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 10:30 AM Semarang, Banyumanik (Srondol Toll Plaza) | 0h30 | 11:00 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 11:00 AM Kota Semarang | 1h00 | 12:00 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 11:05 AM Semarang, Banyumanik (Srondol Toll Plaza) | 0h25 | 11:30 AM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 11:30 AM Semarang, Gayamsari | 1h00 | 12:30 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 11:30 AM Semarang, Banyumanik (Srondol Toll Plaza) | 0h30 | 12:00 PM Kota Boyolali | 0 changesdirect | |
PUTRA REMAJA SHUTTLE | 12:00 PM Kota Semarang | 2h00 | 2:00 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 12:00 PM Kota Semarang | 1h00 | 1:00 PM Kota Boyolali | 0 changesdirect | |
PUTRA REMAJA SHUTTLE | 12:05 PM Kalibanteng kulon, Semarang Barat | 1h55 | 2:00 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 12:05 PM Semarang, Banyumanik (Srondol Toll Plaza) | 0h25 | 12:30 PM Kota Boyolali | 0 changesdirect | |
PUTRA REMAJA SHUTTLE | 12:15 PM Kota Semarang | 1h45 | 2:00 PM Kota Boyolali | 0 changesdirect | |
PUTRA REMAJA SHUTTLE | 12:20 PM Semarang, Jatingaleh | 1h40 | 2:00 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 12:30 PM Semarang, Banyumanik (Srondol Toll Plaza) | 0h30 | 1:00 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 1:00 PM Kota Semarang | 1h00 | 2:00 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 1:30 PM Semarang, Gayamsari | 1h00 | 2:30 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 1:30 PM Semarang, Banyumanik (Srondol Toll Plaza) | 0h30 | 2:00 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 2:00 PM Kota Semarang | 1h00 | 3:00 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 2:05 PM Semarang, Banyumanik (Srondol Toll Plaza) | 0h25 | 2:30 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 2:30 PM Semarang, Gayamsari | 1h00 | 3:30 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 2:30 PM Kota Semarang | 1h00 | 3:30 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 2:30 PM Semarang, Banyumanik (Srondol Toll Plaza) | 0h30 | 3:00 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 3:00 PM Semarang, Banyumanik (Srondol Toll Plaza) | 0h30 | 3:30 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 3:00 PM Kota Semarang | 1h00 | 4:00 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 3:05 PM Semarang, Banyumanik (Srondol Toll Plaza) | 0h25 | 3:30 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 3:30 PM Semarang, Banyumanik (Srondol Toll Plaza) | 0h30 | 4:00 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 3:30 PM Semarang, Gayamsari | 1h00 | 4:30 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 4:05 PM Semarang, Banyumanik (Srondol Toll Plaza) | 0h25 | 4:30 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 4:30 PM Semarang, Gayamsari | 1h00 | 5:30 PM Kota Boyolali | 0 changesdirect | |
PUTRA REMAJA SHUTTLE | 5:00 PM Kota Semarang | 2h00 | 7:00 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 5:05 PM Semarang, Banyumanik (Srondol Toll Plaza) | 0h25 | 5:30 PM Kota Boyolali | 0 changesdirect | |
PUTRA REMAJA SHUTTLE | 5:05 PM Kalibanteng kulon, Semarang Barat | 1h55 | 7:00 PM Kota Boyolali | 0 changesdirect | |
PUTRA REMAJA SHUTTLE | 5:15 PM Kota Semarang | 1h45 | 7:00 PM Kota Boyolali | 0 changesdirect | |
JOGLOSEMAR SHUTTLE BUS | 5:15 PM Semarang, Candisari (SPBU Akpol) | 2h00 | 7:15 PM Kota Boyolali | 0 changesdirect | |
PUTRA REMAJA SHUTTLE | 5:20 PM Semarang, Jatingaleh | 1h40 | 7:00 PM Kota Boyolali | 0 changesdirect | |
JOGLOSEMAR SHUTTLE BUS | 5:30 PM Semarang, Banyumanik | 1h45 | 7:15 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 5:30 PM Kota Semarang | 1h00 | 6:30 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 6:00 PM Semarang, Banyumanik (Srondol Toll Plaza) | 0h30 | 6:30 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 6:00 PM Kota Semarang | 1h00 | 7:00 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 6:30 PM Semarang, Gayamsari | 1h00 | 7:30 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 6:30 PM Semarang, Banyumanik (Srondol Toll Plaza) | 0h30 | 7:00 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 7:00 PM Kota Semarang | 1h00 | 8:00 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 7:05 PM Semarang, Banyumanik (Srondol Toll Plaza) | 0h25 | 7:30 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 7:30 PM Semarang, Gayamsari | 1h00 | 8:30 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 7:30 PM Semarang, Banyumanik (Srondol Toll Plaza) | 0h30 | 8:00 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 7:30 PM Kota Semarang | 1h00 | 8:30 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 8:00 PM Semarang, Banyumanik (Srondol Toll Plaza) | 0h30 | 8:30 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 8:00 PM Kota Semarang | 1h00 | 9:00 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 8:05 PM Semarang, Banyumanik (Srondol Toll Plaza) | 0h25 | 8:30 PM Kota Boyolali | 0 changesdirect | |
HARAPAN JAYA | 8:30 PM Semarang, Candisari (SPBU Dokter Wahidin) | 1h00 | 9:30 PM Bus Terminal Boyolali | 0 changesdirect | |
DAYTRANS | 8:30 PM Semarang, Gayamsari | 1h00 | 9:30 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 8:30 PM Semarang, Banyumanik (Srondol Toll Plaza) | 0h30 | 9:00 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 9:05 PM Semarang, Banyumanik (Srondol Toll Plaza) | 0h25 | 9:30 PM Kota Boyolali | 0 changesdirect | |
DAYTRANS | 9:30 PM Semarang, Gayamsari | 1h00 | 10:30 PM Kota Boyolali | 0 changesdirect | |
PUTRA REMAJA SHUTTLE | 10:00 PM Kota Semarang | 2h00 | 12:00 AM Kota Boyolali | 0 changesdirect | |
HARAPAN JAYA | 10:00 PM Semarang, Candisari (SPBU Dokter Wahidin) | 1h00 | 11:00 PM Bus Terminal Boyolali | 0 changesdirect | |
DAYTRANS | 10:05 PM Semarang, Banyumanik (Srondol Toll Plaza) | 0h25 | 10:30 PM Kota Boyolali | 0 changesdirect | |
PUTRA REMAJA SHUTTLE | 10:05 PM Kalibanteng kulon, Semarang Barat | 1h55 | 12:00 AM Kota Boyolali | 0 changesdirect | |
PUTRA REMAJA SHUTTLE | 10:15 PM Kota Semarang | 1h45 | 12:00 AM Kota Boyolali | 0 changesdirect | |
PUTRA REMAJA SHUTTLE | 10:20 PM Semarang, Jatingaleh | 1h40 | 12:00 AM Kota Boyolali | 0 changesdirect | |
PUTRA REMAJA SHUTTLE | 10:25 PM Kota Semarang | 1h35 | 12:00 AM Kota Boyolali | 0 changesdirect | |
0 | 5:30 PM Semarang | 1h45 | 7:15 PM Boyolali | 0 changesdirect | |
This is the last bus of the day. | |||||
Find all the dates and times for this journey
Compare prices and tickets Semarang to Boyolali by coach
Compare coach 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.
14 Aug
15 Aug
16 Aug
17 Aug
18 Aug
19 Aug
20 Aug
Why should you book Semarang to Boyolali coaches with Omio?
Why book with Omio vs Joglosemar Shuttle Bus?
- 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.
Why book with Omio over Checkmybus, Busbud or Rome2rio?
- Official reseller: Joglosemar Shuttle Bus tickets can only be bought on Omio or Joglosemar Shuttle Bus's website as Omio is the only official third party seller for Joglosemar Shuttle Bus tickets. Checkmybus, Busbud or Rome2rio do not sell Joglosemar Shuttle Bus tickets as they are not official sellers.
Journey information
Overview: Bus from Semarang to Boyolali
Buses from Semarang to Boyolali run on average 58 times per day, taking around 1h 41m. Cheap bus tickets for this journey start at 4Rp if you book in advance.
There are 58 coaches per day. The earliest coach runs at 00:45, the last at 23:45. The fastest coach covers the 63 km distance in 25m.
Distance 63 km |
Average bus duration 1h 41m |
Cheapest ticket price 4Rp |
Buses per day 58 |
Direct buses 58 |
Fastest bus 25m |
First bus 12:45 AM |
Last bus 11:45 PM |
Cheapest Month May |
Cheapest Day Wed |
High Season Apr - Jun |
Low Season Jul - Sept |
Bus providers: Joglosemar Shuttle Bus from Semarang to BoyolaliYou can travel by bus between Semarang to Boyolali with Joglosemar Shuttle Bus for as low as 4Rp. When you search for schedules and tickets, Omio will show you the best journey
Joglosemar Shuttle Bus
FAQs: Semarang to Boyolali coach
Find answers to the most common questions about traveling from Semarang to Boyolali by coach. 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 coach, the cheapest option, or tips for making the most of your visit at Boyolali, this guide helps you travel smarter and with confidence.

popular bus stations
Important Stations and Airports in Semarang and Boyolali
Most Semarang to Boyolali buses use the Semarang, Banyumanik to Kota Boyolali station pair, with some services arriving at Terminal Boyolali. Use this guide to compare Semarang and Boyolali bus stations on this route, check city-centre transport, alongside checking practicalities like bus station facilities and services.
Which Semarang station do buses to Boyolali leave from?
Getting to Semarang, Banyumanik from Semarang city centre
Semarang, Banyumanik is 8 km from Semarang city centre. Public transport options include:
Semarang, Banyumanik bus station facilities and services
Semarang, Banyumanik has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC and Ticket Office.
Food and drink
Food options include: Food stalls and small cafes are available nearby.
Wi-Fi and ATMs
Free Wi-Fi. ATMs are located inside the station.
Tickets and information
Ticket office support is available at Semarang, Banyumanik.
Parking, taxis and toilets
Available at Semarang, Banyumanik: Parking, Taxis, WC.
Accessibility
Accessibility facilities are available at Semarang, Banyumanik: Elevators and ramps available for accessibility.
Getting to Semarang Barat from Semarang city centre
Semarang Barat is 4 km from Semarang city centre. Public transport options include:
Semarang Barat bus station facilities and services
Semarang Barat has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC, Shower and Ticket Office.
Food and drink
Food options include: A small food stall is available.
Wi-Fi and ATMs
Free Wi-Fi available. ATMs are aTM available near entrance.
Tickets and information
Ticket office support is available at Semarang Barat.
Parking, taxis and toilets
Available at Semarang Barat: Parking, Taxis, WC.
Accessibility
Accessibility facilities are available at Semarang Barat: Ramp access for wheelchairs is present.
Getting to Semarang, Gayamsari from Semarang city centre
Semarang, Gayamsari is 3 km from Semarang city centre. Public transport options include:
Semarang, Gayamsari bus station facilities and services
Semarang, Gayamsari has practical services for this route, including Wifi, Parking, ATM, Taxis, Accessibility, WC, Shower and Ticket Office.
Wi-Fi and ATMs
Wi-Fi is available at Semarang, Gayamsari. ATMs are available at Semarang, Gayamsari.
Tickets and information
Ticket office support is available at Semarang, Gayamsari.
Parking, taxis and toilets
Available at Semarang, Gayamsari: Parking, Taxis, WC.
Accessibility
Accessibility facilities are available at Semarang, Gayamsari: Basic accessibility facilities are provided.
Which Boyolali station do buses from Semarang arrive at?
Getting to Kota Boyolali from Boyolali city centre
Kota Boyolali is 1 km from Boyolali city centre. Public transport options include:
Kota Boyolali bus station facilities and services
Kota Boyolali has practical services for this route, including Parking, Dining, ATM, Taxis, Accessibility, WC and Ticket Office.
Food and drink
Food options include: Local food stalls and small restaurants inside terminal
Wi-Fi and ATMs
ATMs are several ATMs from different banks.
Tickets and information
Ticket office support is available at Kota Boyolali.
Parking, taxis and toilets
Available at Kota Boyolali: Parking, Taxis, WC.
Accessibility
Accessibility facilities are available at Kota Boyolali: Basic ramps available.
Getting to Terminal Boyolali from Boyolali city centre
Terminal Boyolali is 1 km from Boyolali city centre. Public transport options include:
Terminal Boyolali bus station facilities and services
Terminal Boyolali has practical services for this route, including Parking, Dining, ATM, Taxis, Accessibility, WC and Ticket Office.
Food and drink
Food options include: Local food stalls and small restaurants
Wi-Fi and ATMs
ATMs are aTM available near entrance.
Tickets and information
Ticket office support is available at Terminal Boyolali.
Parking, taxis and toilets
Available at Terminal Boyolali: Parking, Taxis, WC.
Accessibility
Accessibility facilities are available at Terminal Boyolali: Basic ramps.
Getting to Agen Boyolali from Boyolali city centre
Agen Boyolali is 1 km from Boyolali city centre. Public transport options include:
Agen Boyolali bus station facilities and services
Agen Boyolali has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC and Ticket Office.
Food and drink
Food options include: Local food stalls and small cafes are available nearby.
Wi-Fi and ATMs
Free Wi-Fi. ATMs are located inside the station.
Tickets and information
Ticket office support is available at Agen Boyolali.
Parking, taxis and toilets
Available at Agen Boyolali: Parking, Taxis, WC.
Accessibility
Accessibility facilities are available at Agen Boyolali: Elevators, ramps.
More options for your journey from Semarang to Boyolali
Here are some other resources that might have the information you need

