Jakarta to Semarang Bus: Schedules, Tickets & Prices
The bus journey from Jakarta to Semarang takes approximately 4h 30m to 18h 15m, with fares from 140,000 IDR to 999,992 IDR.
Bus from Jakarta to Semarang
To travel between Jakarta and Semarang, you’ll need to catch the bus from multiple stations, including Terminal Kali Deres, Jakarta, Terminal Grogol, Jakarta, Tebet Jakarta and others. The journey takes approximately 4 hours 30 minutes with fares starting from 140,000 IDR, and services conclude at multiple stations, including Terminal Terboyo, Semarang, Terminal Sisemut, Semarang, Terminal Banyumanik, Semarang and others. It’s a straightforward option for this route, and you can reserve your seat in advance to avoid last-minute issues.
Prices: 140,000 IDR to 999,992 IDR
Duration: 4h 30m – 18h 15m ⏱
Bus Routes & Schedules from Jakarta to Semarang
Between Jakarta and Semarang, this bus connection is served by several stations rather than a single fixed terminal. The exact travel time varies depending on where you board and exit the bus, but most trips take approximately 4h 30m. Services run throughout the day, operating from 03:45 until 22:30, and fares typically begin at 140,000 IDR. By checking the full bus timetable for Jakarta to Semarang, you can compare different station pairings, journey lengths and departure times to choose the option that best matches your travel plans.
Cheapest Bus Jakarta to Semarang
140000 IDR, from Terminal Kali Deres, Jakarta to Terminal Terboyo, Semarang, departure some times, duration 11h.Fastest Bus Jakarta to Semarang
343666 IDR, from Jakarta to Semarang, departure some times, duration 4h 30m.Bus Timetable: Alfamart Akses Tol Jatiwarna, Bekasi → Jl Lingkar Ambarawa Semarang
- 18:55 02:25 7h 30m 799993 IDR
Bus Timetable: Alfamart Akses Tol Jatiwarna, Bekasi → Pool Majapahit Semarang
- 18:55 01:00 6h 5m 799993 IDR
Bus Timetable: Alfamart Akses Tol Jatiwarna, Bekasi → Semeru Kr Ayu Siliwangi Semarang
- 18:55 00:30 5h 35m 799993 IDR
Bus Timetable: Alfamart Akses Tol Jatiwarna, Bekasi → Terminal Sukun Semarang
- 18:55 01:30 6h 35m 799993 IDR
Bus Timetable: Grogol Jakarta Barat → Karang Ayu Semarang
- 05:00 12:00 7h 262500 IDR
- 07:00 14:00 7h 262500 IDR
- 08:00 15:00 7h 262500 IDR
- 10:00 17:00 7h 262500 IDR
- 11:00 18:00 7h 262500 IDR
- 17:00 00:00 7h 282500 IDR
- 18:00 01:00 7h 262500 IDR
- 20:30 03:30 7h 282500 IDR
- 21:00 04:00 7h 282500 IDR
- 22:00 05:00 7h 317500 IDR
Bus Timetable: Grogol Jakarta Barat → Pool Majapahit Semarang
- 18:00 03:00 9h 799993 IDR
- 18:25 01:00 6h 35m 999992 IDR
- 19:55 05:00 9h 5m 799993 IDR
- 20:00 05:00 9h 424996 IDR
Bus Timetable: Grogol Jakarta Barat → Semeru Kr Ayu Siliwangi Semarang
- 18:00 03:00 9h 799993 IDR
- 19:55 05:00 9h 5m 799993 IDR
- 20:00 05:00 9h 424996 IDR
Bus Timetable: Grogol Jakarta Barat → Srondol Semarang
- 05:00 11:30 6h 30m 262500 IDR
- 07:00 13:30 6h 30m 262500 IDR
- 08:00 14:30 6h 30m 262500 IDR
- 10:00 16:30 6h 30m 262500 IDR
- 11:00 17:30 6h 30m 262500 IDR
- 17:00 23:30 6h 30m 282500 IDR
- 18:00 00:30 6h 30m 262500 IDR
- 20:30 03:00 6h 30m 282500 IDR
- 21:00 03:30 6h 30m 282500 IDR
- 22:00 04:30 6h 30m 317500 IDR
Bus Timetable: Indomaret H Saikin Jakarta Selatan → Pool Majapahit Semarang
- 18:50 01:00 6h 10m 999992 IDR
Bus Timetable: Jakarta → Semarang
- 04:00 16:50 12h 50m 345883 IDR
- 04:30 11:30 7h 415059 IDR
- 04:45 13:20 8h 35m 343666 IDR
- 05:00 13:30 8h 30m 288236 IDR
- 05:10 13:20 8h 10m 343666 IDR
- 05:15 13:20 8h 5m 343666 IDR
- 05:20 12:00 6h 40m 415059 IDR
- 05:25 13:20 7h 55m 343666 IDR
- 05:30 12:30 7h 360295 IDR
- 05:45 12:30 6h 45m 360295 IDR
- 05:50 12:30 6h 40m 360295 IDR
- 05:55 14:50 8h 55m 288236 IDR
- 06:00 12:30 6h 30m 360295 IDR
- 06:05 13:20 7h 15m 343666 IDR
- 06:10 20:15 14h 5m 288236 IDR
- 06:15 20:15 14h 343666 IDR
- 06:20 15:20 9h 368942 IDR
- 06:30 23:30 17h 299765 IDR
- 06:35 13:20 6h 45m 343666 IDR
- 06:40 12:30 5h 50m 360295 IDR
- 06:45 15:35 8h 50m 368942 IDR
- 06:50 20:15 13h 25m 343666 IDR
- 07:00 14:15 7h 15m 526585 IDR
- 07:02 14:50 7h 48m 288236 IDR
- 07:10 14:30 7h 20m 288236 IDR
- 07:15 14:30 7h 15m 288236 IDR
- 07:30 15:45 8h 15m 299322 IDR
- 07:35 15:45 8h 10m 299322 IDR
- 07:45 15:45 8h 299322 IDR
- 08:00 15:45 7h 45m 299322 IDR
- 08:15 15:45 7h 30m 299322 IDR
- 08:30 15:30 7h 415059 IDR
- 08:45 15:45 7h 299322 IDR
- 09:00 16:30 7h 30m 299322 IDR
- 12:00 00:00 12h 380471 IDR
- 13:00 00:00 11h 380471 IDR
- 13:15 22:00 8h 45m 343666 IDR
- 13:30 22:00 8h 30m 343666 IDR
- 13:45 22:00 8h 15m 343666 IDR
- 13:50 22:00 8h 10m 343666 IDR
- 14:00 22:00 8h 343666 IDR
- 14:05 21:30 7h 25m 357412 IDR
- 14:30 22:00 7h 30m 288236 IDR
- 14:50 00:10 9h 20m 322824 IDR
- 14:55 22:00 7h 5m 526585 IDR
- 15:00 00:00 9h 634119 IDR
- 15:10 23:00 7h 50m 421268 IDR
- 15:15 23:00 7h 45m 421268 IDR
- 15:20 23:00 7h 40m 421268 IDR
- 15:25 23:20 7h 55m 484236 IDR
- 15:26 23:00 7h 34m 421268 IDR
- 15:30 00:30 9h 634119 IDR
- 15:35 23:20 7h 45m 368942 IDR
- 15:40 23:20 7h 40m 368942 IDR
- 15:45 01:40 9h 55m 299322 IDR
- 15:50 22:00 6h 10m 526585 IDR
- 15:55 01:00 9h 5m 374706 IDR
- 16:00 01:35 9h 35m 299322 IDR
- 16:05 23:45 7h 40m 443440 IDR
- 16:10 01:35 9h 25m 299322 IDR
- 16:15 01:15 9h 634119 IDR
- 16:25 02:00 9h 35m 374706 IDR
- 16:30 01:35 9h 5m 299322 IDR
- 16:31 23:30 6h 59m 443440 IDR
- 16:40 00:20 7h 40m 498870 IDR
- 16:45 01:15 8h 30m 634119 IDR
- 16:50 23:00 6h 10m 388010 IDR
- 16:55 01:45 8h 50m 374706 IDR
- 17:00 01:00 8h 368942 IDR
- 17:05 00:15 7h 10m 526585 IDR
- 17:10 00:50 7h 40m 776020 IDR
- 17:15 01:35 8h 20m 299322 IDR
- 17:20 00:00 6h 40m 388010 IDR
- 17:25 00:00 6h 35m 388010 IDR
- 17:30 02:20 8h 50m 461177 IDR
- 17:40 00:20 6h 40m 498870 IDR
- 17:41 01:01 7h 20m 415725 IDR
- 17:45 00:25 6h 40m 343666 IDR
- 17:50 00:15 6h 25m 343666 IDR
- 17:55 00:15 6h 20m 343666 IDR
- 18:00 00:15 6h 15m 343666 IDR
- 18:05 23:30 5h 25m 343666 IDR
- 18:10 00:50 6h 40m 526585 IDR
- 18:15 00:15 6h 343666 IDR
- 18:20 01:20 7h 415059 IDR
- 18:25 23:30 5h 5m 343666 IDR
- 18:30 00:15 5h 45m 343666 IDR
- 18:35 00:15 5h 40m 343666 IDR
- 18:37 01:01 6h 24m 526585 IDR
- 18:40 00:25 5h 45m 343666 IDR
- 18:45 00:15 5h 30m 288236 IDR
- 19:00 23:30 4h 30m 343666 IDR
- 19:05 02:45 7h 40m 526585 IDR
- 19:15 03:15 8h 465612 IDR
- 19:20 03:00 7h 40m 776020 IDR
- 19:30 01:00 5h 30m 243892 IDR
- 19:33 01:01 5h 28m 526585 IDR
- 19:45 03:30 7h 45m 465612 IDR
- 20:00 04:00 8h 282693 IDR
- 20:10 02:45 6h 35m 776020 IDR
- 20:25 03:00 6h 35m 526585 IDR
- 21:00 06:00 9h 498870 IDR
- 22:00 06:00 8h 282693 IDR
Bus Timetable: Jatiwarna, Bekasi → Jl Lingkar Ambarawa Semarang
- 18:55 02:25 7h 30m 799993 IDR
Bus Timetable: Jatiwarna, Bekasi → Pool Majapahit Semarang
- 18:55 01:00 6h 5m 799993 IDR
Bus Timetable: Jatiwarna, Bekasi → Semeru Kr Ayu Siliwangi Semarang
- 18:55 00:30 5h 35m 799993 IDR
Bus Timetable: Jatiwarna, Bekasi → Terminal Sukun Semarang
- 18:55 01:30 6h 35m 799993 IDR
Bus Timetable: Kota Bekasi → Semarang
- 03:45 22:00 18h 15m 343666 IDR
- 04:00 16:50 12h 50m 345883 IDR
- 05:00 18:00 13h 334353 IDR
- 05:30 18:00 12h 30m 345883 IDR
- 06:15 12:30 6h 15m 360295 IDR
- 06:30 12:30 6h 360295 IDR
- 07:00 12:30 5h 30m 360295 IDR
- 07:10 13:00 5h 50m 357412 IDR
- 07:15 20:15 13h 343666 IDR
- 07:30 16:45 9h 15m 368942 IDR
- 07:35 16:10 8h 35m 288236 IDR
- 07:40 14:45 7h 5m 288236 IDR
- 07:45 14:10 6h 25m 288236 IDR
- 08:00 14:30 6h 30m 380471 IDR
- 08:15 14:50 6h 35m 288236 IDR
- 08:25 16:10 7h 45m 288236 IDR
- 08:45 16:00 7h 15m 380471 IDR
- 08:55 16:10 7h 15m 288236 IDR
- 09:00 16:10 7h 10m 288236 IDR
- 09:10 15:20 6h 10m 368942 IDR
- 09:15 16:30 7h 15m 299322 IDR
- 09:20 15:20 6h 368942 IDR
- 09:30 15:45 6h 15m 299322 IDR
- 13:00 05:00 16h 403530 IDR
- 13:30 20:00 6h 30m 332580 IDR
- 14:00 23:30 9h 30m 338123 IDR
- 14:15 23:15 9h 338123 IDR
- 15:00 22:00 7h 343666 IDR
- 15:15 22:45 7h 30m 343666 IDR
- 15:20 22:50 7h 30m 288236 IDR
- 15:30 22:50 7h 20m 343666 IDR
- 15:40 23:20 7h 40m 288236 IDR
- 15:45 22:15 6h 30m 357412 IDR
- 15:50 23:20 7h 30m 368942 IDR
- 16:00 23:15 7h 15m 461177 IDR
- 16:10 23:20 7h 10m 484236 IDR
- 16:25 00:55 8h 30m 634119 IDR
- 16:30 02:30 10h 299765 IDR
- 16:35 23:45 7h 10m 443440 IDR
- 16:40 22:35 5h 55m 322824 IDR
- 16:45 01:35 8h 50m 299322 IDR
- 16:55 00:10 7h 15m 322824 IDR
- 17:00 01:35 8h 35m 299322 IDR
- 17:05 23:00 5h 55m 421268 IDR
- 17:25 02:00 8h 35m 374706 IDR
- 17:30 01:35 8h 5m 299322 IDR
- 17:35 01:00 7h 25m 403530 IDR
- 17:40 00:55 7h 15m 403530 IDR
- 17:45 23:00 5h 15m 380471 IDR
- 17:50 01:50 8h 357412 IDR
- 18:00 02:00 8h 380471 IDR
- 18:12 02:00 7h 48m 305530 IDR
- 18:15 01:35 7h 20m 299322 IDR
- 18:20 01:20 7h 299322 IDR
- 18:30 02:30 8h 461177 IDR
- 19:00 00:15 5h 15m 343666 IDR
- 19:15 00:15 5h 343666 IDR
- 19:30 00:15 4h 45m 343666 IDR
- 19:33 01:01 5h 28m 526585 IDR
- 19:45 00:15 4h 30m 343666 IDR
- 20:00 06:00 10h 392000 IDR
- 20:20 03:15 6h 55m 465612 IDR
Bus Timetable: Pasar Rebo Jakarta → Anak Bangsa Education, Banyumanik
- 07:45 14:00 6h 15m 280000 IDR
Bus Timetable: Pasar Rebo Jakarta → Terminal Ungaran
- 07:45 14:10 6h 25m 280000 IDR
Bus Timetable: Pasar Rebo Jakarta Timur → Jl Lingkar Ambarawa Semarang
- 18:00 02:25 8h 25m 799993 IDR
Bus Timetable: Pasar Rebo Jakarta Timur → Pool Majapahit Semarang
- 18:00 01:00 7h 799993 IDR
Bus Timetable: Pasar Rebo Jakarta Timur → Semeru Kr Ayu Siliwangi Semarang
- 18:00 00:30 6h 30m 799993 IDR
Bus Timetable: Pasar Rebo Jakarta Timur → Terminal Sukun Semarang
- 18:00 01:30 7h 30m 799993 IDR
Bus Timetable: Pulo Gebang, Jakarta → Jl Lingkar Ambarawa Semarang
- 19:00 06:00 11h 799993 IDR
- 21:00 08:00 11h 424996 IDR
Bus Timetable: Pulo Gebang, Jakarta → Pool Majapahit Semarang
- 19:00 05:00 10h 799993 IDR
- 19:30 01:00 5h 30m 999992 IDR
- 21:00 07:00 10h 424996 IDR
Bus Timetable: Pulo Gebang, Jakarta → Semeru Kr Ayu Siliwangi Semarang
- 19:00 05:00 10h 799993 IDR
- 21:00 07:00 10h 424996 IDR
Bus Timetable: Pulo Gebang, Jakarta → Terminal Banyumanik, Semarang
- 12:30 01:00 12h 30m 191760 IDR
Bus Timetable: Pulo Gebang, Jakarta → Terminal Sisemut, Semarang
- 12:30 01:30 13h 191760 IDR
Bus Timetable: Pulo Gebang, Jakarta → Terminal Sukun Semarang
- 19:00 05:30 10h 30m 799993 IDR
- 21:00 07:30 10h 30m 424996 IDR
Bus Timetable: Pulo Gebang, Jakarta → Terminal Terboyo, Semarang
- 22:00 06:00 8h 140000 IDR
Bus Timetable: Tebet Jakarta → Karang Ayu Semarang
- 05:15 12:00 6h 45m 262500 IDR
- 07:30 14:00 6h 30m 262500 IDR
- 08:30 15:00 6h 30m 262500 IDR
- 10:30 17:00 6h 30m 262500 IDR
- 11:30 18:00 6h 30m 262500 IDR
- 17:45 00:00 6h 15m 282500 IDR
- 18:45 01:00 6h 15m 262500 IDR
- 21:00 03:30 6h 30m 282500 IDR
- 21:30 04:00 6h 30m 282500 IDR
- 22:30 05:00 6h 30m 317500 IDR
Bus Timetable: Tebet Jakarta → Srondol Semarang
- 05:15 11:30 6h 15m 262500 IDR
- 07:30 13:30 6h 262500 IDR
- 08:30 14:30 6h 262500 IDR
- 10:30 16:30 6h 262500 IDR
- 11:30 17:30 6h 262500 IDR
- 17:45 23:30 5h 45m 282500 IDR
- 18:45 00:30 5h 45m 262500 IDR
- 21:00 03:00 6h 282500 IDR
- 21:30 03:30 6h 282500 IDR
- 22:30 04:30 6h 317500 IDR
Bus Timetable: Terminal Grogol, Jakarta → Terminal Banyumanik, Semarang
- 11:00 01:00 14h 191760 IDR
Bus Timetable: Terminal Grogol, Jakarta → Terminal Sisemut, Semarang
- 11:00 01:30 14h 30m 191760 IDR
Bus Timetable: Terminal Grogol, Jakarta → Terminal Terboyo, Semarang
- 21:00 06:00 9h 140000 IDR
Bus Timetable: Terminal Kali Deres, Jakarta → Terminal Banyumanik, Semarang
- 09:30 01:00 15h 30m 191760 IDR
Bus Timetable: Terminal Kali Deres, Jakarta → Terminal Sisemut, Semarang
- 09:30 01:30 16h 191760 IDR
Bus Timetable: Terminal Kali Deres, Jakarta → Terminal Terboyo, Semarang
- 19:00 06:00 11h 140000 IDR
Bus Timetable: Terminal Kampung Rambutan Jakarta → Terminal Banyumanik, Semarang
- 11:30 01:00 13h 30m 191760 IDR
Bus Timetable: Terminal Kampung Rambutan Jakarta → Terminal Sisemut, Semarang
- 11:30 01:30 14h 191760 IDR
Bus Timetable: Terminal Kampung Rambutan Jakarta → Terminal Terboyo, Semarang
- 21:30 06:00 8h 30m 140000 IDR
Bus Timetable: Terminal Poris Plawad, Tangerang → Banyumanik
- 15:45 03:20 11h 35m 309996 IDR
Bus Timetable: Terminal Poris Plawad, Tangerang → Terminal Terboyo, Semarang
- 18:00 06:00 12h 140000 IDR
Frequently Asked Questions Bus Jakarta to Semarang
Below you will find answers to the most common questions about traveling from Jakarta to Semarang by bus.
How long is the bus trip from Jakarta to Semarang usually?
The bus trip from Jakarta to Semarang can take about 4 hours 30 minutes at the shortest end and up to around 17 hours 15 minutes on the longest end, depending on the service and departure point. Some specific bus journeys are much shorter, while others take considerably longer, so it is worth checking the exact bus connection before you book.
What is the price of bus tickets for Jakarta to Semarang?
Bus tickets for Jakarta to Semarang start from 140000 IDR and can go up to 999992 IDR. The final fare depends on the bus service and the specific departure and arrival points, so comparing options before booking can help you find the best value.
Which bus departure times are available for Jakarta to Semarang?
For the Jakarta to Semarang bus service, the first departure is at 03:45 and the last departure is at 22:30. That gives travelers a wide range of bus departure times, so you can choose an option that fits your schedule.
How frequent is the bus connection between Jakarta and Semarang?
The bus connection between Jakarta and Semarang has a total of 250 trips, which gives travelers many options across the day. Since the schedule is spread out rather than shown as a fixed frequency, it is best to check the available bus departures for your preferred time.
Can I book bus tickets from Jakarta to Semarang in advance?
Yes, it is a good idea to book bus tickets from Jakarta to Semarang in advance, especially if you want a specific departure time or route. With many bus trips available, early booking can help you secure the bus service that matches your travel plans.
What are some common bus departure points for the Jakarta to Semarang route?
Common bus departure points for Jakarta to Semarang include Terminal Kali Deres, Terminal Grogol, Tebet Jakarta, Terminal Kampung Rambutan, Pulo Gebang, and Pasar Rebo. There are also departures from places in Bekasi and Tangerang, so the bus journey can start from several convenient locations.
Where can a bus from Jakarta to Semarang arrive?
A bus from Jakarta to Semarang can arrive at places such as Terminal Terboyo, Terminal Sisemut, Terminal Banyumanik, Srondol, Karang Ayu, and Pool Majapahit. Some bus journeys also continue to other Semarang-area stops, so the arrival point depends on the bus service you choose.
Any practical tips for choosing a bus journey from Jakarta to Semarang?
When choosing a bus journey from Jakarta to Semarang, it helps to compare the departure point, arrival point, travel time, and ticket price together. Because the bus options vary a lot, checking the exact bus service details before you travel can make the trip smoother and more convenient.
Travel options for Jakarta to Semarang
More Bus routes from and to Jakarta or Semarang
Routes in Bus from Jakarta →
Routes in Bus to Semarang ←
Routes in Bus to Jakarta ←
Planning more than just Jakarta to Semarang?
You’re currently viewing Bus options for Jakarta to Semarang. If your trip includes more destinations, the TicketRoutes Travel Planner lets you compare different transport types and multiple routes in one place.
Open Travel PlannerIdeal for multi-city trips and flexible travel plans.