Jakarta to Surabaya bus with Harapan Jaya

Wed, Feb 04
+ Add return
Harapan Jaya
3M Transport (Sari Indah)
Kym Trans
Mawar
Angkasa Trans Jaya
1,000+ travel companies
Harapan Jaya
3M Transport (Sari Indah)
Kym Trans
Mawar
Angkasa Trans Jaya
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 Jakarta to Surabaya

Showing times and prices for Feb 04

Cheapest price

$15

Average price

$23

Fastest journey

10 h 59 m

Average duration

10 h 59 m

Buses per day

42

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

Fast buses

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

On Wed, Feb 04 the direct buses cover the 662 km distance in an average of 10 h 59 m but if you time it right, some buses will get you there in just 10 h 59 m .

On Wed, Feb 04 the slowest buses will take 10 h 59 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)
09:30PM12h28
Jakarta, Terminal Kampung Rambutan
09:58AMSurabaya, Terminal Purabaya/Bungurasih
$151One-way
0 transfers
3M Transport (Sari Indah)3M TRANSPORT (SARI INDAH)
10:00PM12h06
Jakarta, Pintu Terminal Pulo Gebang
10:06AMSurabaya, Terminal Purabaya/Bungurasih
$171One-way
0 transfers
3M Transport (Sari Indah)3M TRANSPORT (SARI INDAH)
08:00PM12h56
Jakarta, Terminal Kalideres
08:56AMSurabaya, Terminal Purabaya/Bungurasih
$171One-way
0 transfers
3M Transport (Sari Indah)3M TRANSPORT (SARI INDAH)
09:00PM12h28
Jakarta, Terminal Kampung Rambutan
09:28AMSurabaya, Terminal Purabaya/Bungurasih
$171One-way
0 transfers
MawarMAWAR
07:30PM12h06
Jakarta, Pintu Terminal Pulo Gebang
07:36AMSurabaya, Terminal Purabaya/Bungurasih
$211One-way
0 transfers

Travel Information

Compare bus, train, and flight for Jakarta to Surabaya

Omio recommends booking the bus 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 €12. For those with little time consider booking a flight which can get you there in 1h 30m. The ticket price range depends on the travel mode: a bus costs an average of €12, and a flight costs an average of €43.

Distance: 411 miles (662 km)

Compare bus with

Most popular
Bus
Flight
Train

€15

Average price

Cheapest

€56

Average price

€22

Average price

15h 5m

Average total duration

14h 35m

Onboard

+

30m

Additional time*

4h 30m

Average total duration

Fastest

1h 30m

Onboard

+

3h 0m

Additional time*

9h 44m

Average total duration

9h 14m

Onboard

+

30m

Additional time*

Direct Options

Direct Options

Direct Options

Jakarta to Surabaya Bus Timetables

