- Must visit
Museum Sejarah Jakarta
Housed in a grand colonial building, this museum introduces Jakarta's history from ancient port city to modern capital.
The best way to find a cheap bus ticket from Semarang to Jakarta is to book your journey as far in advance as possible and to avoid traveling at rush hour.
The average ticket from Semarang to Jakarta will cost around S$ 23 if you buy it on the day, but the cheapest tickets can be found for only S$ 16.
On Fri, Oct 30, we found 52 buses from Semarang to Jakarta, including 52 direct services.
On Fri, Oct 30 the direct buses cover the 404 km distance in an average of 7 h 7 m but if you time it right, some buses will get you there in just 5 h 55 m .
On Fri, Oct 30 the slowest buses will take 7 h 42 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.
PO MAJOE MUDA MANDIRI
|
| ||||||||||||
PO MAJOE MUDA MANDIRI
|
| ||||||||||||
PO MAJOE MUDA MANDIRI
|
| ||||||||||||
HARAPAN JAYA
|
| ||||||||||||
HARAPAN JAYA
|
| ||||||||||||
0
|
| ||||||||||||
0
|
| ||||||||||||
PO MAJOE MUDA MANDIRI
|
| ||||||||||||
PO MAJOE MUDA MANDIRI
|
| ||||||||||||
PO SAHAALAH
|
| ||||||||||||
Buses from Semarang to Jakarta run on average 38 times per day, taking around 8h 17m. Cheap bus tickets for this journey start at S$ 14 if you book in advance.
There are 38 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 3h 45m.
Distance 251 miles (404 km) |
Average bus duration 8h 17m |
Cheapest ticket price S$ 14 |
Buses per day 38 |
Direct buses 38 |
Fastest bus 3h 45m |
First bus 2:00 AM |
Last bus 11:45 PM |
Cheapest Month Oct |
Cheapest Day Thu |
High Season Jul - Sep |
Low Season Jan - Mar |
Busiest Day Sat |
Least Busy Day Sat |
Best time to book 14 days |
Use these quick route answers to check fares, travel time, departure options, and direct services before booking from Semarang to Jakarta.
| Operator | Departure Time | Arrival Time | Duration | Departure days | Cheapest price |
|---|---|---|---|---|---|
Operator Harapan Jaya | Departure Time 02:00AM | Arrival Time 11:00AM | Duration 9h00 | Departure days Thu, Sat, Sun | Cheapest price S$ 18 |
Operator PO Majoe Muda Mandiri | Departure Time 10:00AM | Arrival Time 05:40PM | Duration 7h40 | Departure days Mon, Tue | Cheapest price S$ 15 |
Operator Infobus | Departure Time 10:15AM | Arrival Time 06:15PM | Duration 8h00 | Departure days Thu, Fri, Sat, Sun | Cheapest price S$ 26 |
Operator Harapan Jaya | Departure Time 11:00AM | Arrival Time 08:00PM | Duration 9h00 | Departure days Thu, Fri, Sat, Sun | Cheapest price S$ 21 |
Operator Santoso Travel | Departure Time 11:00AM | Arrival Time 06:43PM | Duration 7h43 | Departure days Tue | Cheapest price S$ 39 |
Operator Infobus | Departure Time 11:15AM | Arrival Time 07:15PM | Duration 8h00 | Departure days Thu, Fri, Sat, Sun | Cheapest price S$ 26 |
Operator Kramat Djati | Departure Time 12:00PM | Arrival Time 12:09AM | Duration 12h09 | Departure days Mon, Tue | Cheapest price S$ 24 |
Operator Harapan Jaya | Departure Time 02:00PM | Arrival Time 11:00PM | Duration 9h00 | Departure days Wed, Thu, Fri, Sat, Sun | Cheapest price S$ 22 |
Operator Harapan Jaya | Departure Time 02:30PM | Arrival Time 11:30PM | Duration 9h00 | Departure days Everyday | Cheapest price S$ 20 |
Operator Harapan Jaya | Departure Time 03:30PM | Arrival Time 01:30AM | Duration 10h00 | Departure days Mon, Tue | Cheapest price S$ 19 |
Operator Daytrans | Departure Time 05:00PM | Arrival Time 01:00AM | Duration 8h00 | Departure days Sun | Cheapest price S$ 26 |
Operator PO Majoe Muda Mandiri | Departure Time 05:00PM | Arrival Time 12:41AM | Duration 7h41 | Departure days Thu, Fri, Sat | Cheapest price S$ 16 |
Operator Daytrans | Departure Time 05:30PM | Arrival Time 01:00AM | Duration 7h30 | Departure days Sun | Cheapest price S$ 26 |
Operator Harapan Jaya | Departure Time 07:00PM | Arrival Time 04:00AM | Duration 9h00 | Departure days Mon, Wed, Thu, Fri, Sat, Sun | Cheapest price S$ 18 |
Operator Kramat Djati | Departure Time 07:00PM | Arrival Time 07:09AM | Duration 12h09 | Departure days Fri, Sat | Cheapest price S$ 21 |
Operator Kramat Djati | Departure Time 07:20PM | Arrival Time 07:02AM | Duration 11h42 | Departure days Fri, Sat | Cheapest price S$ 21 |
Operator PO Sahaalah | Departure Time 07:30PM | Arrival Time 03:12AM | Duration 7h42 | Departure days Thu, Fri, Sat | Cheapest price S$ 23 |
Operator Harapan Jaya | Departure Time 07:30PM | Arrival Time 04:30AM | Duration 9h00 | Departure days Fri, Sat, Sun | Cheapest price S$ 21 |
Operator Infobus | Departure Time 07:35PM | Arrival Time 02:10AM | Duration 6h35 | Departure days Fri, Sat | Cheapest price S$ 27 |
Operator Harapan Jaya | Departure Time 07:45PM | Arrival Time 04:45AM | Duration 9h00 | Departure days Wed | Cheapest price S$ 21 |
Operator Infobus | Departure Time 08:00PM | Arrival Time 04:00AM | Duration 8h00 | Departure days Thu, Fri, Sat, Sun | Cheapest price S$ 26 |
Operator Setia Travel | Departure Time 08:01PM | Arrival Time 03:46AM | Duration 7h45 | Departure days Thu, Fri, Sat | Cheapest price S$ 35 |
Operator Infobus | Departure Time 08:15PM | Arrival Time 04:15AM | Duration 8h00 | Departure days Thu, Fri, Sat, Sun | Cheapest price S$ 26 |
Operator Harapan Jaya | Departure Time 08:30PM | Arrival Time 05:30AM | Duration 9h00 | Departure days Wed, Thu, Fri, Sat, Sun | Cheapest price S$ 26 |
Operator Harapan Jaya | Departure Time 09:00PM | Arrival Time 06:00AM | Duration 9h00 | Departure days Wed, Thu, Fri, Sat, Sun | Cheapest price S$ 21 |
Operator Harapan Jaya | Departure Time 09:05PM | Arrival Time 06:05AM | Duration 9h00 | Departure days Thu, Fri, Sat, Sun | Cheapest price S$ 22 |
Operator Harapan Jaya | Departure Time 09:30PM | Arrival Time 06:30AM | Duration 9h00 | Departure days Wed, Thu, Fri, Sat, Sun | Cheapest price S$ 22 |
Operator Daytrans | Departure Time 10:00PM | Arrival Time 04:20AM | Duration 6h20 | Departure days Sun | Cheapest price S$ 26 |
Operator Harapan Jaya | Departure Time 10:30PM | Arrival Time 07:30AM | Duration 9h00 | Departure days Wed | Cheapest price S$ 19 |
Operator Harapan Jaya | Departure Time 11:00PM | Arrival Time 08:00AM | Duration 9h00 | Departure days Thu, Fri, Sat, Sun | Cheapest price S$ 19 |
Operator Harapan Jaya | Departure Time 11:45PM | Arrival Time 08:45AM | Duration 9h00 | Departure days Wed, Thu, Fri, Sat, Sun | Cheapest price S$ 20 |
The table below shows live departures for Semarang to Jakarta buses for tomorrow, Friday, October 30. You can also manually refresh the results below to see updated bus journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
0 | 10:15 AM Semarang | 8h00 | 6:15 PM Jakarta | 0 transfersDirect | |
0 | 10:15 AM Semarang | 8h00 | 6:15 PM Jakarta | 0 transfersDirect | |
0 | 11:15 AM Semarang | 8h00 | 7:15 PM Jakarta | 0 transfersDirect | |
0 | 11:15 AM Semarang | 8h00 | 7:15 PM Jakarta | 0 transfersDirect | |
HARAPAN JAYA | 11:00 AM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 8:00 PM Jakarta, Ampera | 0 transfersDirect | |
HARAPAN JAYA | 11:00 AM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 8:00 PM Jakarta, Grogol | 0 transfersDirect | |
HARAPAN JAYA | 11:00 AM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 8:00 PM Jakarta, Taman Kota | 0 transfersDirect | |
HARAPAN JAYA | 11:00 AM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 8:00 PM Jakarta, Cengkareng | 0 transfersDirect | |
HARAPAN JAYA | 11:00 AM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 8:00 PM Jakarta, Pasar Rebo | 0 transfersDirect | |
HARAPAN JAYA | 11:00 AM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 8:00 PM Jakarta, Bus Terminal Kalideres | 0 transfersDirect | |
HARAPAN JAYA | 2:00 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 11:00 PM Jakarta, Bus Terminal Kalideres | 0 transfersDirect | |
HARAPAN JAYA | 2:00 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 11:00 PM Jakarta, Cengkareng | 0 transfersDirect | |
HARAPAN JAYA | 2:00 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 11:00 PM Jakarta, Grogol | 0 transfersDirect | |
HARAPAN JAYA | 2:30 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 11:30 PM Jakarta, Ampera | 0 transfersDirect | |
HARAPAN JAYA | 2:30 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 11:30 PM Jakarta, Grogol | 0 transfersDirect | |
HARAPAN JAYA | 2:30 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 11:30 PM Jakarta, Bus Terminal Kalideres | 0 transfersDirect | |
HARAPAN JAYA | 2:30 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 11:30 PM Jakarta, Cengkareng | 0 transfersDirect | |
PO MAJOE MUDA MANDIRI | 5:00 PM Semarang, Bus Terminal Banyumanik | 7h45 | 12:45 AM Jakarta, Bus Terminal Grogol | 0 transfersDirect | |
PO MAJOE MUDA MANDIRI | 5:00 PM Semarang, Bus Terminal Banyumanik | 7h40 | 12:40 AM Jakarta, Bus Terminal Kampung Rambutan | 0 transfersDirect | |
PO MAJOE MUDA MANDIRI | 5:00 PM Semarang, Bus Terminal Banyumanik | 7h41 | 12:41 AM Jakarta, Pintu Bus Terminal Pulo Gebang | 0 transfersDirect | |
0 | 7:35 PM Semarang | 6h35 | 2:10 AM Jakarta | 0 transfersDirect | |
0 | 7:35 PM Semarang | 5h55 | 1:30 AM Jakarta | 0 transfersDirect | |
0 | 8:00 PM Semarang | 8h00 | 4:00 AM Jakarta | 0 transfersDirect | |
0 | 8:00 PM Semarang | 8h00 | 4:00 AM Jakarta | 0 transfersDirect | |
0 | 8:15 PM Semarang | 8h00 | 4:15 AM Jakarta | 0 transfersDirect | |
0 | 8:15 PM Semarang | 8h00 | 4:15 AM Jakarta | 0 transfersDirect | |
HARAPAN JAYA | 7:00 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 4:00 AM Jakarta, Cengkareng | 0 transfersDirect | |
HARAPAN JAYA | 7:00 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 4:00 AM Jakarta, Bus Terminal Kalideres | 0 transfersDirect | |
HARAPAN JAYA | 7:00 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 4:00 AM Jakarta, Grogol | 0 transfersDirect | |
HARAPAN JAYA | 7:00 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 4:00 AM Jakarta, Ampera | 0 transfersDirect | |
KRAMAT DJATI | 7:00 PM Semarang, Bus Terminal Banyumanik | 12h09 | 7:09 AM Jakarta, Bus Terminal Kampung Rambutan | 0 transfersDirect | |
KRAMAT DJATI | 7:20 PM Semarang, Krapyak | 11h42 | 7:02 AM Jakarta, Bus Terminal Kampung Rambutan | 0 transfersDirect | |
HARAPAN JAYA | 7:30 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 4:30 AM Jakarta, Bus Terminal Kalideres | 0 transfersDirect | |
PO SAHAALAH | 7:30 PM Semarang, Genuk | 7h42 | 3:12 AM Jakarta, Pintu Bus Terminal Pulo Gebang | 0 transfersDirect | |
HARAPAN JAYA | 7:30 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 4:30 AM Jakarta, Taman Kota | 0 transfersDirect | |
HARAPAN JAYA | 7:30 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 4:30 AM Jakarta, Grogol | 0 transfersDirect | |
SETIA TRAVEL | 8:01 PM Semarang, Bus Terminal Banyumanik | 7h45 | 3:46 AM Jakarta, Bus Terminal Grogol | 0 transfersDirect | |
HARAPAN JAYA | 8:30 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 5:30 AM Jakarta, Pasar Rebo | 0 transfersDirect | |
HARAPAN JAYA | 8:30 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 5:30 AM Jakarta, Pintu Bus Terminal Pulo Gebang | 0 transfersDirect | |
HARAPAN JAYA | 8:30 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 5:30 AM Jakarta, Lebak Bulus | 0 transfersDirect | |
HARAPAN JAYA | 9:00 PM Semarang, Candisari (SPBU Dokter Wahidin) | 10h00 | 7:00 AM Bus Terminal Tanjung Priok, Jakarta Utara | 0 transfersDirect | |
HARAPAN JAYA | 9:00 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 6:00 AM Jakarta, Pintu Bus Terminal Pulo Gebang | 0 transfersDirect | |
HARAPAN JAYA | 9:00 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 6:00 AM Jakarta, Pasar Rebo | 0 transfersDirect | |
HARAPAN JAYA | 9:00 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 6:00 AM Jakarta, Lebak Bulus | 0 transfersDirect | |
HARAPAN JAYA | 9:05 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 6:05 AM Jakarta, Ampera | 0 transfersDirect | |
HARAPAN JAYA | 9:05 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 6:05 AM Jakarta, Grogol | 0 transfersDirect | |
HARAPAN JAYA | 9:05 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 6:05 AM Jakarta, Bus Terminal Kalideres | 0 transfersDirect | |
HARAPAN JAYA | 9:05 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 6:05 AM Jakarta, Cengkareng | 0 transfersDirect | |
HARAPAN JAYA | 9:30 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 6:30 AM Jakarta, Pintu Bus Terminal Pulo Gebang | 0 transfersDirect | |
HARAPAN JAYA | 11:00 PM Semarang, Candisari (SPBU Dokter Wahidin) | 10h00 | 9:00 AM Bus Terminal Tanjung Priok, Jakarta Utara | 0 transfersDirect | |
HARAPAN JAYA | 11:00 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 8:00 AM Jakarta, Pintu Bus Terminal Pulo Gebang | 0 transfersDirect | |
HARAPAN JAYA | 11:45 PM Semarang, Candisari (SPBU Dokter Wahidin) | 9h00 | 8:45 AM Jakarta, Pasar Rebo | 0 transfersDirect | |
This is the last bus of the day. | |||||
Find all the dates and times for this journey
Review the details behind your booking, from operators and ticket rules to luggage, onboard amenities, accessibility, and route-specific travel policies.
Discover the best of Jakarta — top attractions, local food, transport tips, budget advice, and currency essentials. Plan your perfect Jakarta trip today.
Housed in a grand colonial building, this museum introduces Jakarta's history from ancient port city to modern capital.
Indonesia's flagship museum displays archaeology, ethnography, and iconic treasures, making it essential for understanding the nation.
A contemporary art institution with rotating exhibitions, public programs, and an accessible introduction to current Indonesian art.
Jakarta's best-known heritage district combines museums, plazas, street life, and colonial architecture ideal for walking and photos.
A major shopping and walking boulevard famous for malls, hotels, and car-free Sunday mornings popular with locals and visitors.
This broad avenue links central landmarks and offers a classic urban view of modern Jakarta, especially lively during events.
Betawi beef soup simmered with milk or coconut milk and spices. A Jakarta icon known for rich, aromatic broth and tender meat.
Betawi-style rice cakes in peanut sauce, often served with tofu, bean sprouts, and sweet soy. A classic Jakarta street snack.
Rice vermicelli soup from Betawi cuisine with coconut milk, dried shrimp, and aromatic herbs. Traditional breakfast and festive dish.
Traditional Indonesian restaurant serving refined regional dishes in an elegant heritage-style setting popular with visitors and locals.
Long-established spot known for Soto Betawi H. Ma'ruf and other Jakarta classics. Casual atmosphere with strong local reputation.
Historic restaurant famous for authentic Betawi dishes such as soto Betawi and gabus pucung in a classic, family-friendly setting.
Moderate for Southeast Asia: hotels vary widely, local meals are cheap, malls and nightlife cost more, and transit is low-cost if you use commuter rail or buses.
Tipping is not mandatory. Restaurants may add service charge; otherwise round up or leave 5-10%. Round up taxi fares. Small tips at cafes are appreciated but optional.
Official public transport app
BNI City Station -> Bundaran HI
Get destination-focused answers for the end of your trip, including what to do, when to go, practical entry details, and tips for making the most of your time in Jakarta.
Find answers to the most common questions about traveling from Semarang to Jakarta 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 Jakarta, this guide helps you travel smarter and with confidence.

