Surabaya to Semarang bus

Tue, Mar 10
+ Add return
FlixBus
Alsa
Costa Verde
BlaBlaCar Bus
Rede Expressos
1,000+ travel companies
FlixBus
Alsa
Costa Verde
BlaBlaCar Bus
Rede Expressos
1,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 Surabaya to Semarang

Showing times and prices for Mar 11

Cheapest price

$10

Average price

$16

Fastest journey

5 h 15 m

Average duration

5 h 19 m

Buses per day

34

Distance

259 km

Cheap tickets

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 $16 if you buy it on the day, but the cheapest tickets can be found for only $10.

Fast buses

Of the 34 buses that leave Surabaya for Semarang on Wed, Mar 11, 34 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.

On Wed, Mar 11 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 Wed, Mar 11 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.

Sugeng RahayuSUGENG RAHAYU
06:00PM8h00
Waru, Bus Terminal Purabaya/Bungurasih
02:00AMSemarang, Bus Terminal Mangkang
$101One-way
0 transfers
Sugeng RahayuSUGENG RAHAYU
06:00AM8h00
Waru, Bus Terminal Purabaya/Bungurasih
02:00PMSemarang, Bus Terminal Mangkang
$101One-way
0 transfers
Sugeng RahayuSUGENG RAHAYU
06:30PM5h20
Waru, Bus Terminal Purabaya/Bungurasih
11:50PMSemarang, Bus Terminal Terboyo
$101One-way
0 transfers
Sugeng RahayuSUGENG RAHAYU
08:00PM8h00
Waru, Bus Terminal Purabaya/Bungurasih
04:00AMSemarang, Bus Terminal Mangkang
$101One-way
0 transfers
Sugeng RahayuSUGENG RAHAYU
09:15AM8h00
Waru, Bus Terminal Purabaya/Bungurasih
05:15PMSemarang, Bus Terminal Mangkang
$101One-way
0 transfers

Travel Information

Compare train, bus, and flight for Surabaya to Semarang

Omio recommends booking the flight as it is the most popular option from Surabaya to Semarang among Omio's users. If you are prioritising price take the bus with prices starting from $6. For those with little time consider booking a flight which can get you there in 1h 57m. The ticket price range depends on the travel mode: a bus costs an average of $6, and a flight costs an average of $51.

Distance: 160 miles (259 km)

Compare bus with

Bus
Most popular
Flight
Train

$8

Average price

Cheapest

$76

Average price

$20

Average price

6h 7m

Average total duration

5h 37m

Onboard

+

30m

Additional time*

4h 57m

Average total duration

Fastest

1h 57m

Onboard

+

3h 0m

Additional time*

4h 14m

Average total duration

3h 44m

Onboard

+

30m

Additional time*

Direct Options

Direct Options

Direct Options

Surabaya to Semarang Bus Timetables

