Jakarta to Semarang bus with Harapan Jaya

Tue, Jul 14
+ Add return
Harapan Jaya
Kramat Djati
Transjakarta
FlixBus
Alsa
2,000+ travel companies
Harapan Jaya
Kramat Djati
Transjakarta
FlixBus
Alsa
2,000+ travel companies
QR-Code
Scan to get our free app
Use our app to get live travel updates and book mobile tickets for trains, buses, flights, and ferries.
App Store
rate4.9
42K ratings
Google Play
rate4.6
136K reviews

The cheapest and fastest buses from Jakarta to Semarang

Showing times and prices for Jul 14

Cheapest price

$9

Average price

$17

Fastest journey

5 h 35 m

Average duration

5 h 43 m

Buses per day

64

Distance

404 km

Cheap tickets

The best way to find a cheap bus ticket from Jakarta to Semarang is to book your journey as far in advance as possible and to avoid traveling at rush hour.

The average ticket from Jakarta to Semarang will cost around $17 if you buy it on the day, but the cheapest tickets can be found for only $9.

Fast buses

Of the 64 buses that leave Jakarta for Semarang on Tue, Jul 14, 64 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.

On Tue, Jul 14 the direct buses cover the 404 km distance in an average of 5 h 43 m but if you time it right, some buses will get you there in just 5 h 35 m .

On Tue, Jul 14 the slowest buses will take 6 h 15 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.

  • 3M Transport (Sari Indah)3M TRANSPORT (SARI INDAH)
    10:00 PM6h49
    Jakarta, Pintu Bus Terminal Pulo Gebang
    4:49 AMSemarang, Bus Terminal Mangkang
    $91One-way
    0 transfers
  • 3M Transport (Sari Indah)3M TRANSPORT (SARI INDAH)
    9:30 PM7h12
    Jakarta, Bus Terminal Kampung Rambutan
    4:42 AMSemarang, Bus Terminal Mangkang
    $91One-way
    0 transfers
  • PO Majoe Muda MandiriPO MAJOE MUDA MANDIRI
    10:00 AM7h38
    Jakarta, Bus Terminal Kampung Rambutan
    5:38 PMSemarang, Bus Terminal Banyumanik
    $121One-way
    0 transfers
  • PO Majoe Muda MandiriPO MAJOE MUDA MANDIRI
    9:00 AM7h32
    Jakarta, Bus Terminal Grogol
    4:32 PMSemarang, Bus Terminal Banyumanik
    $121One-way
    0 transfers
  • PO Majoe Muda MandiriPO MAJOE MUDA MANDIRI
    11:00 AM7h16
    Jakarta, Pintu Bus Terminal Pulo Gebang
    6:16 PMSemarang, Bus Terminal Banyumanik
    $121One-way
    0 transfers

Travel Information

Compare train, bus, 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 bus with prices starting from $9. For those with little time consider booking a flight which can get you there in 1h 13m. The ticket price range depends on the travel mode: a bus costs an average of $9, and a flight costs an average of $43.

Distance: 251 miles (404 km)

Compare bus with

Bus
Most popular
Flight
Train
Driving

$15

Average price

Cheapest

$83

Average price

$23

Average price

$54

Average price

(fuel + tolls)

9h 20m

Average total duration

8h 50m

Onboard

+

30m

Additional time*

4h 13m

Average total duration

Fastest

1h 13m

Onboard

+

3h 0m

Additional time*

5h 41m

Average total duration

5h 11m

Onboard

+

30m

Additional time*

6h 1m

Average total duration

(door-to-door)

Direct Options

Direct Options

Direct Options

Direct Options

The cheapest way to travel from Jakarta to Semarang is a bus with an average price of $15 (€12).

This is compared to other travel options from Jakarta to Semarang:

A bus is $8 (€6) less than a train for this route with tickets for a train from Jakarta to Semarang costing on average $23 (€19).

A bus is $68 (€56) less than a flight for this route with tickets for a flight from Jakarta to Semarang costing on average $83 (€69).

The fastest way to travel from Jakarta to Semarang is by flight with an average journey time of 1h 13m.

Other travel options to Semarang take longer:

Train takes on average 5h 11m.

Bus takes on average 8h 50m.

It's helpful to compare your options as there are 3 ways to travel between Jakarta and Semarang including taking a train, bus, and flight.
We recommend using the flight as it is the most popular way to get from Jakarta to Semarang among Omio's users.
Take the bus. It's the cheapest way to make this trip, and the price gap is usually bigger than people expect.

Tickets start at around $15 (€12) compared to roughly $54 (€45) in fuel and tolls — a saving of about $39 (€32). The journey takes 8h 50m versus 6h 1m by car, so you'll arrive a bit later, but you can use the time productively rather than spending it behind the wheel. No parking to sort, no fuel stops, and most coaches have Wi-Fi and power outlets.

