The cheapest and fastest trains from Jakarta to Semarang
Cheapest price
$22
Average price
$22
Fastest journey
4 h 49 m
Average duration
4 h 57 m
Trains per day
5
Distance
404 km
The best way to find a cheap train ticket from Jakarta to Semarang is to book your journey as far in advance as possible and to avoid travelling at rush hour.
The average ticket from Jakarta to Semarang will cost around $22 if you buy it on the day, but you can find cheap train tickets today for only $22.
Of the 5 trains that leave Jakarta for Semarang every day 5 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
These direct trains cover the 404 km distance in an average of 4 h 57 m but if you time it right, some trains will get you there in just 4 h 49 m .
The slowest trains will take 5 h 5 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, coach and flight for Jakarta to Semarang
Omio recommends booking the flight as it is the most popular option from Jakarta to Semarang among Omio's users. If you are prioritising price take the coach with prices starting from $10. For those with little time consider booking a flight which can get you there in 1h 9m. The ticket price range depends on the travel mode: a coach costs an average of $10, and a flight costs an average of $47.
Distance: 404 km
Compare train with
| Train | Most popular Flight | Coach |
|---|---|---|
$24 Average Price | $56 Average Price | $11 Average Price Cheapest |
5h 41m Average total duration 5h 11m Onboard + 30m Additional time* | 4h 9m Average total duration Fastest 1h 9m Onboard + 3h 0m Additional time* | 9h 34m Average total duration 9h 4m Onboard + 30m Additional time* |
Direct Options | Direct Options | Direct Options |
Live departures
Jakarta to Semarang train times
| Provider | Departs | Duration | Arrives | Changes | Tickets |
|---|---|---|---|---|---|
![]() | 7:15 am Jakarta Gambir | 4h55 | 12:10 pm Semarang Tawang | 0 changesdirect | |
![]() | 8:20 am Jakarta Gambir | 4h52 | 1:12 pm Semarang Tawang | 0 changesdirect | |
![]() | 10:20 am Jakarta Gambir | 5h11 | 3:31 pm Semarang Tawang | 0 changesdirect | |
![]() | 4:45 pm Jakarta Gambir | 5h10 | 9:55 pm Semarang Tawang | 0 changesdirect | |
![]() | 7:30 pm Jakarta Gambir | 5h03 | 12:33 am Semarang Tawang | 0 changesdirect |
Find all the dates and times for this journey
Compare prices and tickets Jakarta to Semarang by train, coach or flight
06 Nov
07 Nov
08 Nov
09 Nov
10 Nov
11 Nov
12 Nov
Journey information
Overview: Train from Jakarta to Semarang
Distance 404 km |
Average train duration 5h 11m |
Cheapest ticket price $22 |
Trains per day 10 |
Direct trains 10 |
Fastest train 4h 49m |
First train 00:10 |
Last train 23:50 |
Train companies: Kereta API from Jakarta to Semarang trainsKereta API trains will get you between Jakarta and Semarang from $10. With over 1000 travel companies on Omio, you can find the best train times and tickets for your trip.
Kereta API
FAQs: Jakarta to Semarang train

When departing from Jakarta, you have various train station options to start your route from including Gambir, Jatinegara and Pasar Senen. When arriving in Semarang, you can end your journey in train stations like Semarang Tawang Bank Jateng and Train Station Semarang Poncol.
Passengers board the train most frequently from Gambir, which is located around away from the city centre, and they get off the train at Semarang Tawang Bank Jateng, located away from the city centre.
More options for your journey from Jakarta to Semarang
Here are some other resources that might have the information you need