OperatorDeparture TimeArrival TimeDurationDeparture daysCheapest price
Operator
Harapan Jaya
Departure Time
06:00AM
Arrival Time
04:59PM
Duration
10h59
Departure days
Tue, Wed, Sat
Cheapest price
$22
Operator
Harapan Jaya
Departure Time
06:15AM
Arrival Time
07:15PM
Duration
13h00
Departure days
Tue, Wed, Sat
Cheapest price
$22
Operator
Harapan Jaya
Departure Time
06:20AM
Arrival Time
07:20PM
Duration
13h00
Departure days
Tue, Wed, Sat
Cheapest price
$22
Operator
Harapan Jaya
Departure Time
06:30AM
Arrival Time
07:30PM
Duration
13h00
Departure days
Tue, Wed, Sat
Cheapest price
$22
Operator
Harapan Jaya
Departure Time
06:40AM
Arrival Time
05:39PM
Duration
10h59
Departure days
Tue, Wed, Sat
Cheapest price
$22
Operator
Harapan Jaya
Departure Time
07:00AM
Arrival Time
08:00PM
Duration
13h00
Departure days
Sat
Cheapest price
$25
Operator
Harapan Jaya
Departure Time
07:30AM
Arrival Time
08:30PM
Duration
13h00
Departure days
Sat
Cheapest price
$25
Operator
Infobus
Departure Time
11:35AM
Arrival Time
01:00AM
Duration
13h25
Departure days
Tue, Wed, Sat
Cheapest price
$38
Operator
Harapan Jaya
Departure Time
01:00PM
Arrival Time
02:00AM
Duration
13h00
Departure days
Sat
Cheapest price
$25
Operator
Harapan Jaya
Departure Time
01:30PM
Arrival Time
02:30AM
Duration
13h00
Departure days
Sat
Cheapest price
$25
Operator
Harapan Jaya
Departure Time
02:00PM
Arrival Time
03:00AM
Duration
13h00
Departure days
Sat
Cheapest price
$25
Operator
Harapan Jaya
Departure Time
02:15PM
Arrival Time
01:14AM
Duration
10h59
Departure days
Wed, Sat
Cheapest price
$25
Operator
Harapan Jaya
Departure Time
02:30PM
Arrival Time
03:30AM
Duration
13h00
Departure days
Wed, Sat
Cheapest price
$25
Operator
Harapan Jaya
Departure Time
02:45PM
Arrival Time
02:45AM
Duration
12h00
Departure days
Wed, Sat
Cheapest price
$25
Operator
Harapan Jaya
Departure Time
03:00PM
Arrival Time
04:00AM
Duration
13h00
Departure days
Wed, Sat
Cheapest price
$25
Operator
Harapan Jaya
Departure Time
03:30PM
Arrival Time
02:29AM
Duration
10h59
Departure days
Wed, Sat
Cheapest price
$25
Operator
Harapan Jaya
Departure Time
04:00PM
Arrival Time
05:00AM
Duration
13h00
Departure days
Tue, Wed, Sat
Cheapest price
$25
Operator
Mawar
Departure Time
04:30PM
Arrival Time
05:26AM
Duration
12h56
Departure days
Tue, Wed, Sat
Cheapest price
$21
Operator
Harapan Jaya
Departure Time
04:30PM
Arrival Time
05:30AM
Duration
13h00
Departure days
Tue, Wed, Sat
Cheapest price
$22
Operator
Harapan Jaya
Departure Time
04:45PM
Arrival Time
05:45AM
Duration
13h00
Departure days
Tue, Wed, Sat
Cheapest price
$22
Operator
Mawar
Departure Time
05:00PM
Arrival Time
05:24AM
Duration
12h24
Departure days
Tue, Wed, Sat
Cheapest price
$21
Operator
Harapan Jaya
Departure Time
05:00PM
Arrival Time
06:00AM
Duration
13h00
Departure days
Tue, Wed, Sat
Cheapest price
$25
Operator
Harapan Jaya
Departure Time
05:45PM
Arrival Time
04:44AM
Duration
10h59
Departure days
Wed, Sat
Cheapest price
$22
Operator
Harapan Jaya
Departure Time
06:00PM
Arrival Time
07:00AM
Duration
13h00
Departure days
Wed, Sat
Cheapest price
$22
Operator
Harapan Jaya
Departure Time
06:15PM
Arrival Time
07:15AM
Duration
13h00
Departure days
Wed, Sat
Cheapest price
$22
Operator
Mawar
Departure Time
06:30PM
Arrival Time
06:58AM
Duration
12h28
Departure days
Tue, Wed, Sat
Cheapest price
$21
Operator
Harapan Jaya
Departure Time
06:30PM
Arrival Time
07:30AM
Duration
13h00
Departure days
Wed, Sat
Cheapest price
$22
Operator
Harapan Jaya
Departure Time
06:45PM
Arrival Time
05:44AM
Duration
10h59
Departure days
Wed, Sat
Cheapest price
$22
Operator
Harapan Jaya
Departure Time
07:00PM
Arrival Time
08:00AM
Duration
13h00
Departure days
Sat
Cheapest price
$35
Operator
Mawar
Departure Time
07:30PM
Arrival Time
07:36AM
Duration
12h06
Departure days
Tue, Wed, Sat
Cheapest price
$21
Operator
3M Transport (Sari Indah)
Departure Time
08:00PM
Arrival Time
08:56AM
Duration
12h56
Departure days
Wed, Sat
Cheapest price
$17
Operator
3M Transport (Sari Indah)
Departure Time
09:00PM
Arrival Time
09:28AM
Duration
12h28
Departure days
Wed, Sat
Cheapest price
$17
Operator
3M Transport (Sari Indah)
Departure Time
09:30PM
Arrival Time
09:58AM
Duration
12h28
Departure days
Wed, Sat
Cheapest price
$15
Operator
3M Transport (Sari Indah)
Departure Time
10:00PM
Arrival Time
10:06AM
Duration
12h06
Departure days
Wed, Sat
Cheapest price
$17

