- Must visit
Museum Lawang Sewu
Museum inside the former railway headquarters, presenting colonial-era spaces, rail history, and immersive exhibits in one of Semarang’s best-known heritage sites.
The best way to find a cheap bus ticket from Surabaya to Semarang is to book your journey as far in advance as possible and to avoid traveling at rush hour.
The average ticket from Surabaya to Semarang will cost around S$ 17 if you buy it on the day, but the cheapest tickets can be found for only S$ 8.
On Fri, Oct 30, we found 27 buses from Surabaya to Semarang, including 27 direct services.
On Fri, Oct 30 the direct buses cover the 259 km distance in an average of 5 h 19 m but if you time it right, some buses will get you there in just 5 h 15 m .
On Fri, Oct 30 the slowest buses will take 5 h 20 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.
WIDJI LESTARI
|
| ||||||||||||
WIDJI LESTARI
|
| ||||||||||||
WIDJI LESTARI
|
| ||||||||||||
WIDJI LESTARI
|
| ||||||||||||
WIDJI LESTARI
|
| ||||||||||||
0
|
| ||||||||||||
WIDJI LESTARI
|
| ||||||||||||
WIDJI LESTARI
|
| ||||||||||||
WIDJI LESTARI
|
| ||||||||||||
WIDJI LESTARI
|
| ||||||||||||
Buses from Surabaya to Semarang run on average 23 times per day, taking around 7h 15m. Cheap bus tickets for this journey start at S$ 8 if you book in advance.
There are 23 buses per day. The earliest bus runs at 00:20, the last at 23:30. The fastest bus covers the 160 miles (259 km) distance in 5h 13m.
Plan this route
Use these quick route answers to check fares, travel time, departure options, and direct services before booking from Surabaya to Semarang.
| Operator | Departure Time | Arrival Time | Duration | Departure days | Cheapest price |
|---|---|---|---|---|---|
Operator Sugeng Rahayu | Departure Time 03:45AM | Arrival Time 11:45AM | Duration 8h00 | Departure days Mon, Tue, Wed | Cheapest price S$ 13 |
Operator Sugeng Rahayu | Departure Time 08:15AM | Arrival Time 04:15PM | Duration 8h00 | Departure days Tue, Wed, Sun | Cheapest price S$ 13 |
Operator Harapan Jaya | Departure Time 09:00AM | Arrival Time 04:00PM | Duration 7h00 | Departure days Thu, Fri | Cheapest price S$ 19 |
Operator Harapan Jaya | Departure Time 09:15AM | Arrival Time 06:15PM | Duration 9h00 | Departure days Thu, Fri | Cheapest price S$ 19 |
Operator Sugeng Rahayu | Departure Time 09:15AM | Arrival Time 05:15PM | Duration 8h00 | Departure days Thu, Fri | Cheapest price S$ 13 |
Operator Widji Lestari | Departure Time 10:00AM | Arrival Time 03:20PM | Duration 5h20 | Departure days Mon, Tue, Wed, Sat, Sun | Cheapest price S$ 8 |
Operator Harapan Jaya | Departure Time 10:00AM | Arrival Time 07:00PM | Duration 9h00 | Departure days Thu, Fri | Cheapest price S$ 23 |
Operator Harapan Jaya | Departure Time 11:45AM | Arrival Time 08:45PM | Duration 9h00 | Departure days Thu, Fri | Cheapest price S$ 23 |
Operator Harapan Jaya | Departure Time 12:00PM | Arrival Time 07:00PM | Duration 7h00 | Departure days Thu, Fri | Cheapest price S$ 23 |
Operator 3M Transport (Sari Indah) | Departure Time 12:00PM | Arrival Time 05:33PM | Duration 5h33 | Departure days Sat | Cheapest price S$ 12 |
Operator Widji Lestari | Departure Time 12:40PM | Arrival Time 06:00PM | Duration 5h20 | Departure days Thu, Fri | Cheapest price S$ 8 |
Operator Harapan Jaya | Departure Time 01:00PM | Arrival Time 10:00PM | Duration 9h00 | Departure days Thu, Fri | Cheapest price S$ 28 |
Operator Widji Lestari | Departure Time 01:30PM | Arrival Time 06:50PM | Duration 5h20 | Departure days Thu, Fri | Cheapest price S$ 8 |
Operator Widji Lestari | Departure Time 01:45PM | Arrival Time 07:05PM | Duration 5h20 | Departure days Thu, Fri | Cheapest price S$ 13 |
Operator Widji Lestari | Departure Time 02:05PM | Arrival Time 07:25PM | Duration 5h20 | Departure days Thu, Fri | Cheapest price S$ 8 |
Operator Widji Lestari | Departure Time 03:00PM | Arrival Time 08:20PM | Duration 5h20 | Departure days Thu, Fri | Cheapest price S$ 13 |
Operator Harapan Jaya | Departure Time 03:00PM | Arrival Time 10:00PM | Duration 7h00 | Departure days Thu, Fri | Cheapest price S$ 28 |
Operator Infobus | Departure Time 03:00PM | Arrival Time 08:15PM | Duration 5h15 | Departure days Thu, Fri | Cheapest price S$ 16 |
Operator Harapan Jaya | Departure Time 03:05PM | Arrival Time 12:05AM | Duration 9h00 | Departure days Thu, Fri | Cheapest price S$ 28 |
Operator Sugeng Rahayu | Departure Time 03:15PM | Arrival Time 11:15PM | Duration 8h00 | Departure days Thu, Fri | Cheapest price S$ 13 |
Operator Widji Lestari | Departure Time 03:50PM | Arrival Time 09:10PM | Duration 5h20 | Departure days Thu, Fri | Cheapest price S$ 8 |
Operator Harapan Jaya | Departure Time 04:01PM | Arrival Time 01:01AM | Duration 9h00 | Departure days Fri | Cheapest price S$ 19 |
Operator Widji Lestari | Departure Time 04:10PM | Arrival Time 09:30PM | Duration 5h20 | Departure days Thu, Fri | Cheapest price S$ 13 |
Operator Harapan Jaya | Departure Time 04:45PM | Arrival Time 01:45AM | Duration 9h00 | Departure days Fri | Cheapest price S$ 19 |
Operator Infobus | Departure Time 05:00PM | Arrival Time 12:00AM | Duration 7h00 | Departure days Thu | Cheapest price S$ 17 |
Operator Widji Lestari | Departure Time 05:00PM | Arrival Time 10:20PM | Duration 5h20 | Departure days Thu, Fri | Cheapest price S$ 8 |
Operator Widji Lestari | Departure Time 05:10PM | Arrival Time 10:30PM | Duration 5h20 | Departure days Thu, Fri | Cheapest price S$ 13 |
Operator Harapan Jaya | Departure Time 05:30PM | Arrival Time 12:30AM | Duration 7h00 | Departure days Fri | Cheapest price S$ 19 |
Operator Harapan Jaya | Departure Time 05:40PM | Arrival Time 02:40AM | Duration 9h00 | Departure days Fri | Cheapest price S$ 19 |
Operator ELING TRANS | Departure Time 06:00PM | Arrival Time 11:49PM | Duration 5h49 | Departure days Fri | Cheapest price S$ 22 |
Operator Harapan Jaya | Departure Time 08:30PM | Arrival Time 03:30AM | Duration 7h00 | Departure days Thu, Fri | Cheapest price S$ 19 |
Operator Harapan Jaya | Departure Time 08:45PM | Arrival Time 05:45AM | Duration 9h00 | Departure days Thu, Fri | Cheapest price S$ 19 |
The table below shows live departures for Surabaya to Semarang 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 |
|---|---|---|---|---|---|
HARAPAN JAYA | 9:00 AM Waru, Medaeng | 7h00 | 4:00 PM Semarang, Candisari (SPBU Dokter Wahidin) | 0 transfersDirect | |
SUGENG RAHAYU | 9:15 AM Waru, Bus Terminal Purabaya/Bungurasih | 8h00 | 5:15 PM Semarang, Bus Terminal Mangkang | 0 transfersDirect | |
HARAPAN JAYA | 9:15 AM Waru, Bus Terminal Purabaya/Bungurasih | 9h00 | 6:15 PM Semarang, Candisari (SPBU Dokter Wahidin) | 0 transfersDirect | |
HARAPAN JAYA | 10:00 AM Surabaya, Genteng | 9h00 | 7:00 PM Semarang, Candisari (SPBU Dokter Wahidin) | 0 transfersDirect | |
HARAPAN JAYA | 11:45 AM Waru, Bus Terminal Purabaya/Bungurasih | 9h00 | 8:45 PM Semarang, Candisari (SPBU Dokter Wahidin) | 0 transfersDirect | |
HARAPAN JAYA | 12:00 PM Waru, Medaeng | 7h00 | 7:00 PM Semarang, Candisari (SPBU Dokter Wahidin) | 0 transfersDirect | |
WIDJI LESTARI | 12:40 PM Waru, Bus Terminal Purabaya/Bungurasih | 5h20 | 6:00 PM Semarang, Bus Terminal Terboyo | 0 transfersDirect | |
HARAPAN JAYA | 1:00 PM Surabaya, Genteng | 9h00 | 10:00 PM Semarang, Candisari (SPBU Dokter Wahidin) | 0 transfersDirect | |
0 | 3:00 PM Surabaya | 5h15 | 8:15 PM Semarang | 0 transfersDirect | |
WIDJI LESTARI | 1:30 PM Waru, Bus Terminal Purabaya/Bungurasih | 5h20 | 6:50 PM Semarang, Bus Terminal Terboyo | 0 transfersDirect | |
WIDJI LESTARI | 1:45 PM Waru, Bus Terminal Purabaya/Bungurasih | 5h20 | 7:05 PM Semarang, Bus Terminal Terboyo | 0 transfersDirect | |
WIDJI LESTARI | 2:05 PM Waru, Bus Terminal Purabaya/Bungurasih | 5h20 | 7:25 PM Semarang, Bus Terminal Terboyo | 0 transfersDirect | |
WIDJI LESTARI | 3:00 PM Waru, Bus Terminal Purabaya/Bungurasih | 5h20 | 8:20 PM Semarang, Bus Terminal Terboyo | 0 transfersDirect | |
HARAPAN JAYA | 3:00 PM Waru, Medaeng | 7h00 | 10:00 PM Semarang, Candisari (SPBU Dokter Wahidin) | 0 transfersDirect | |
HARAPAN JAYA | 3:05 PM Waru, Bus Terminal Purabaya/Bungurasih | 9h00 | 12:05 AM Semarang, Candisari (SPBU Dokter Wahidin) | 0 transfersDirect | |
SUGENG RAHAYU | 3:15 PM Waru, Bus Terminal Purabaya/Bungurasih | 8h00 | 11:15 PM Semarang, Bus Terminal Mangkang | 0 transfersDirect | |
WIDJI LESTARI | 3:50 PM Waru, Bus Terminal Purabaya/Bungurasih | 5h20 | 9:10 PM Semarang, Bus Terminal Terboyo | 0 transfersDirect | |
HARAPAN JAYA | 4:01 PM Surabaya, Genteng | 9h00 | 1:01 AM Semarang, Candisari (SPBU Dokter Wahidin) | 0 transfersDirect | |
WIDJI LESTARI | 4:10 PM Waru, Bus Terminal Purabaya/Bungurasih | 5h20 | 9:30 PM Semarang, Bus Terminal Terboyo | 0 transfersDirect | |
HARAPAN JAYA | 4:45 PM Surabaya, Genteng | 9h00 | 1:45 AM Semarang, Candisari (SPBU Dokter Wahidin) | 0 transfersDirect | |
WIDJI LESTARI | 5:00 PM Waru, Bus Terminal Purabaya/Bungurasih | 5h20 | 10:20 PM Semarang, Bus Terminal Terboyo | 0 transfersDirect | |
WIDJI LESTARI | 5:10 PM Waru, Bus Terminal Purabaya/Bungurasih | 5h20 | 10:30 PM Semarang, Bus Terminal Terboyo | 0 transfersDirect | |
HARAPAN JAYA | 5:30 PM Waru, Medaeng | 7h00 | 12:30 AM Semarang, Candisari (SPBU Dokter Wahidin) | 0 transfersDirect | |
HARAPAN JAYA | 5:40 PM Waru, Bus Terminal Purabaya/Bungurasih | 9h00 | 2:40 AM Semarang, Candisari (SPBU Dokter Wahidin) | 0 transfersDirect | |
ELING TRANS | 6:00 PM Surabaya Kota | 5h49 | 11:49 PM Kota Semarang | 0 transfersDirect | |
HARAPAN JAYA | 8:30 PM Waru, Medaeng | 7h00 | 3:30 AM Semarang, Candisari (SPBU Dokter Wahidin) | 0 transfersDirect | |
HARAPAN JAYA | 8:45 PM Waru, Bus Terminal Purabaya/Bungurasih | 9h00 | 5:45 AM Semarang, Candisari (SPBU Dokter Wahidin) | 0 transfersDirect | |
This is the last bus of the day. | |||||
Find all the dates and times for this journey
Buses from Surabaya to Semarang with Harapan Jaya, Widji Lestari, and Sugeng Rahayu. Use the details below to compare onboard facilities.
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 Semarang — top attractions, local food, transport tips, budget advice, and currency essentials. Plan your perfect Semarang trip today.
Museum inside the former railway headquarters, presenting colonial-era spaces, rail history, and immersive exhibits in one of Semarang’s best-known heritage sites.
Well-curated old-town museum covering Semarang’s urban development, trade, and multicultural history through maps, photos, and restored colonial interiors.
Military museum with weapons, uniforms, and historical displays related to regional defense history. A quieter stop for visitors interested in Indonesia’s past.
Semarang’s restored old town district with colonial streetscapes, galleries, public spaces, and night lighting. Ideal for walking, photos, and architecture.
Large urban park and civic square near Simpang Lima, used for walking, relaxation, and local events. A practical stop in the city center.
Popular hilltop viewpoint area with broad city and coastline panoramas, especially attractive around sunset and evening when city lights appear.
Rice steamed in banana leaves with coconut milk, served with chicken, egg, tofu and spicy opor-style gravy. A festive Semarang breakfast with Javanese-Chinese roots.
Semarang's iconic spring roll filled with bamboo shoots, egg and usually shrimp or chicken. A classic Peranakan snack blending Chinese and Javanese flavors.
Clear beef soup with fried shallots, celery and tomato, often eaten with rice. A long-standing local comfort dish influenced by Javanese and colonial tastes.
Well-known spot for soto ayam and Semarang-style soups in a straightforward family dining setting popular with residents.
Historic specialist for Semarang spring rolls, serving classic lumpia in a simple long-established setting in the old Chinatown area.
Casual local favorite for tahu gimbal, lontong and other Semarang staples. Busy, unfussy atmosphere focused on traditional flavors.
Budget-friendly versus many Asian city breaks: low meal, ride-hailing, and hotel costs, with upscale dining and international hotels still affordable by regional standards.
Tipping is appreciated but not required. Restaurants may add service. Round up for cafes and taxis, or leave 5-10% for good service.
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 Semarang.
Find answers to the most common questions about traveling from Surabaya 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.