Most Semarang to Jakarta buses use the Semarang, Candisari (SPBU Dokter Wahidin) to Jakarta, Grogol station pair, with some services arriving at Jakarta, Terminal Kalideres. Use this guide to compare Semarang and Jakarta bus stations on this route, check city-centre transport, alongside checking practicalities like bus station facilities and services.
Semarang, Candisari (SPBU Dokter Wahidin) is 2 km from Semarang city centre. Public transport options include:
Semarang, Candisari (SPBU Dokter Wahidin) has practical services for this route, including Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.
Food options include: Small food stalls and warung nearby
ATMs are available at the gas station.
Ticket office support is available at Semarang, Candisari (SPBU Dokter Wahidin).
Available at Semarang, Candisari (SPBU Dokter Wahidin): Parking, Taxis, WC.
Accessibility facilities are available at Semarang, Candisari (SPBU Dokter Wahidin): Basic ramps.
Semarang, Krapyak is 5 km from Semarang city centre. Public transport options include:
Semarang, Krapyak has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.
Food options include: Local food stalls and small restaurants available inside and around terminal
Free Wi-Fi available. ATMs are aTM available near entrance.
Ticket office support is available at Semarang, Krapyak.
Available at Semarang, Krapyak: Parking, Taxis, WC.
Accessibility facilities are available at Semarang, Krapyak: Wheelchair ramps.
Semarang, Terminal Banyumanik is 9 km from Semarang city centre. Public transport options include:
Semarang, Terminal Banyumanik has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.
Food options include: Food stalls and small cafes are available inside the terminal.
Free Wi-Fi available throughout the terminal. ATMs are aTMs are located inside the terminal.
Ticket office support is available at Semarang, Terminal Banyumanik.
Available at Semarang, Terminal Banyumanik: Parking, Taxis, WC.
Accessibility facilities are available at Semarang, Terminal Banyumanik: Accessible facilities including ramps and designated seating areas.
Jakarta, Pintu Terminal Pulo Gebang is 11 km from Jakarta city centre. Public transport options include:
Jakarta, Pintu Terminal Pulo Gebang has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.
Food options include: Food court and various food stalls available
Free Wi-Fi in terminal building. ATMs are several ATMs from different banks.
Ticket office support is available at Jakarta, Pintu Terminal Pulo Gebang.
Available at Jakarta, Pintu Terminal Pulo Gebang: Parking, Taxis, WC.
Accessibility facilities are available at Jakarta, Pintu Terminal Pulo Gebang: Wheelchair ramps, dedicated assistance.
Jakarta, Pasar Rebo is 12 km from Jakarta city centre. Public transport options include:
Jakarta, Pasar Rebo has practical services for this route, including Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.
Food options include: Local food stalls and small restaurants nearby
ATMs are several ATMs from major banks nearby.
Ticket office support is available at Jakarta, Pasar Rebo.
Available at Jakarta, Pasar Rebo: Parking, Taxis, WC.
Accessibility facilities are available at Jakarta, Pasar Rebo: Basic ramps available.
Jakarta, Grogol is 8 km from Jakarta city centre. Public transport options include:
Jakarta, Grogol has practical services for this route, including Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.
Food options include: Local food stalls and small restaurants nearby
ATMs are several ATMs from major banks nearby.
Ticket office support is available at Jakarta, Grogol.
Available at Jakarta, Grogol: Parking, Taxis, WC.
Accessibility facilities are available at Jakarta, Grogol: Basic ramps available.
Check bus stations information for Semarang and Jakarta, including where buses depart and arrive on this route.
Here are some other resources that might have the information you need