Direct services are operated by Harapan Jaya, Kramat Djati.

Driving is worth considering if you're on a tight schedule, travelling as a group (where fuel costs split several ways), or want the flexibility to stop along the way.

Jakarta to Semarang Bus Timetables

OperatorDeparture TimeArrival TimeDurationDeparture daysCheapest price
Operator
Harapan Jaya
Departure Time
06:00AM
Arrival Time
01:00PM
Duration
7h00
Departure days
Everyday
Cheapest price
$16
Operator
Harapan Jaya
Departure Time
06:15AM
Arrival Time
03:15PM
Duration
9h00
Departure days
Everyday
Cheapest price
$16
Operator
Harapan Jaya
Departure Time
06:20AM
Arrival Time
03:20PM
Duration
9h00
Departure days
Everyday
Cheapest price
$16
Operator
Harapan Jaya
Departure Time
06:25AM
Arrival Time
03:25PM
Duration
9h00
Departure days
Everyday
Cheapest price
$17
Operator
Harapan Jaya
Departure Time
06:30AM
Arrival Time
03:30PM
Duration
9h00
Departure days
Everyday
Cheapest price
$16
Operator
Harapan Jaya
Departure Time
06:35AM
Arrival Time
03:35PM
Duration
9h00
Departure days
Everyday
Cheapest price
$17
Operator
Harapan Jaya
Departure Time
06:40AM
Arrival Time
01:40PM
Duration
7h00
Departure days
Everyday
Cheapest price
$16
Operator
Harapan Jaya
Departure Time
06:45AM
Arrival Time
03:45PM
Duration
9h00
Departure days
Everyday
Cheapest price
$16
Operator
Harapan Jaya
Departure Time
07:00AM
Arrival Time
04:00PM
Duration
9h00
Departure days
Everyday
Cheapest price
$16
Operator
Harapan Jaya
Departure Time
07:10AM
Arrival Time
02:10PM
Duration
7h00
Departure days
Everyday
Cheapest price
$16
Operator
PT ADIBUZZ MITRA GEMILANG
Departure Time
07:30AM
Arrival Time
02:00PM
Duration
6h30
Departure days
Mon, Tue, Thu, Sun
Cheapest price
$18
Operator
PT ADIBUZZ MITRA GEMILANG
Departure Time
07:45AM
Arrival Time
02:00PM
Duration
6h15
Departure days
Mon, Tue, Thu, Sun
Cheapest price
$18
Operator
PT ADIBUZZ MITRA GEMILANG
Departure Time
08:25AM
Arrival Time
02:00PM
Duration
5h35
Departure days
Mon, Tue, Thu, Sat, Sun
Cheapest price
$18
Operator
PO Majoe Muda Mandiri
Departure Time
09:00AM
Arrival Time
04:32PM
Duration
7h32
Departure days
Everyday
Cheapest price
$12
Operator
PO Majoe Muda Mandiri
Departure Time
10:00AM
Arrival Time
05:38PM
Duration
7h38
Departure days
Everyday
Cheapest price
$12
Operator
PO Majoe Muda Mandiri
Departure Time
11:00AM
Arrival Time
06:16PM
Duration
7h16
Departure days
Everyday
Cheapest price
$12
Operator
Kramat Djati
Departure Time
11:30AM
Arrival Time
02:21AM
Duration
14h51
Departure days
Tue, Thu, Sat
Cheapest price
$19
Operator
Gunung Harta
Departure Time
12:05PM
Arrival Time
08:04PM
Duration
7h59
Departure days
Tue, Wed, Thu, Fri, Sat, Sun
Cheapest price
$21
Operator
Harapan Jaya
Departure Time
12:30PM
Arrival Time
09:30PM
Duration
9h00
Departure days
Everyday
Cheapest price
$24
Operator
Harapan Jaya
Departure Time
01:00PM
Arrival Time
10:00PM
Duration
9h00
Departure days
Everyday
Cheapest price
$24
Operator
Harapan Jaya
Departure Time
01:15PM
Arrival Time
08:15PM
Duration
7h00
Departure days
Everyday
Cheapest price
$16
Operator
Gunung Harta
Departure Time
01:30PM
Arrival Time
08:52PM
Duration
7h22
Departure days
Everyday
Cheapest price
$21
Operator
Harapan Jaya
Departure Time
01:30PM
Arrival Time
10:30PM
Duration
9h00
Departure days
Everyday
Cheapest price
$17
Operator
Harapan Jaya
Departure Time
01:45PM
Arrival Time
08:45PM
Duration
7h00
Departure days
Everyday
Cheapest price
$20
Operator
Harapan Jaya
Departure Time
02:00PM
Arrival Time
11:00PM
Duration
9h00
Departure days
Everyday
Cheapest price
$16
Operator
Harapan Jaya
Departure Time
02:15PM
Arrival Time
11:15PM
Duration
9h00
Departure days
Everyday
Cheapest price
$20
Operator
Harapan Jaya
Departure Time
02:30PM
Arrival Time
11:30PM
Duration
9h00
Departure days
Everyday
Cheapest price
$20
Operator
Harapan Jaya
Departure Time
02:45PM
Arrival Time
09:45PM
Duration
7h00
Departure days
Everyday
Cheapest price
$20
Operator
Harapan Jaya
Departure Time
03:30PM
Arrival Time
12:30AM
Duration
9h00
Departure days
Everyday
Cheapest price
$20
Operator
Kramat Djati
Departure Time
03:30PM
Arrival Time
10:55PM
Duration
7h25
Departure days
Mon, Wed, Fri, Sun
Cheapest price
$18
Operator
Harapan Jaya
Departure Time
04:00PM
Arrival Time
01:00AM
Duration
9h00
Departure days
Everyday
Cheapest price
$20
Operator
Kramat Djati
Departure Time
04:30PM
Arrival Time
12:36AM
Duration
8h06
Departure days
Everyday
Cheapest price
$18
Operator
Harapan Jaya
Departure Time
04:30PM
Arrival Time
11:30PM
Duration
7h00
Departure days
Everyday
Cheapest price
$16
Operator
Kramat Djati
Departure Time
04:40PM
Arrival Time
02:34AM
Duration
9h54
Departure days
Everyday
Cheapest price
$13
Operator
Harapan Jaya
Departure Time
04:45PM
Arrival Time
01:45AM
Duration
9h00
Departure days
Everyday
Cheapest price
$16
Operator
PT ADIBUZZ MITRA GEMILANG
Departure Time
05:00PM
Arrival Time
11:30PM
Duration
6h30
Departure days
Mon, Tue, Thu, Sun
Cheapest price
$18
Operator
PT ADIBUZZ MITRA GEMILANG
Departure Time
05:15PM
Arrival Time
11:30PM
Duration
6h15
Departure days
Mon, Tue, Thu, Sun
Cheapest price
$18
Operator
PT ADIBUZZ MITRA GEMILANG
Departure Time
05:55PM
Arrival Time
11:30PM
Duration
5h35
Departure days
Mon, Tue, Thu, Sat, Sun
Cheapest price
$18
Operator
Harapan Jaya
Departure Time
06:00PM
Arrival Time
03:00AM
Duration
9h00
Departure days
Mon, Wed, Thu, Fri, Sat, Sun
Cheapest price
$16
Operator
Kramat Djati
Departure Time
06:10PM
Arrival Time
06:19AM
Duration
12h09
Departure days
Everyday
Cheapest price
$17
Operator
Harapan Jaya
Departure Time
06:30PM
Arrival Time
03:30AM
Duration
9h00
Departure days
Mon, Wed, Thu, Fri, Sat, Sun
Cheapest price
$16
Operator
Kramat Djati
Departure Time
07:00PM
Arrival Time
05:27AM
Duration
10h27
Departure days
Everyday
Cheapest price
$17
Operator
Daytrans
Departure Time
08:00PM
Arrival Time
03:30AM
Duration
7h30
Departure days
Fri
Cheapest price
$20
Operator
3M Transport (Sari Indah)
Departure Time
09:30PM
Arrival Time
04:42AM
Duration
7h12
Departure days
Tue, Wed, Thu, Fri, Sat, Sun
Cheapest price
$9
Operator
3M Transport (Sari Indah)
Departure Time
10:00PM
Arrival Time
04:49AM
Duration
6h49
Departure days
Tue, Wed, Thu, Fri, Sat, Sun
Cheapest price
$9