OperatorDeparture TimeArrival TimeDurationDeparture daysCheapest price
Operator
Sugeng Rahayu
Departure Time
06:00AM
Arrival Time
02:00PM
Duration
8h00
Departure days
Tue, Wed
Cheapest price
$10
Operator
Sugeng Rahayu
Departure Time
06:55AM
Arrival Time
02:55PM
Duration
8h00
Departure days
Tue, Wed
Cheapest price
$10
Operator
Harapan Jaya
Departure Time
09:00AM
Arrival Time
04:00PM
Duration
7h00
Departure days
Tue, Wed
Cheapest price
$13
Operator
Harapan Jaya
Departure Time
09:15AM
Arrival Time
06:15PM
Duration
9h00
Departure days
Tue, Wed
Cheapest price
$13
Operator
Sugeng Rahayu
Departure Time
09:15AM
Arrival Time
05:15PM
Duration
8h00
Departure days
Tue, Wed
Cheapest price
$10
Operator
Harapan Jaya
Departure Time
10:00AM
Arrival Time
07:00PM
Duration
9h00
Departure days
Tue, Wed
Cheapest price
$18
Operator
Sugeng Rahayu
Departure Time
10:45AM
Arrival Time
06:45PM
Duration
8h00
Departure days
Tue, Wed
Cheapest price
$10
Operator
Harapan Jaya
Departure Time
11:45AM
Arrival Time
08:45PM
Duration
9h00
Departure days
Tue, Wed
Cheapest price
$18
Operator
Harapan Jaya
Departure Time
12:00PM
Arrival Time
07:00PM
Duration
7h00
Departure days
Tue, Wed
Cheapest price
$18
Operator
Sugeng Rahayu
Departure Time
12:45PM
Arrival Time
08:45PM
Duration
8h00
Departure days
Tue, Wed
Cheapest price
$10
Operator
Harapan Jaya
Departure Time
01:00PM
Arrival Time
10:00PM
Duration
9h00
Departure days
Tue, Wed
Cheapest price
$18
Operator
Harapan Jaya
Departure Time
02:00PM
Arrival Time
11:00PM
Duration
9h00
Departure days
Tue, Wed
Cheapest price
$15
Operator
3M Transport (Sari Indah)
Departure Time
02:00PM
Arrival Time
07:33PM
Duration
5h33
Departure days
Tue, Wed
Cheapest price
$21
Operator
Harapan Jaya
Departure Time
03:00PM
Arrival Time
10:00PM
Duration
7h00
Departure days
Tue, Wed
Cheapest price
$18
Operator
Infobus
Departure Time
03:00PM
Arrival Time
08:15PM
Duration
5h15
Departure days
Tue, Wed
Cheapest price
$20
Operator
Harapan Jaya
Departure Time
03:05PM
Arrival Time
12:05AM
Duration
9h00
Departure days
Tue, Wed
Cheapest price
$18
Operator
Sugeng Rahayu
Departure Time
03:15PM
Arrival Time
11:15PM
Duration
8h00
Departure days
Tue, Wed
Cheapest price
$10
Operator
Harapan Jaya
Departure Time
04:01PM
Arrival Time
01:01AM
Duration
9h00
Departure days
Tue, Wed
Cheapest price
$15
Operator
Harapan Jaya
Departure Time
05:00PM
Arrival Time
12:00AM
Duration
7h00
Departure days
Tue, Wed
Cheapest price
$15
Operator
Infobus
Departure Time
05:00PM
Arrival Time
11:25PM
Duration
6h25
Departure days
Tue, Wed
Cheapest price
$20
Operator
Harapan Jaya
Departure Time
05:10PM
Arrival Time
02:10AM
Duration
9h00
Departure days
Tue, Wed
Cheapest price
$15
Operator
Harapan Jaya
Departure Time
05:30PM
Arrival Time
12:30AM
Duration
7h00
Departure days
Tue, Wed
Cheapest price
$15
Operator
Harapan Jaya
Departure Time
05:40PM
Arrival Time
02:40AM
Duration
9h00
Departure days
Tue, Wed
Cheapest price
$15
Operator
Sugeng Rahayu
Departure Time
06:00PM
Arrival Time
02:00AM
Duration
8h00
Departure days
Tue, Wed
Cheapest price
$10
Operator
Sugeng Rahayu
Departure Time
06:30PM
Arrival Time
11:50PM
Duration
5h20
Departure days
Tue, Wed
Cheapest price
$10
Operator
3M Transport (Sari Indah)
Departure Time
07:00PM
Arrival Time
12:20AM
Duration
5h20
Departure days
Tue, Wed
Cheapest price
$21
Operator
Sugeng Rahayu
Departure Time
08:00PM
Arrival Time
04:00AM
Duration
8h00
Departure days
Tue, Wed
Cheapest price
$10
Operator
Harapan Jaya
Departure Time
08:30PM
Arrival Time
03:30AM
Duration
7h00
Departure days
Tue, Wed
Cheapest price
$15
Operator
Harapan Jaya
Departure Time
08:45PM
Arrival Time
05:45AM
Duration
9h00
Departure days
Tue, Wed
Cheapest price
$15
Operator
3M Transport (Sari Indah)
Departure Time
09:00PM
Arrival Time
02:20AM
Duration
5h20
Departure days
Tue, Wed
Cheapest price
$21