Most Surabaya to Semarang buses use the Waru, Terminal Purabaya/Bungurasih to Semarang, Terminal Terboyo station pair, with some services arriving at Semarang, Terminal Mangkang. Use this guide to compare Surabaya and Semarang bus stations on this route, check city-centre transport, alongside checking practicalities like bus station facilities and services.
Waru, Terminal Purabaya/Bungurasih is 1 km from Surabaya city centre. Public transport options include:
Waru, Terminal Purabaya/Bungurasih 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 available in terminal. ATMs are several ATMs from different banks.
Ticket office support is available at Waru, Terminal Purabaya/Bungurasih.
Available at Waru, Terminal Purabaya/Bungurasih: Parking, Taxis, WC.
Accessibility facilities are available at Waru, Terminal Purabaya/Bungurasih: Wheelchair ramps, assistance available.
Waru, Medaeng is 1 km from Surabaya city centre. Public transport options include:
Waru, Medaeng has practical services for this route, including Wifi, Parking, ATM, Taxis, Accessibility, WC, Shower, and Ticket Office.
Wi-Fi is available at Waru, Medaeng. ATMs are available at Waru, Medaeng.
Ticket office support is available at Waru, Medaeng.
Available at Waru, Medaeng: Parking, Taxis, WC.
Accessibility facilities are available at Waru, Medaeng: Limited accessibility options.
Surabaya, Genteng is 1 km from Surabaya city centre. Public transport options include:
Surabaya, Genteng 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 near terminal.
Ticket office support is available at Surabaya, Genteng.
Available at Surabaya, Genteng: Parking, Taxis, WC.
Accessibility facilities are available at Surabaya, Genteng: Basic ramps available.
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, Terminal Terboyo is 6 km from Semarang city centre. Public transport options include:
Semarang, Terminal Terboyo has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.
Food options include: Food stalls and small eateries 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 Terboyo.
Available at Semarang, Terminal Terboyo: Parking, Taxis, WC.
Accessibility facilities are available at Semarang, Terminal Terboyo: Accessible facilities including ramps and designated seating areas.
Semarang, Terminal Mangkang is 14 km from Semarang city centre. Public transport options include:
Semarang, Terminal Mangkang 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 around the terminal
ATMs are aTM booth inside terminal.
Ticket office support is available at Semarang, Terminal Mangkang.
Available at Semarang, Terminal Mangkang: Parking, Taxis, WC.
Accessibility facilities are available at Semarang, Terminal Mangkang: Wheelchair ramps.
Check bus stations information for Surabaya and Semarang, including where buses depart and arrive on this route.