Live departures

Jakarta to Semarang bus times

The table below shows live departures for Jakarta to Semarang buses for today, Monday, July 13. You can also manually refresh the results below to see updated bus journeys.

Last updated at
ProviderDepartsDurationArrivesTransfers
Tickets
Harapan JayaHARAPAN JAYA12:30 PM Jakarta, Lebak Bulus
9h00
9:30 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA12:30 PM Jakarta, Pondok Pinang
9h00
9:30 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA1:00 PM Jakarta, Pasar Rebo
9h00
10:00 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA1:15 PM Jakarta, Kapuk
7h00
8:15 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA1:30 PM Jakarta, Lebak Bulus
9h00
10:30 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA1:30 PM Jakarta, Pondok Pinang
9h00
10:30 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Gunung HartaGUNUNG HARTA SOLUTIONS1:30 PM Jakarta, Pintu Bus Terminal Pulo Gebang
7h22
8:52 PM Semarang, Bus Terminal Terboyo0 transfersDirect
Harapan JayaHARAPAN JAYA1:45 PM Jakarta, Ampera
7h00
8:45 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA2:00 PM Bus Terminal Tanjung Priok, Jakarta Utara
9h00
11:00 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA2:00 PM Jakarta, Bus Terminal Kalideres
9h00
11:00 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA2:00 PM Jakarta, Pintu Bus Terminal Pulo Gebang
9h00
11:00 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA2:15 PM Jakarta, Cengkareng
9h00
11:15 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA2:30 PM Jakarta, Taman Kota
9h00
11:30 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA2:45 PM Jakarta, Grogol
7h00
9:45 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA3:30 PM Jakarta, Pondok Pinang
9h00
12:30 AM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Kramat DjatiKRAMAT DJATI3:30 PM Jakarta, Bus Terminal Kampung Rambutan
7h45
11:15 PM Semarang, Bus Terminal Banyumanik0 transfersDirect
Harapan JayaHARAPAN JAYA3:30 PM Jakarta, Lebak Bulus
9h00
12:30 AM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Kramat DjatiKRAMAT DJATI3:30 PM Jakarta, Bus Terminal Kampung Rambutan
7h25
10:55 PM Semarang, Krapyak0 transfersDirect
Harapan JayaHARAPAN JAYA4:00 PM Jakarta, Pasar Rebo
9h00
1:00 AM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA4:30 PM Jakarta, Pintu Bus Terminal Pulo Gebang
9h00
1:30 AM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA4:30 PM Jakarta, Bus Terminal Kampung Rambutan
7h00
11:30 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Kramat DjatiKRAMAT DJATI4:30 PM Jakarta, Pintu Bus Terminal Pulo Gebang
8h06
12:36 AM Semarang, Krapyak0 transfersDirect
Kramat DjatiKRAMAT DJATI4:30 PM Jakarta, Pintu Bus Terminal Pulo Gebang
8h26
12:56 AM Semarang, Bus Terminal Banyumanik0 transfersDirect
Kramat DjatiKRAMAT DJATI4:40 PM Jakarta, Kramat Jati
9h54
2:34 AM Semarang, Krapyak0 transfersDirect
Harapan JayaHARAPAN JAYA4:45 PM Jakarta, Pasar Rebo
9h00
1:45 AM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
PT ADIBUZZ MITRA GEMILANGADIBUZZ5:00 PM Jakarta, Cijantung
6h30
11:30 PM Semarang, Bus Terminal Banyumanik0 transfersDirect
PT ADIBUZZ MITRA GEMILANGADIBUZZ5:00 PM Jakarta, Cijantung
6h30
11:30 PM Semarang, Krapyak0 transfersDirect
PT ADIBUZZ MITRA GEMILANGADIBUZZ5:15 PM Jakarta, Pasar Rebo
6h15
11:30 PM Semarang, Bus Terminal Banyumanik0 transfersDirect
PT ADIBUZZ MITRA GEMILANGADIBUZZ5:15 PM Jakarta, Bus Terminal Kampung Rambutan
6h15
11:30 PM Semarang, Bus Terminal Banyumanik0 transfersDirect
PT ADIBUZZ MITRA GEMILANGADIBUZZ5:15 PM Jakarta, Bus Terminal Kampung Rambutan
6h15
11:30 PM Semarang, Krapyak0 transfersDirect
PT ADIBUZZ MITRA GEMILANGADIBUZZ5:15 PM Jakarta, Pasar Rebo
6h15
11:30 PM Semarang, Krapyak0 transfersDirect
PT ADIBUZZ MITRA GEMILANGADIBUZZ5:55 PM Jakarta, Pintu Bus Terminal Pulo Gebang
5h35
11:30 PM Semarang, Krapyak0 transfersDirect
PT ADIBUZZ MITRA GEMILANGADIBUZZ5:55 PM Jakarta, Pintu Bus Terminal Pulo Gebang
5h35
11:30 PM Semarang, Bus Terminal Banyumanik0 transfersDirect
Harapan JayaHARAPAN JAYA6:00 PM Bus Terminal Tanjung Priok, Jakarta Utara
9h00
3:00 AM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Kramat DjatiKRAMAT DJATI6:10 PM Jakarta, Cililitan
12h09
6:19 AM Semarang, Krapyak0 transfersDirect
Harapan JayaHARAPAN JAYA6:30 PM Jakarta, Pintu Bus Terminal Pulo Gebang
9h00
3:30 AM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Kramat DjatiKRAMAT DJATI7:00 PM Jakarta, Pintu Bus Terminal Pulo Gebang
10h27
5:27 AM Semarang, Krapyak0 transfersDirect
Tuesday, July 14
Harapan JayaHARAPAN JAYA6:00 AM Jakarta, Ampera
7h00
1:00 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA6:15 AM Jakarta, Bus Terminal Kalideres
9h00
3:15 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA6:15 AM Jakarta, Ampera
7h00
1:15 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA6:20 AM Jakarta, Cengkareng
9h00
3:20 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA6:25 AM Jakarta, Bus Terminal Kalideres
9h00
3:25 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA6:30 AM Jakarta, Bus Terminal Kalideres
9h00
3:30 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA6:30 AM Jakarta, Taman Kota
9h00
3:30 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA6:35 AM Jakarta, Cengkareng
9h00
3:35 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA6:40 AM Jakarta, Grogol
7h00
1:40 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA6:45 AM Jakarta, Taman Kota
9h00
3:45 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA6:45 AM Jakarta, Cengkareng
9h00
3:45 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA7:00 AM Jakarta, Taman Kota
9h00
4:00 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA7:00 AM Jakarta, Grogol
7h00
2:00 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA7:00 AM Jakarta, Pasar Rebo
9h00
4:00 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
Harapan JayaHARAPAN JAYA7:10 AM Jakarta, Grogol
7h00
2:10 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
PT ADIBUZZ MITRA GEMILANGADIBUZZ7:30 AM Jakarta, Cijantung
6h30
2:00 PM Semarang, Krapyak0 transfersDirect
PT ADIBUZZ MITRA GEMILANGADIBUZZ7:30 AM Jakarta, Cijantung
6h30
2:00 PM Semarang, Bus Terminal Banyumanik0 transfersDirect
PT ADIBUZZ MITRA GEMILANGADIBUZZ7:45 AM Jakarta, Pasar Rebo
6h15
2:00 PM Semarang, Krapyak0 transfersDirect
PT ADIBUZZ MITRA GEMILANGADIBUZZ7:45 AM Jakarta, Bus Terminal Kampung Rambutan
6h15
2:00 PM Semarang, Krapyak0 transfersDirect
PT ADIBUZZ MITRA GEMILANGADIBUZZ7:45 AM Jakarta, Bus Terminal Kampung Rambutan
6h15
2:00 PM Semarang, Bus Terminal Banyumanik0 transfersDirect
PT ADIBUZZ MITRA GEMILANGADIBUZZ7:45 AM Jakarta, Pasar Rebo
6h15
2:00 PM Semarang, Bus Terminal Banyumanik0 transfersDirect
PT ADIBUZZ MITRA GEMILANGADIBUZZ8:25 AM Jakarta, Pintu Bus Terminal Pulo Gebang
5h35
2:00 PM Semarang, Krapyak0 transfersDirect
PT ADIBUZZ MITRA GEMILANGADIBUZZ8:25 AM Jakarta, Pintu Bus Terminal Pulo Gebang
5h35
2:00 PM Semarang, Bus Terminal Banyumanik0 transfersDirect
PO Majoe Muda MandiriPO MAJOE MUDA MANDIRI9:00 AM Jakarta, Bus Terminal Grogol
7h32
4:32 PM Semarang, Bus Terminal Banyumanik0 transfersDirect
PO Majoe Muda MandiriPO MAJOE MUDA MANDIRI10:00 AM Jakarta, Bus Terminal Kampung Rambutan
7h38
5:38 PM Semarang, Bus Terminal Banyumanik0 transfersDirect
PO Majoe Muda MandiriPO MAJOE MUDA MANDIRI11:00 AM Jakarta, Pintu Bus Terminal Pulo Gebang
7h16
6:16 PM Semarang, Bus Terminal Banyumanik0 transfersDirect
Kramat DjatiKRAMAT DJATI11:30 AM Jakarta
14h51
2:21 AM Semarang, Bus Terminal Banyumanik0 transfersDirect
Kramat DjatiKRAMAT DJATI11:30 AM Jakarta
14h10
1:40 AM Semarang, Krapyak0 transfersDirect