Live departures

Surabaya to Semarang bus times

The table below shows live departures for Surabaya to Semarang buses for today, Tuesday, March 10. You can also manually refresh the results below to see updated bus journeys.

Last updated at 2:32 AM
ProviderDepartsDurationArrivesTransfers
Tickets
ESB_304_HARAPAN_JAYAHARAPAN JAYA3:00 AM Surabaya, Genteng
9h00
12:00 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA3:00 AM Waru, Medaeng
7h00
10:00 AM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
ESB_3054_SUGENG_RAHAYUSUGENG RAHAYU3:45 AM Waru, Bus Terminal Purabaya/Bungurasih
8h00
11:45 AM Semarang, Bus Terminal Mangkang0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA4:45 AM Waru, Bus Terminal Purabaya/Bungurasih
9h00
1:45 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA5:00 AM Waru, Medaeng
7h00
12:00 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
ESB_3054_SUGENG_RAHAYUSUGENG RAHAYU5:45 AM Waru, Bus Terminal Purabaya/Bungurasih
8h00
1:45 PM Semarang, Bus Terminal Mangkang0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA6:00 AM Surabaya, Genteng
9h00
3:00 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA7:00 AM Surabaya, Genteng
9h00
4:00 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
ESB_1197_3M_TRANSPORT3M TRANSPORT (SARI INDAH)7:00 AM Waru, Bus Terminal Purabaya/Bungurasih
5h33
12:33 PM Semarang, Bus Terminal Mangkang0 transfersDirect
ESB_1197_3M_TRANSPORT3M TRANSPORT (SARI INDAH)7:00 AM Waru, Bus Terminal Purabaya/Bungurasih
5h20
12:20 PM Semarang, Bus Terminal Terboyo0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA8:00 AM Waru, Medaeng
7h00
3:00 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
ams_infobus08:00 AM Surabaya Kota
5h15
1:15 PM Semarang0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA8:05 AM Waru, Bus Terminal Purabaya/Bungurasih
9h00
5:05 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
ESB_3054_SUGENG_RAHAYUSUGENG RAHAYU8:15 AM Waru, Bus Terminal Purabaya/Bungurasih
8h00
4:15 PM Semarang, Bus Terminal Mangkang0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA9:01 AM Surabaya, Genteng
9h00
6:01 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
ams_infobus010:00 AM Surabaya Kota
6h25
4:25 PM Semarang0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA10:00 AM Waru, Medaeng
7h00
5:00 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA10:10 AM Waru, Bus Terminal Purabaya/Bungurasih
9h00
7:10 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA10:30 AM Waru, Medaeng
7h00
5:30 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA10:40 AM Waru, Bus Terminal Purabaya/Bungurasih
9h00
7:40 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
ESB_3054_SUGENG_RAHAYUSUGENG RAHAYU11:00 AM Waru, Bus Terminal Purabaya/Bungurasih
8h00
7:00 PM Semarang, Bus Terminal Mangkang0 transfersDirect
ESB_3054_SUGENG_RAHAYUSUGENG RAHAYU11:30 AM Waru, Bus Terminal Purabaya/Bungurasih
5h20
4:50 PM Semarang, Bus Terminal Terboyo0 transfersDirect
ESB_1197_3M_TRANSPORT3M TRANSPORT (SARI INDAH)12:00 PM Waru, Bus Terminal Purabaya/Bungurasih
5h20
5:20 PM Semarang, Bus Terminal Terboyo0 transfersDirect
ESB_1197_3M_TRANSPORT3M TRANSPORT (SARI INDAH)12:00 PM Waru, Bus Terminal Purabaya/Bungurasih
5h33
5:33 PM Semarang, Bus Terminal Mangkang0 transfersDirect
ESB_3054_SUGENG_RAHAYUSUGENG RAHAYU1:00 PM Waru, Bus Terminal Purabaya/Bungurasih
8h00
9:00 PM Semarang, Bus Terminal Mangkang0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA1:30 PM Waru, Medaeng
7h00
8:30 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA1:45 PM Waru, Bus Terminal Purabaya/Bungurasih
9h00
10:45 PM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
ESB_1197_3M_TRANSPORT3M TRANSPORT (SARI INDAH)2:00 PM Waru, Bus Terminal Purabaya/Bungurasih
5h20
7:20 PM Semarang, Bus Terminal Terboyo0 transfersDirect
ESB_1197_3M_TRANSPORT3M TRANSPORT (SARI INDAH)2:00 PM Waru, Bus Terminal Purabaya/Bungurasih
5h33
7:33 PM Semarang, Bus Terminal Mangkang0 transfersDirect
ESB_3054_SUGENG_RAHAYUSUGENG RAHAYU11:00 PM Waru, Bus Terminal Purabaya/Bungurasih
8h00
7:00 AM Semarang, Bus Terminal Mangkang0 transfersDirect
ESB_3054_SUGENG_RAHAYUSUGENG RAHAYU11:55 PM Waru, Bus Terminal Purabaya/Bungurasih
8h00
7:55 AM Semarang, Bus Terminal Mangkang0 transfersDirect
Wednesday, March 11
ESB_304_HARAPAN_JAYAHARAPAN JAYA2:00 AM Waru, Medaeng
7h00
9:00 AM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA2:15 AM Waru, Bus Terminal Purabaya/Bungurasih
9h00
11:15 AM Semarang, Candisari (SPBU Dokter Wahidin)0 transfersDirect
ESB_3054_SUGENG_RAHAYUSUGENG RAHAYU2:15 AM Waru, Bus Terminal Purabaya/Bungurasih
8h00
10:15 AM Semarang, Bus Terminal Mangkang0 transfersDirect