Live departures

Jakarta to Surabaya bus times

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

Last updated at 4:13 PM
ProviderDepartsDurationArrivesTransfers
Tickets
ESB_304_HARAPAN_JAYAHARAPAN JAYA11:00 PM Jakarta, Ampera
10h59
9:59 AM Waru, Medaeng0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA11:15 PM Jakarta, Terminal Kalideres
13h00
12:15 PM Waru, Medaeng0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA11:20 PM Jakarta, Cengkareng
13h00
12:20 PM Waru, Medaeng0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA11:30 PM Jakarta, Taman Kota
13h00
12:30 PM Waru, Medaeng0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA11:40 PM Jakarta, Grogol
10h59
10:39 AM Waru, Medaeng0 transfersDirect
ams_infobus04:35 AM Jakarta
13h25
6:00 PM Surabaya0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA7:15 AM Jakarta, Ampera
10h59
6:14 PM Surabaya, Terminal Purabaya/Bungurasih0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA7:15 AM Jakarta, Ampera
10h59
6:14 PM Waru, Medaeng0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA7:30 AM Jakarta, Terminal Kalideres
13h00
8:30 PM Waru, Medaeng0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA7:30 AM Jakarta, Terminal Kalideres
13h00
8:30 PM Surabaya, Terminal Purabaya/Bungurasih0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA7:45 AM Jakarta, Cengkareng
12h00
7:45 PM Surabaya, Terminal Purabaya/Bungurasih0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA7:45 AM Jakarta, Cengkareng
13h00
8:45 PM Waru, Medaeng0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA8:00 AM Jakarta, Taman Kota
13h00
9:00 PM Waru, Medaeng0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA8:00 AM Jakarta, Taman Kota
13h00
9:00 PM Surabaya, Terminal Purabaya/Bungurasih0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA8:30 AM Jakarta, Grogol
10h59
7:29 PM Surabaya, Terminal Purabaya/Bungurasih0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA8:30 AM Jakarta, Grogol
10h59
7:29 PM Waru, Medaeng0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA9:00 AM Jakarta, Pondok Pinang
13h00
10:00 PM Waru, Medaeng0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA9:00 AM Jakarta, Lebak Bulus
13h00
10:00 PM Waru, Medaeng0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA9:30 AM Jakarta, Terminal Kampung Rambutan
13h00
10:30 PM Waru, Medaeng0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA9:30 AM Jakarta, Pasar Rebo
13h00
10:30 PM Waru, Medaeng0 transfersDirect
ESB_478_MAWARMAWAR9:30 AM Jakarta, Terminal Kalideres
12h56
10:26 PM Surabaya, Terminal Purabaya/Bungurasih0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA9:45 AM Jakarta, Pasar Rebo
13h00
10:45 PM Waru, Medaeng0 transfersDirect
ESB_478_MAWARMAWAR10:00 AM Jakarta, Terminal Grogol
12h24
10:24 PM Surabaya, Terminal Purabaya/Bungurasih0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA10:00 AM Jakarta, Pintu Terminal Pulo Gebang
13h00
11:00 PM Waru, Medaeng0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA10:45 AM Jakarta, Ampera
10h59
9:44 PM Surabaya, Terminal Purabaya/Bungurasih0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA10:45 AM Jakarta, Ampera
10h59
9:44 PM Waru, Medaeng0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA11:00 AM Jakarta, Terminal Kalideres
13h00
12:00 AM Waru, Medaeng0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA11:00 AM Jakarta, Terminal Kalideres
13h00
12:00 AM Surabaya, Terminal Purabaya/Bungurasih0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA11:00 AM Terminal Tanjung Priok, Jakarta Utara
13h30
12:30 AM Waru, Medaeng0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA11:00 AM Terminal Tanjung Priok, Jakarta Utara
10h59
9:59 PM Surabaya, Terminal Purabaya/Bungurasih0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA11:15 AM Jakarta, Taman Kota
13h00
12:15 AM Surabaya, Terminal Purabaya/Bungurasih0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA11:15 AM Jakarta, Taman Kota
13h00
12:15 AM Waru, Medaeng0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA11:30 AM Jakarta, Pintu Terminal Pulo Gebang
13h00
12:30 AM Surabaya, Terminal Purabaya/Bungurasih0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA11:30 AM Jakarta, Pintu Terminal Pulo Gebang
13h00
12:30 AM Waru, Medaeng0 transfersDirect
ESB_478_MAWARMAWAR11:30 AM Terminal Tanjung Priok, Jakarta Utara
12h28
11:58 PM Surabaya, Terminal Purabaya/Bungurasih0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA11:45 AM Jakarta, Grogol
10h59
10:44 PM Surabaya, Terminal Purabaya/Bungurasih0 transfersDirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA11:45 AM Jakarta, Grogol
10h59
10:44 PM Waru, Medaeng0 transfersDirect
ESB_478_MAWARMAWAR12:30 PM Jakarta, Pintu Terminal Pulo Gebang
12h06
12:36 AM Surabaya, Terminal Purabaya/Bungurasih0 transfersDirect
ESB_1197_3M_TRANSPORT3M TRANSPORT (SARI INDAH)1:00 PM Jakarta, Terminal Kalideres
12h56
1:56 AM Surabaya, Terminal Purabaya/Bungurasih0 transfersDirect
ESB_1197_3M_TRANSPORT3M TRANSPORT (SARI INDAH)2:00 PM Jakarta, Terminal Kampung Rambutan
12h28
2:28 AM Surabaya, Terminal Purabaya/Bungurasih0 transfersDirect
ESB_1197_3M_TRANSPORT3M TRANSPORT (SARI INDAH)2:30 PM Jakarta, Terminal Kampung Rambutan
12h28
2:58 AM Surabaya, Terminal Purabaya/Bungurasih0 transfersDirect
ESB_1197_3M_TRANSPORT3M TRANSPORT (SARI INDAH)3:00 PM Jakarta, Pintu Terminal Pulo Gebang
12h06
3:06 AM Surabaya, Terminal Purabaya/Bungurasih0 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