Find all the dates and times for this journey

Compare prices and tickets Jakarta to Semarang by train, bus, or flight

Compare train, bus, and flight prices over the next three weeks. See the best deals at a glance, find the lowest fares, and choose the option that fits your budget.

Tue
Jul 14
Wed
Jul 15
Thu
Jul 16
Fri
Jul 17
Sat
Jul 18
Sun
Jul 19
Mon
Jul 20

Why should you book Jakarta to Semarang buses with Omio?

Harapan Jaya as well as Kramat Djati or Transjakarta offer buses services from Jakarta to Semarang.
Omio is an official ticket reseller for all your travel options from Jakarta to Semarang.

Why book with Omio vs Harapan Jaya?

  • Compare with other providers: On Omio, you can not only buy tickets for Harapan Jaya, but also compare tickets for the likes of Kramat Djati or Transjakarta to find the best option for your trip from Jakarta to Semarang.
  • Designed for International Travelers: Omio is in your language including 24/7 customer service and offers multiple payment options, including PayPal, credit cards, and bank transfer, in your preferred currency.
  • Compare all your options: Omio allows you to compare Harapan Jaya with all available travel options, which are train, bus and flight to ensure you get the best deal for traveling from Jakarta to Semarang.

Why book with Omio over Checkmybus, Busbud or Wanderu?

  • Multiple modes of transport: Omio allows you to compare travel options including train, bus and flight to find the ideal travel option from Jakarta to Semarang.

