How to Go from Yogyakarta to Semarang by (bus, private car, train)

Yogyakarta to Semarang

Hi travelers, welcome to my blog. In this article, i would like to give you a guidance about how to go from Yogyakarta to Semarang City. For your information guys, Semarang is the capital city of Central Java Province. It is considered as a business city, the 5th largest city in Indonesia.

It is a common for travelers to go from Yogyakarta to Semarang, because from Semarang they can continue their journey to the next popular destinations, Karimun Jawa and Tanjung Puting National Park either by flight or ferry.

So, in this article I will let you know all detail informations “How to go from Yogyakarta to Semarang City”. I will explain all the transport possibilities from the cheapest one till the fastest one also the route option connecting both cities for around 120 KM.

The Route Option to Go from Yogyakarta to Semarang City.

There are 4 routes options to go from Yogyakarta to Semarang City :

  1. Via Main Route. It is a regular highway connecting Yogyakarta and Semarang. Most of public transportations will pass this way. The route will be Yogyakarta – Muntilan – Magelang – Temanggung – Ambarawa – Bawen – Semarang. Via this route, you will take around 4 to 5 hours to reach Semarang from Yogyakarta City depends on the traffic.
  2. Via Ketep Pass as Alternative Route. For me, this is the best option to take. Via Ketep Pass you will see a beautiful scenery along the way from Yogyakarta to Semarang. You will see a beautiful twin mountain, those are Merapi Volcano and Merbabu. The route will be Yogyakarta – Muntilan – Ketep Pass – Salatiga – Bawen – Semarang. But, there is no public transport will go via this way. Only if you book a private car service or a taxi, then you can choose this option. If you get a good driver, you may ask the driver to stop in Kedung Kayang Waterfall, you will see an amazing waterfall with Merapi Volcano as a background. Also, you have to stop in Ketep Pass itself, it is the best spot to see the twin mountain. And via this route, it will be less traffic compared if you go via main route.
  3. Via Toll Route. This is the fastest option to go from Yogyakarta to Semarang. You will pass a part of Trans Java Toll Road. It is a toll road connecting the westernmost of Java Island till the easternmost of Java Island with total distance around 1100 KM. Just FYI, This toll road is also a part of Asian Highway 2 (AH2) that connecting Nusa Dua Bali to Khosravi, Iran. The route will be : Yogyakarta – Kartosuro – Salatiga – Bawen – Semarang. It will take around 2,5 hours only. Also if you want to choose this option, you have to book a taxi or a private car service. Toll road will be your best option if you will catch a flight in Semarang Airport without stay overnight in the city. Normally you need to give an additional charge IDR 70.000 / car ( 5$ ) if you want to pass this route.
  4. By Train. There is 2 trains schedule connecting Yogyakarta and Semarang City. But one of them will not even faster than the bus or taxi service. Those trains are not direct train, those are trains connecting cities in Central Java and Yogyakarta Province, so it will stop in many stations. In my opinion, going by train is not the effective way to go to Semarang City. But if you would like to, you can check the schedule via KAI Access Application.
Kesung Kayang Waterfall on the way from Yogyakarta to Semarang
Kedung Kayang Waterfall via Ketep Pass. Picture by IG:@yeo_inheart via @kedungkayangwaterfall

Read also : How to Go from Yogyakarta International Airport to city centre

Read also : How to Go from Yogyakarta International Airport to Borobudur

Read also : How to Go from Civitavecchia Port to Rome and Vatican

Transportation Options from Yogyakarta to Semarang City.

There are several transportation options from Yogyakarta to Semarang City. I will let you know any possibilities. Hopefully you can choose which one is the best for you.

  1. Bus ( Economy and Executive Bus )
  2. Shuttle Service ( Joglosemar and Day Trans )
  3. Taxi ( Reguler or Online Taxi )
  4. Private Car Service operated by
  5. Train 

Bus from Yogyakarta to Semarang