This is the last bus of the day.

Find all the dates and times for this journey

Compare prices and tickets Surabaya 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.

Wed
Mar 11
Thu
Mar 12
Fri
Mar 13
Sat
Mar 14
Sun
Mar 15
Mon
Mar 16
Tue
Mar 17

Journey information

Overview: Bus from Surabaya to Semarang

IndonesiaIndonesia
IndonesiaIndonesia
Icon of bus

Buses from Surabaya to Semarang run on average 31 times per day, taking around 5h 37m. Cheap bus tickets for this journey start at $6 (€5) if you book in advance.

There are 31 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 20m.

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
160 miles (259 km)
Average bus duration
5h 37m
Cheapest ticket price
$6 (€5)
Buses per day
31
Direct buses
31
Fastest bus
5h 20m
First bus
00:20
Last bus
23:30
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

FAQs: Bus from Surabaya to 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.

FAQs
Cheap bus tickets from Surabaya to Semarang can start from as little as $6 (€5) when you book in advance. The average bus ticket price for Surabaya to Semarang is $8 (€6) ; 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 Surabaya to Semarang is 5h 20m to travel the 160 miles (259 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 Surabaya to Semarang leaves at 12:20 AM. Plan your trip with the Journey Planner from Omio.
The latest bus from Surabaya to Semarang leaves at 11:30 PM.
When departing from Surabaya , you have various bus station options to start your journey from including Waru, Bus Terminal Purabaya/Bungurasih, Waru, Medaeng, Surabaya Kota, Agent Surabaya, Surabaya, Genteng, Surabaya, Waru . When arriving in Semarang , you can end your journey in bus stations like Semarang, Bus Terminal Mangkang, Semarang, Bus Terminal Terboyo, Semarang, Candisari (SPBU Dokter Wahidin), Kota Semarang, Office Perwakilan Semarang, Semarang .Passengers board the bus most frequently from Waru, Bus Terminal Purabaya/Bungurasih, which is located around 1 away from the city centre, and they get off the bus at Semarang, Bus Terminal Mangkang, located 14 away from the city centre.
A trip to Semarang from Surabaya is worth doing but not as a day trip with a journey time of 5h 20m each way. Check with Omio app the best way to travel.
The cheapest month for a bus from Surabaya to Semarang is October.
It's helpful to compare your options as there are 3 ways to travel between Surabaya and Semarang including taking a train, bus, and flight.
No, there are no bathrooms on board the bus from Surabaya to Semarang.
No, the bus from Surabaya to Semarang has no accessibility options.
No, bikes are not allowed on board the bus from Surabaya 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.
No, there is no food available to purchase on board the bus from Surabaya to Semarang.
No, luggage for the bus from Surabaya to Semarang needs to be booked in addition.
No, there are no additional luggage options for the bus from Surabaya to Semarang.
Unfortunately, pets are not allowed on the bus from Surabaya to Semarang.
No, there are no USB plugs on board the bus from Surabaya to Semarang.
No, there is no WiFi on board the bus from Surabaya to Semarang.

popular bus stations

Popular bus stations from Surabaya to Semarang

Surabaya
Semarang
The major bus station for departures in Surabaya is Waru, Terminal Purabaya/Bungurasih. Find all the information you need to know about services, amenities and connections at Waru, Terminal Purabaya/Bungurasih for your trip from Surabaya to Semarang.
Amenities at bus station
WifiWifi
ParkingParking
DiningDining
ATMATM
TaxisTaxis
AccessibilityAccessibility
WCWC
Ticket OfficeTicket Office
information
ticketOfficeHours
Ticket Office Hours
  • 04:00-24:00
ticketOfficeHours
Distance to city center
1 km
carConnection
Car connection
Via Waru Highway and Ahmad Yani Street
Wifi
Wifi
  • Free Wi-Fi available in terminal
Parking
Parking
  • Large parking area available for cars and motorcycles
Dining
Dining
  • Food court and various food stalls available
Taxis
Taxis
  • Available at designated taxi stand
Accessibility
Accessibility
  • Wheelchair ramps, assistance available
WC
WC
  • Public toilets available with fee
Public transit options for Waru, Terminal Purabaya/Bungurasih
  • Bus: City buses, intercity buses
  • Angkot (shared taxi)
Amenities at bus station
WifiWifi
ParkingParking
DiningDining
ATMATM
TaxisTaxis
AccessibilityAccessibility
WCWC
Ticket OfficeTicket Office
information
ticketOfficeHours
Ticket Office Hours
  • 05:00-21:00
carConnection
Car connection
Jalan Semut Kali
Wifi
Wifi
  • Free Wi-Fi available
Parking
Parking
  • Available in front of terminal
Dining
Dining
  • Local food stalls and small restaurants nearby
Taxis
Taxis
  • Available at designated taxi stands
Accessibility
Accessibility
  • Wheelchair ramps
WC
WC
  • Public toilets available
Public transit options for Surabaya Kota
  • Bus: City Transport Lines, Inter-city Buses
  • Train: Nearby Surabaya Kota Station
Amenities at bus station
WifiWifi
ParkingParking
DiningDining
ATMATM
TaxisTaxis
AccessibilityAccessibility
WCWC
Ticket OfficeTicket Office
information
ticketOfficeHours
Ticket Office Hours
  • 24 hours
ticketOfficeHours
Distance to city center
2 km
carConnection
Car connection
Jalan Raya Bungurasih
Wifi
Wifi
  • Free Wi-Fi available
Parking
Parking
  • Available parking area for cars and motorcycles
Dining
Dining
  • Food court and various food stalls available
Taxis
Taxis
  • Available at designated taxi stand
Accessibility
Accessibility
  • Wheelchair ramps available
WC
WC
  • Public toilets available
Public transit options for Agen Surabaya
  • Bus: City bus, Inter-city bus
  • Angkot (public minivan)

More options for your journey from Surabaya 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