Journey information

Overview: Bus from Jakarta to Semarang

IndonesiaIndonesia
IndonesiaIndonesia
Icon of bus

Buses from Jakarta to Semarang run on average 49 times per day, taking around 8h 50m. Cheap bus tickets for this journey start at $9 (€8) if you book in advance.

There are 49 buses per day. The earliest bus runs at 02:00, the last at 23:45. The fastest bus covers the 251 miles (404 km) distance in 6h 15m.

Fares are the lowest economy prices found on Omio. Early booking often means lower prices. Prices change daily and are subject to availability. Discount cards, coach trips, and booking fees are not included.
Price information
Distance
251 miles (404 km)
Average bus duration
8h 50m
Cheapest ticket price
$9 (€8)
Buses per day
49
Direct buses
49
Fastest bus
6h 15m
First bus
2:00 AM
Last bus
11:45 PM
Cheapest Month
Jun
Cheapest Day
Sat
High Season
Jul - Sep
Low Season
Apr - Jun
Busiest Day
Fri
Least Busy Day
Sat
Fares are the lowest economy prices found on Omio. Early booking often means lower prices. Prices change daily and are subject to availability. Discount cards, coach trips, and booking fees are not included.
Price information

Bus providers: Harapan Jaya, Kramat Djati, Transjakarta from Jakarta to SemarangYou can travel by bus between Jakarta to Semarang with Harapan Jaya, Kramat Djati, Transjakarta for as low as $9 (€8). When you search for schedules and tickets, Omio will show you the best journey