Going to Semarang by bus is the cheapest option. There are 2 kind of bus that can take you from Yogyakarta to Semarang, economy and executive bus. You can catch both buses in Jombor Bus Terminal. It is aways available every 30 minutes. The economy bus will cost you around 30.000, but it doesn’t go directly, you will need to stop first in Magelang Bus Terminal and change the bus to continue your journey to Semarang. And it will have no air conditioner for around 5 hours journey.

Bus from Yogyakarta to Semarang
Economy bus to Magelang first

If you choose the executive one, it will be faster and will go directly to Semarang. It will cost you around IDR 70.000. When you choose the bus as your choice, I suggest you not to stop in the final destination / Semarang main terminal (Terboyo). It’s too far away to reach Semarang City Centre. It’s better for you to stop in ADA Setiabudi Supermarket. It is the last point before the bus enter the fast route to reach Semarang Main Terminal. From ADA Supermarket you can continue with online taxi to reach your accommodation in Semarang.

Bus from Yogyakarta to Semarang
Direct Bus to Semarang

Shuttle Service to go from Yogyakarta to Semarang City (Joglosemar and Daytrans)

Shuttle will be another public transport option. I can recommend you 2 popular shuttle service that connecting Yogyakarta and Semarang City. Those are Joglosemar and Day Trans. Both shuttle services will cost you around IDR 80.000. For me, I do prefer Joglosemar than Day Trans, it has more departure time, more easy to book either via website and application. But the choice is up to you guys, maybe you can check which one has closest departure point from your accommodation. You can check it in this maps : Joglosemar, Daytrans

Daytrans from Yogyakarta

Both shuttle have a final destination in the city centre in Semarang. It will be a good idea if you can ask the staff before yo go, which one has the closest drop off point to your accommodation in Semarang.

By Taxi ( Regular Taxi or Online Taxi )

You can order taxi both online and regular taxi to take you from Yogyakarta to Semarang City. In my opinion, online taxi has more fair price. If you want a regular taxi, you need to be expert in bargaining the price, there is no exact price if you will order a regular taxi, but the range will be around IDR 500.000 up to IDR 800.000. Taxi will be much more expensive, compared by buses or shuttle service, but if you will go in a group more than 2 people or you have some luggage to bring, taxi will be worth it. It will give you a direct transport from your accommodation in Yogyakarta till your final destination in Semarang. You will not need to change to several transports unlike if you choose public transports.

Book Your Private Car Service from Yogyakarta To Semarang

So, I can recommend you a private transport service to take you from Yogyakarta to Semarang. You can book it in advance without advance payment needed. This transport service is operated by This tour service is in affiliation with my blog. You may please to check the detail in this link. They will give you an exact price of IDR 600.000 (+- 40$ ) up to 5 person.

It can be more expensive compared with taxi, but most of our team are able to speak in english well and having experiences to work in travel industry in Yogyakarta. So on your way to Semarang, the driver also can give you an explanation about Indonesia or Javanese culture. The drivers are flexible. In case you would like to pass the alternative route and stop in Ketep Pass or Kedung Kayang Waterfall for taking picture, having a cup of coffee or lunch you just need to tell the driver, they will glad to let you enjoying the stop.

If you need other tour packages in Yogyakarta City, it is also a good idea to contact We are working hard to maintain our quality service. It can be proven  by our high rating of review in Airbnb and Trip Advisor. If you need our services, you can also contact us by whatsapp on +62 811 2650 111.

By Joglosemarkerto Train

The last option to go to Semarang is by train. Until I write this article, there are only 2 schedules. The first will go at 7.02 and arrive at 14.31 (7 hours 29 minutes). The second one will depart at 16.16 and arrive at 20.13 (3 hours 33 minutes). Maybe, the second one will be better for you. If train will be your option, You can go first to Yogyakarta Tugu Station (YK) to buy the ticket on the spot or you can book it via KAI Access Application. If your accommodation in Semarang City is in Old Town, I suggest you to stop in Semarang Tawang Station. You can even reach your accommodation in Old Town by walking.

Okay guys, that’s all I can write about transport options from Yogyakarta to Semarang City, now the decision is yours. Hopefully you will have a pleasant journey in Indonesia!

Thanks for reading my article till the last part..


Please enter your comment!
Please enter your name here