Compare bus, train, 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
Feb 04
Thu
Feb 05
Fri
Feb 06
Sat
Feb 07
Sun
Feb 08
Mon
Feb 09
Tue
Feb 10
Wed
Feb 11
Thu
Feb 12
Fri
Feb 13
Sat
Feb 14
Sun
Feb 15
Mon
Feb 16
Tue
Feb 17

Why should you book Jakarta to Surabaya buses with Omio?

Harapan Jaya as well as 3M Transport (Sari Indah), Mawar, Angkasa Trans Jaya, Kym Trans and more offer buses services from Jakarta to Surabaya.
Omio is an official ticket reseller for all your travel options from Jakarta to Surabaya.

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 3M Transport (Sari Indah), Mawar, Angkasa Trans Jaya or Kym Trans to find the best option for your trip from Jakarta to Surabaya.
  • 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 bus, train and flight to ensure you get the best deal for traveling from Jakarta to Surabaya.

Why book with Omio over Checkmybus?

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

Journey information

Overview: Bus from Jakarta to Surabaya

IndonesiaIndonesia
IndonesiaIndonesia
Icon of bus

Buses from Jakarta to Surabaya run on average 45 times per day, taking around 14h 35m. Cheap bus tickets for this journey start at $15 (€12) if you book in advance.

There are 45 buses per day. The earliest bus runs at 06:00, the last at 22:00. The fastest bus covers the 411 miles (662 km) distance in 12h 6m.

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
14h 35m
Cheapest ticket price
$15 (€12)
Buses per day
45
Direct buses
45
Fastest bus
12h 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

Bus providers: Harapan Jaya, 3M Transport (Sari Indah), Kym Trans, Mawar, Angkasa Trans Jaya, Kramat Djati, TransJakarta from Jakarta to SurabayaYou can travel by bus between Jakarta to Surabaya with Harapan Jaya, 3M Transport (Sari Indah), Kym Trans, Mawar, Angkasa Trans Jaya, Kramat Djati, TransJakarta for as low as $15 (€12). When you search for schedules and tickets, Omio will show you the best journey

Mawar

About
Established in 1997 in Indonesia, operates modern buses with comfortable seating. The main office is located at Jalan Raya Demak No. 63, Surabaya, with services from Terminal Tanjung Priok in Jakarta. Night buses are available, and the service includes accessible travel. Luggage is included in the fare, with excess and bulky luggage allowed for an additional fee. Free onboard WiFi and USB plugs are provided. Pets are not allowed, but bikes are welcome. Food options are available onboard, and seat reservations along with bathrooms ensure a pleasant journey.
Luggage & cancellation policy
Average Duration
12h 6m
Cheapest Price
$23 (€18)
Mawar frequency
5 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
Wifi
Food sold onboard
Seat reservation
Toilets
USB plugs