Harapan Jaya

About
Established in 1992 in Indonesia, operates from Kantor Pusat Garasi Klari Gunung Putri with a fleet of various types of buses, including executive class. The service includes accessible travel, luggage included in fare, excess luggage allowed for a fee, free onboard WiFi, USB plugs available, food options onboard, seat reservations permitted, and onboard bathrooms for passenger comfort. Pets and bikes are not allowed.
Luggage & cancellation policy
Average Duration
9h 0m
Cheapest Price
$17 (€14)
Harapan Jaya frequency
35 a day
Luggage included
Luggage included in fare; specific size/type not provided.
Additional luggage
Excess luggage and bulky luggage allowed for an additional fee
Amenities on board the bus
Food sold onboard
Seat reservation
Toilets

Kramat Djati

About
Established in 1994 in Indonesia, operates from Jl. Ciputat Raya No. 190 Pasar Jumat – Jakarta Selatan with various types of buses, including executive class. The service includes accessible travel, luggage included in fare, excess and bulky luggage allowed for a fee. Free onboard WiFi, USB plugs, food options available, seat reservations permitted, and onboard bathrooms ensure a comfortable journey. Bikes are not allowed; pets are not permitted.
Luggage & cancellation policy
Average Duration
9h 54m
Cheapest Price
$13 (€11)
Kramat Djati frequency
7 a day
Luggage included
Luggage included in fare; specific size/type not provided.
Additional luggage
Excess luggage and bulky luggage allowed for an additional fee
Amenities on board the bus
Food sold onboard
Seat reservation
Toilets

Transjakarta

Luggage & cancellation policy
Average Duration
6h 17m
Transjakarta frequency
1 a day

FAQs: Bus from Jakarta to Semarang

Find answers to the most common questions about traveling from Jakarta to Semarang by bus. From journey times and ticket prices to direct connections, first and last departures, and even whether the route is scenic, our FAQs cover everything you need to plan your trip. Whether you’re looking for the fastest bus, the cheapest option, or tips for making the most of your visit at Semarang, this guide helps you travel smarter and with confidence.

