Get 15% off your next bus trip in Southeast Asia! Offer valid until 04/06/2025
Terms and conditions

Jakarta to Surabaya bus

Tue, May 13
+ Add return
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 Surabaya

Showing times and prices for May 14

Cheapest price

$16

Average price

$24

Fastest journey

12 h 2 m

Average duration

12 h 2 m

Buses per day

58

Distance

662 km

Cheap tickets

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

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

Fast buses

Of the 58 buses that leave Jakarta for Surabaya on Wed, May 14, 58 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.

On Wed, May 14 the direct buses cover the 662 km distance in an average of 12 h 2 m but if you time it right, some buses will get you there in just 12 h 2 m .

On Wed, May 14 the slowest buses will take 12 h 2 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)
08:00PM12h56
Jakarta
08:56AMSurabaya
$161One-way
0 transfers
3M Transport (Sari Indah)
10:00PM12h06
Jakarta
10:06AMSurabaya
$161One-way
0 transfers
3M Transport (Sari Indah)
09:30PM12h28
Jakarta
09:58AMSurabaya
$161One-way
0 transfers
3M Transport (Sari Indah)
09:00PM12h28
Jakarta
09:28AMSurabaya
$181One-way
0 transfers
Harapan Jaya
07:30AM12h02
Jakarta
07:32PMSurabaya
$221One-way
0 transfers

Travel Information

Compare bus, train, and flight for Jakarta to Surabaya

Omio recommends booking the flight as it is the most popular option from Jakarta to Surabaya among Omio's users. If you are prioritising price take the bus with prices starting from €13. For those with little time consider booking a flight which can get you there in 1h 47m.

Compare bus with

Bus
Most popular
Flight

€17

Average price

Cheapest

€72

Average price

12h 56m

Average duration

12h 26m

Onboard

+

30m

Additional time*

4h 47m

Average duration

Fastest

1h 47m

Onboard

+

3h 0m

Additional time*

Direct Options

Direct Options

Live departures

Jakarta to Surabaya bus times

Showing buses for today, Tuesday, May 13
Last updated at 7:10 AM
ProviderDepartsDurationArrivesTransfers
Tickets
ESB_6585_KRAMAT_DJATI7:30 AM Jakarta
15h31
11:01 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA7:30 AM Jakarta
12h37
8:07 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA7:30 AM Jakarta
12h44
8:14 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA7:45 AM Jakarta
12h36
8:21 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA7:45 AM Jakarta
12h27
8:12 PM Surabaya0 transfersDirect
ESB_6585_KRAMAT_DJATI8:00 AM Jakarta
13h30
9:30 PM Surabaya0 transfersDirect
ESB_6585_KRAMAT_DJATI8:30 AM Jakarta
20h15
4:45 AM Surabaya0 transfersDirect
ESB_6585_KRAMAT_DJATI8:30 AM Jakarta
14h51
11:21 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA9:00 AM Jakarta
12h41
9:41 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA9:00 AM Jakarta
12h25
9:25 PM Surabaya0 transfersDirect
ESB_6585_KRAMAT_DJATI9:00 AM Jakarta
19h34
4:34 AM Surabaya0 transfersDirect
ESB_3687_KYM_TRANS9:15 AM Jakarta
12h37
9:52 PM Surabaya0 transfersDirect
ESB_3687_KYM_TRANS9:20 AM Jakarta
12h28
9:48 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA9:30 AM Jakarta
12h27
9:57 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA9:30 AM Jakarta
12h23
9:53 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA9:30 AM Jakarta
12h29
9:59 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA9:30 AM Jakarta
12h36
10:06 PM Surabaya0 transfersDirect
ESB_478_MAWAR9:30 AM Jakarta
12h56
10:26 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA9:45 AM Jakarta
12h29
10:14 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA10:00 AM Jakarta
12h02
10:02 PM Surabaya0 transfersDirect
ESB_478_MAWAR10:00 AM Jakarta
12h24
10:24 PM Surabaya0 transfersDirect
ESB_3687_KYM_TRANS10:15 AM Jakarta
12h06
10:21 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA10:30 AM Jakarta
12h25
10:55 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA10:30 AM Jakarta
12h41
11:11 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA10:45 AM Jakarta
12h02
10:47 PM Surabaya0 transfersDirect
ESB_3687_KYM_TRANS10:50 AM Jakarta
12h37
11:27 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA11:00 AM Jakarta
12h29
11:29 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA11:30 AM Jakarta
12h02
11:32 PM Surabaya0 transfersDirect
ESB_478_MAWAR11:30 AM Jakarta
12h28
11:58 PM Surabaya0 transfersDirect
ESB_3687_KYM_TRANS11:45 AM Jakarta
12h06
11:51 PM Surabaya0 transfersDirect
ESB_478_MAWAR12:30 PM Jakarta
12h06
12:36 AM Surabaya0 transfersDirect
ESB_1197_3M_TRANSPORT1:00 PM Jakarta
12h56
1:56 AM Surabaya0 transfersDirect
ESB_1197_3M_TRANSPORT2:00 PM Jakarta
12h28
2:28 AM Surabaya0 transfersDirect
ESB_1197_3M_TRANSPORT2:30 PM Jakarta
12h28
2:58 AM Surabaya0 transfersDirect
ESB_1197_3M_TRANSPORT3:00 PM Jakarta
12h06
3:06 AM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA11:00 PM Jakarta
12h27
11:27 AM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA11:15 PM Jakarta
12h53
12:08 PM Surabaya0 transfersDirect
ESB_3687_KYM_TRANS11:20 PM Jakarta
12h28
11:48 AM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA11:30 PM Jakarta
12h25
11:55 AM Surabaya0 transfersDirect
ESB_3687_KYM_TRANS11:30 PM Jakarta
12h37
12:07 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA11:30 PM Jakarta
12h41
12:11 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA11:30 PM Jakarta
12h37
12:07 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA11:40 PM Jakarta
12h27
12:07 PM Surabaya0 transfersDirect
Wednesday, May 14
ESB_304_HARAPAN_JAYA12:00 AM Jakarta
12h28
12:28 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA12:00 AM Jakarta
12h29
12:29 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA12:15 AM Jakarta
12h02
12:17 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA12:30 AM Jakarta
12h02
12:32 PM Surabaya0 transfersDirect
ESB_3687_KYM_TRANS12:30 AM Jakarta
12h06
12:36 PM Surabaya0 transfersDirect
ESB_6585_KRAMAT_DJATI4:30 AM Jakarta
25h39
6:09 AM Surabaya0 transfersDirect
ESB_6585_KRAMAT_DJATI4:30 AM Jakarta
20h15
12:45 AM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA6:00 AM Jakarta
12h25
6:25 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA6:00 AM Jakarta
12h41
6:41 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA6:30 AM Jakarta
12h29
6:59 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA7:00 AM Jakarta
12h02
7:02 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA7:00 AM Jakarta
12h27
7:27 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA7:00 AM Jakarta
12h30
7:30 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA7:10 AM Jakarta
12h53
8:03 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYA7:10 AM Jakarta
12h57
8:07 PM Surabaya0 transfersDirect