Kym Trans

About
Established in 2008 in Malaysia, operates from Jl. Raya Bandara Juanda KM 4.5, Sidoarjo, Jawa Timur. The fleet includes Elf (12-17 people), Medium bus (20-33 people), and Big buses (38-50 and 58 seats). Facilities feature air conditioning, comfortable seating, audio visual equipment, TV box, karaoke, pillows & blankets, toilet, charging points, and ample luggage space. Luggage is included with size restrictions; excess luggage incurs a fee. Free onboard WiFi and USB plugs are available. Pets are not allowed; bikes are welcome. Food options are provided onboard with seat reservations and bathrooms ensuring a pleasant journey.
Luggage & cancellation policy
Average Duration
12h 6m
Cheapest Price
$28 (€22)
Kym Trans frequency
7 a day
Luggage included
Luggage size and type allowed on board: Ample luggage space.
Additional luggage
Excess luggage and bulky luggage allowed for an additional fee
Amenities on board the bus
Food sold onboard
Seat reservation
Toilets
USB plugs

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
13h 0m
Cheapest Price
$22 (€18)
Harapan Jaya frequency
36 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

Angkasa Trans Jaya

About
Established in 2017 in Indonesia, operates from Ruko Pasar Wisata Tanggulangin B2 no. 21. The fleet includes Executive AC (2+2), Sleeper coaches, and Express services. Night buses are not available. Luggage is included in the fare; specific size/type not provided, with excess and bulky luggage allowed for an additional fee. Free onboard WiFi, USB plugs, food options, seat reservations, and onboard bathrooms ensure a comfortable journey. Pets and bikes are not allowed.
Luggage & cancellation policy
Average Duration
12h 6m
Cheapest Price
$42 (€34)
Angkasa Trans Jaya frequency
2 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
19h 34m
Cheapest Price
$22 (€18)
Kramat Djati frequency
5 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

3M Transport (Sari Indah)

About
Established in Indonesia, operates from Purabaya or Bungurasih Terminal. The service does not offer night buses, accessibility options, luggage inclusion, free WiFi, USB plugs, pet transport, bike accommodation, food onboard, seat reservations, or onboard bathrooms.
Luggage & cancellation policy
Average Duration
12h 6m
Cheapest Price
$15 (€12)
3M Transport (Sari Indah) frequency
4 a day

TransJakarta

Luggage & cancellation policy
Average Duration
10h 13m
TransJakarta frequency
1 a day

FAQs: Bus from Jakarta to Surabaya

Find answers to the most common questions about traveling from Jakarta to Surabaya 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 Surabaya, this guide helps you travel smarter and with confidence.