FAQs
Cheap bus tickets from Jakarta to Semarang can start from as little as $9 (€8) when you book in advance. The average bus ticket price for Jakarta to Semarang is $15 (€12) ; however, prices vary depending on the time of day and class and they tend to be more expensive on the day.
The average journey time by bus from Jakarta to Semarang is 6h 15m to travel the 251 miles (404 km) long journey. Journey times can vary on weekends and holidays, so use our Journey Planner to search for a specific date.
The earliest bus from Jakarta to Semarang leaves at 2:00 AM. Plan your trip with the Journey Planner from Omio.
The latest bus from Jakarta to Semarang leaves at 11:45 PM.
Yes, there are 49 direct buses a day from Jakarta to Semarang with Harapan Jaya, Kramat Djati. Schedules can vary on holidays or weekends with fewer direct buses.
When taking a bus from Jakarta to Semarang, you can count on Harapan Jaya, Kramat Djati, Transjakarta for the best way to get you to Semarang. You can also check all possible bus companies who offer a service between Jakarta and Semarang and compare the amenities they offer before buying a bus ticket.
When departing from Jakarta , you have various bus station options to start your journey from including Jakarta, Pasar Rebo, Jakarta, Pintu Bus Terminal Pulo Gebang, Jakarta, Bus Terminal Kampung Rambutan, Jakarta, Bus Terminal Kalideres, Jakarta, Grogol, Jakarta, Pondok Pinang, Jakarta, Cengkareng, Jakarta, Lebak Bulus, Jakarta, Kapuk, Jakarta, Ampera, Jakarta, Taman Kota, Jakarta, Cijantung, Bus Terminal Tanjung Priok, Jakarta Utara, Jakarta, Bus Terminal Grogol, Jakarta, Jakarta, Cililitan, Kota Jakarta, Jakarta, Kramat Jati, Jakarta, Lippo Mall Puri, Jakarta, Utan Kayu Rawamangun . When arriving in Semarang , you can end your journey in bus stations like Semarang, Candisari (SPBU Dokter Wahidin), Semarang, Krapyak, Semarang, Bus Terminal Banyumanik, Semarang, Bus Terminal Mangkang, Semarang, Bus Terminal Terboyo, Kota Semarang, Semarang, Semarang Barat, Bawen, Bus Terminal Bawen .Passengers board the bus most frequently from Jakarta, Pasar Rebo, which is located around 7 miles (12 km) away from the city centre, and they get off the bus at Semarang, Candisari (SPBU Dokter Wahidin), located 2 away from the city centre.
A trip to Semarang from Jakarta is worth doing but not as a day trip with a journey time of 6h 15m each way. Check with Omio app the best way to travel.
The cheapest month for a bus from Jakarta to Semarang is June.
It's helpful to compare your options as there are 3 ways to travel between Jakarta and Semarang including taking a train, bus, and flight.
Yes, there are bathrooms on board the bus from Jakarta to Semarang for bus company Harapan Jaya, Kramat Djati.
No, the bus from Jakarta to Semarang has no accessibility options.
No, bikes are not allowed on board the bus from Jakarta to Semarang.
Tickets are often cheaper when booked early. Traveling during off-peak hours or on weekdays can help you save money. Sort results by price to quickly identify the most affordable options. Check for promotions or discounts available on our website and app.
Yes, there is food available to purchase on board the bus from Jakarta to Semarang.
Yes, the following luggage options are included when booking a bus ticket from Jakarta to Semarang:
  • Harapan Jaya
    • Luggage included in fare
    • specific size/type not provided.
  • Kramat Djati
    • Luggage included in fare
    • specific size/type not provided.
Yes, the following additional luggage options are available when booking a bus ticket from Jakarta to Semarang:
  • Harapan Jaya
    • Excess luggage and bulky luggage allowed for an additional fee
  • Kramat Djati
    • Excess luggage and bulky luggage allowed for an additional fee
Unfortunately, pets are not allowed on the bus from Jakarta to Semarang.
You can reserve your seat on the bus from Jakarta to Semarang with the following bus company: Harapan Jaya, Kramat Djati
No, there are no USB plugs on board the bus from Jakarta to Semarang.
No, there is no WiFi on board the bus from Jakarta to Semarang.
Since neither Jakarta nor Semarang are in the Schengen Area, passport requirements depend on the specific immigration rules of Indonesia and Indonesia. Entry and visa requirements can be subject to change. For the latest information, check with your destination's embassy or consulate.
We recommend using the flight as it is the most popular way to get from Jakarta to Semarang among Omio's users.
The currency used in Indonesia is the Indonesian Rupiah (IDR). For travelers, it is generally better to carry cash, especially in smaller towns and markets where card acceptance may be limited, though cards are widely accepted in major cities and larger establishments.
In Semarang, travelers should be cautious of petty theft, especially in crowded areas and public transportation. Common scams include inflated taxi fares and unofficial tour guides offering overpriced services. It's advisable to use registered taxis or ride-hailing apps and agree on prices beforehand. Travelers should also be wary of pickpockets in busy markets and tourist spots.
Pack lightweight, versatile clothing suitable for the destination's climate, and use secure, lockable luggage to protect belongings. Keep essential items like travel documents, medication, and valuables in a carry-on bag for easy access. Use packing organizers or cubes to maximize space and maintain order. Lastly, include a small first aid kit and personal hygiene items for added comfort during travel.

