Travel Jakarta to Semarang

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 ⏱

Hop on bus from Jakarta to Semarang for IDR 140000 Go with bus from Jakarta to Semarang for IDR 140000 Ride with bus from Jakarta to Semarang in 4h 30m Hop on bus from Jakarta to Semarang for IDR 140000 Take bus from Jakarta to Semarang in 4h 30m Go with bus from Jakarta to Semarang in 4h 30m

View all Bus tickets →

Distance Jakarta to Semarang

The distance between Jakarta and Semarang is 407.4 kilometers.

Bus from Jakarta to Semarang Details

Find key information about the Bus from Jakarta to Semarang, including travel time, prices and stations.

Bus
Average price
393,236 IDR
 
Cheapest
140,000 IDR
Average duration
7h 55m
 
Shortest
4h 30m
Number of departures
250
03:45 - 22:30
Tickets
 
Stations
Departure stations
Arrival stations
Terminal Kali Deres, Jakarta
Terminal Grogol, Jakarta
Tebet Jakarta
Grogol Jakarta Barat
Jakarta
View more stations in the full listing
Terminal Terboyo, Semarang
Terminal Sisemut, Semarang
Terminal Banyumanik, Semarang
Srondol Semarang
Karang Ayu Semarang
View more stations in the full listing

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.

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

Check all Bus tickets →

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.


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 Planner

Ideal for multi-city trips and flexible travel plans.