FAQs
Cheap bus tickets from Jakarta to Surabaya can start from as little as $15 (€12) when you book in advance. The average bus ticket price for Jakarta to Surabaya is $19 (€15) ; 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 Surabaya is 12h 6m to travel the 411 miles (662 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 Surabaya leaves at 6:00 AM. Plan your trip with the Journey Planner from Omio.
The latest bus from Jakarta to Surabaya leaves at 10:00 PM.
Yes, there are 45 direct buses a day from Jakarta to Surabaya with Harapan Jaya, 3M Transport (Sari Indah), Kym Trans, Mawar, Angkasa Trans Jaya, Kramat Djati. Schedules can vary on holidays or weekends with fewer direct buses.
When taking a bus from Jakarta to Surabaya, you can count on Harapan Jaya, 3M Transport (Sari Indah), Kym Trans, Mawar, Angkasa Trans Jaya, Kramat Djati, TransJakarta for the best way to get you to Surabaya. You can also check all possible bus companies who offer a service between Jakarta and Surabaya 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, Pintu Terminal Pulo Gebang, Jakarta, Terminal Kalideres, Jakarta, Terminal Kampung Rambutan, Jakarta, Grogol, Jakarta, Pasar Rebo, Jakarta, Ampera, Jakarta, Pondok Pinang, Jakarta, Taman Kota, Jakarta, Lebak Bulus, Jakarta, Terminal Pondok Pinang, Terminal Tanjung Priok, Jakarta Utara, Jakarta, Terminal Grogol, Jakarta, Cengkareng, Jakarta, Cililitan, Jakarta, Terminal Lebak Bulus, Jakarta, Jakarta, Kapuk . When arriving in Surabaya , you can end your journey in bus stations like Surabaya, Terminal Purabaya/Bungurasih, Waru, Medaeng, Waru, Surabaya, Arjuna .Passengers board the bus most frequently from Jakarta, Pintu Terminal Pulo Gebang, which is located around 11 away from the city centre, and they get off the bus at Surabaya, Terminal Purabaya/Bungurasih, located 1 away from the city centre.
A trip to Surabaya from Jakarta is worth doing but not as a day trip with a journey time of 12h 6m each way. Check with Omio app the best way to travel.
The cheapest month for a bus from Jakarta to Surabaya is October.
It's helpful to compare your options as there are 3 ways to travel between Jakarta and Surabaya including taking a bus, train, and flight.
No, the bus from Jakarta to Surabaya has no accessibility options.
Yes, there are bathrooms on board the bus from Jakarta to Surabaya for bus company Harapan Jaya, Kym Trans, Mawar, Angkasa Trans Jaya, Kramat Djati.
No, bikes are not allowed on board the bus from Jakarta to Surabaya.
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 Surabaya.
Yes, the following luggage options are included when booking a bus ticket from Jakarta to Surabaya:
  • Kym Trans
    • Luggage size and type allowed on board: Ample luggage space.
  • Mawar
    • Luggage included in fare
    • specific size/type not provided.
  • Harapan Jaya
    • 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 Surabaya:
  • Kym Trans
    • Excess luggage and bulky luggage allowed for an additional fee
  • Mawar
    • Excess luggage and bulky luggage allowed for an additional fee
  • Harapan Jaya
    • Excess luggage and bulky luggage allowed for an additional fee
Unfortunately, pets are not allowed on the bus from Jakarta to Surabaya.
You can reserve your seat on the bus from Jakarta to Surabaya with the following bus company: Harapan Jaya, Kym Trans, Mawar, Angkasa Trans Jaya, Kramat Djati
Yes, there are USB plugs on board the bus from Jakarta to Surabaya with the following bus company: Kym Trans, Mawar.
Yes, there is Wifi on board the bus from Jakarta to Surabaya with the following bus company: Mawar.

popular bus stations

Popular bus stations from Jakarta to Surabaya

Jakarta
Surabaya
The major bus station for departures in Jakarta is Jakarta, Pintu Terminal Pulo Gebang. Find all the information you need to know about services, amenities and connections at Jakarta, Pintu Terminal Pulo Gebang for your trip from Jakarta to Surabaya.
Amenities at bus station
WifiWifi
ParkingParking
DiningDining
ATMATM
TaxisTaxis
AccessibilityAccessibility
WCWC
Ticket OfficeTicket Office
information
ticketOfficeHours
Ticket Office Hours
  • 05:00-22:00
ticketOfficeHours
Distance to city center
11 km
carConnection
Car connection
Jalan Pulo Gebang Raya
Wifi
Wifi
  • Free Wi-Fi in terminal building
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, dedicated assistance
WC
WC
  • Public toilets available
Public transit options for Jakarta, Pintu Terminal Pulo Gebang
  • Bus: Transjakarta, AKAP buses
  • Angkot: Various routes
Amenities at bus station
WifiWifi
ParkingParking
DiningDining
ATMATM
TaxisTaxis
AccessibilityAccessibility
WCWC
Ticket OfficeTicket Office
information
ticketOfficeHours
Ticket Office Hours
  • 05:00-22:00
ticketOfficeHours
Distance to city center
16 km
carConnection
Car connection
Jalan Daan Mogot
Wifi
Wifi
  • Free Wi-Fi available
Parking
Parking
  • Available for buses and private vehicles
Dining
Dining
  • Food stalls and small restaurants available in and around terminal
Taxis
Taxis
  • Available at designated taxi stands
Accessibility
Accessibility
  • Ramps available
WC
WC
  • Public toilets available
Public transit options for Jakarta, Terminal Kalideres
  • Bus: TransJakarta Corridor 3, 8
  • Angkot: KWK, M26, B11
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
11 km
carConnection
Car connection
Jalan Lingkar Luar Selatan
Wifi
Wifi
  • Free Wi-Fi available
Parking
Parking
  • Available for both private vehicles and buses
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 with fee
Public transit options for Jakarta, Terminal Kampung Rambutan
  • Bus: TransJakarta Corridor 7, 13
  • Angkot: Various routes
  • City Bus: Various routes

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