popular bus stations

Popular bus stations from Jakarta to Semarang

Most Jakarta to Semarang buses use the Jakarta, Pasar Rebo to Semarang, Candisari (SPBU Dokter Wahidin) station pair, with some services arriving at Semarang, Krapyak. Use this guide to compare Jakarta and Semarang bus stations on this route, check city-centre transport, alongside checking practicalities like bus station facilities and services.

Departure bus stations in Jakarta
Arrival bus stations in Semarang

Which Jakarta station do buses to Semarang leave from?

Buses from Jakarta to Semarang leave from Jakarta, Pasar Rebo. The station is 7 miles (12 km) from Jakarta city centre at Jalan Raya Bogor KM.19, Pasar Rebo, Jakarta, Indonesia.
Jakarta, Pasar ReboJalan Raya Bogor KM.19, Pasar Rebo, Jakarta, IndonesiaParkingDiningATMTaxisAccessibilityWCTicket Office
City-centre transport

Getting to Jakarta, Pasar Rebo from Jakarta city centre

Jakarta, Pasar Rebo is 12 km from Jakarta city centre. Public transport options include:

BusJak.37 · 1h 1m · every ~20 min
7 · 1h 3m · every ~22 min
Jak.43B · 1h 50m · every ~39 min

Jakarta, Pasar Rebo bus station facilities and services

Jakarta, Pasar Rebo has practical services for this route, including Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.

Food and drink

Food options include: Local food stalls and small restaurants nearby

Wi-Fi and ATMs

ATMs are several ATMs from major banks nearby.

Tickets and information

Ticket office support is available at Jakarta, Pasar Rebo.

Parking, taxis and toilets

Available at Jakarta, Pasar Rebo: Parking, Taxis, WC.

Accessibility

Accessibility facilities are available at Jakarta, Pasar Rebo: Basic ramps available.

Jakarta, Pintu Terminal Pulo GebangJalan Pulo Gebang Raya, East Jakarta, IndonesiaWifiParkingDiningATMTaxisAccessibilityWCTicket Office
City-centre transport

Getting to Jakarta, Pintu Terminal Pulo Gebang from Jakarta city centre

Jakarta, Pintu Terminal Pulo Gebang is 11 km from Jakarta city centre. Public transport options include:

TrainBlue · 28m · every ~5 min
Bus11M · 51m · every ~2 min
11Q · 1h 6m · every ~13 min

Jakarta, Pintu Terminal Pulo Gebang bus station facilities and services

Jakarta, Pintu Terminal Pulo Gebang has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.

Food and drink

Food options include: Food court and various food stalls available

Wi-Fi and ATMs

Free Wi-Fi in terminal building. ATMs are several ATMs from different banks.

Tickets and information

Ticket office support is available at Jakarta, Pintu Terminal Pulo Gebang.

Parking, taxis and toilets

Available at Jakarta, Pintu Terminal Pulo Gebang: Parking, Taxis, WC.

Accessibility

Accessibility facilities are available at Jakarta, Pintu Terminal Pulo Gebang: Wheelchair ramps, dedicated assistance.

Jakarta, Terminal Kampung RambutanJl. Lingkar Luar Selatan, Kampung Rambutan, East Jakarta, IndonesiaWifiParkingDiningATMTaxisAccessibilityWCTicket Office
City-centre transport

Getting to Jakarta, Terminal Kampung Rambutan from Jakarta city centre

Jakarta, Terminal Kampung Rambutan is 11 km from Jakarta city centre. Public transport options include:

Bus7D · 1h 3m · every ~15 min
Ac70 · 1h 12m · $1 · every ~8 min
7 · 1h 19m · every ~22 min

Jakarta, Terminal Kampung Rambutan bus station facilities and services

Jakarta, Terminal Kampung Rambutan has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.

Food and drink

Food options include: Food court and various food stalls available

Wi-Fi and ATMs

Free Wi-Fi available. ATMs are several ATMs from different banks.

Tickets and information

Ticket office support is available at Jakarta, Terminal Kampung Rambutan.

Parking, taxis and toilets

Available at Jakarta, Terminal Kampung Rambutan: Parking, Taxis, WC.

Accessibility

Accessibility facilities are available at Jakarta, Terminal Kampung Rambutan: Wheelchair ramps available.

More options for your journey from Jakarta to Semarang

Here are some other resources that might have the information you need

The Omio App Makes Travel Planning Easy

We’ll get you where you want to go. From live train updates to mobile tickets, our innovative app is the ideal way to plan and keep track of your travel.

ios-badge
android-badge
Hand With Phone