This is the last bus of the day.

Find all the dates and times for this journey

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

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

More than 1,000 travel companies trust us to sell their tickets all in one place.

Alsa
Eurolines France
RegioJet
Bla Bla Bus

Journey information

Overview: Bus from Jakarta to Surabaya

IndonesiaIndonesia
IndonesiaIndonesia
Icon of bus
Buses from Jakarta to Surabaya run on average 47 times per day, taking around 12h 26m. Cheap bus tickets for this journey start at $15 (€13) if you book in advance.
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
411 miles (662 km)
Average bus duration
12h 26m
Cheapest ticket price
$15 (€13)
Buses per day
47
Direct buses
47
Bus providers
6
Fastest bus
5h 6m
First bus
06:00
Last bus
22:00
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

Affordable and Comfortable Bus from Jakarta to Surabaya

For travelers seeking a reliable transportation option, taking a bus from Jakarta to Surabaya is an excellent choice. The journey begins at the bustling Gambir Bus Terminal in Jakarta, and ends at the convenient Bungurasih Bus Terminal in Surabaya. This route offers a wonderful opportunity to experience the diverse scenery along the way, making the bus journey from Jakarta to Surabaya a memorable part of your travel itinerary. Enjoy the hassle-free trip as buses from Jakarta to Surabaya provide a smooth journey suited for all kinds of travelers.

Jakarta Surabaya Bus Timetables

The bus journey between Jakarta and Surabaya includes several notable stops, such as Semarang, Tegal, and Cirebon. Buses operate frequently throughout the day, offering travelers convenience and flexibility in their travel plans. Typically, the first bus departs Jakarta at 06:00, with the last bus leaving at 22:00. This provides ample time for passengers to catch a bus that suits their schedule. Detailed bus timetables are available to help plan your journey effectively.

The distance between Jakarta and Surabaya is approximately 411 miles (662 km), and the bus journey typically takes around 5h 6m to complete. The trip provides a comfortable and scenic view of Indonesia's diverse landscapes, making it a preferred choice for travelers looking to relax and enjoy the ride.

Buses between these two major cities operate daily, ensuring that whether it's a weekday or the weekend, passengers have travel options. With an average of 47 buses running each day, passengers can choose the best time to travel without worrying about missing out on a ride. Whether you're traveling for business or leisure, buses are available to cater to your needs.

Explore Bus Travel Between Jakarta and Surabaya with Kym Trans, Angkasa Trans Jaya, Harapan Jaya and 3M Transport (Sari Indah)

Bus journeys between Jakarta and Surabaya offer a comfortable and efficient travel option, operated by reputable bus companies such as Kym Trans, Angkasa Trans Jaya, Harapan Jaya, and 3M Transport (Sari Indah). Travelers can choose from various bus types, including executive and VIP buses, each providing a range of amenities like spacious seating, air conditioning, and entertainment systems to enhance the travel experience. These companies prioritize safety, comfort, and timely services, making bus travel a convenient choice for passengers seeking to journey between Jakarta and Surabaya.

FAQs: Bus from Jakarta to Surabaya

FAQs: Take the bus from Jakarta to Surabaya with ease. Whether you want fast, cheap or something entirely different, our travel experts have the information you need to know so you can find the best option from Jakarta to Surabaya.
FAQs

Most popular bus connections from Jakarta

More options for your journey from Jakarta to Surabaya

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

Most popular bus connections to Surabaya

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
More routes, destinations and providers
Currency
Language

Useful links