The average train between Jakarta and Semarang takes 5h and the fastest train takes 4h 49m. The train service runs several times per day from Jakarta to Semarang. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Trains run every 4 hours between Jakarta and Semarang. The earliest departure is at 7:15 AM in the morning, and the last departure from Jakarta is at 10:40 PM which arrives into Semarang at 3:45 AM. All services run direct with no transfers required, and take on average 5h. The schedules shown below are for the next available departures.
Arrives next day
Arrives next day
Arrives next day
Want to know about travelling from Jakarta to Semarang? We have put together a list of the most frequently asked questions from our users such as: What is the cheapest mode of transport? What is the quickest option? How much do tickets usually cost? and many more.
Yes, there is a direct train departing from Jakarta station and arriving at Semarang station. Services depart every 4 hours, and operate Once daily. The journey takes approximately 5h.
Jakarta to Semarang train services, operated by Kereta API, depart from Jakarta Gambir station.
Jakarta to Semarang train services, operated by Kereta API, arrive at Semarang Tawang station.
Book your Jakarta to Semarang train tickets online with Kereta API.
The distance between Jakarta and Semarang is 404.3 km. The road distance is 439 km.
Kereta API operates a train from Jakarta Gambir to Semarang Tawang every 4 hours. Tickets cost Rp 260,000–350,000 and the journey takes 4h 49m.