Jakarta to Surabaya by bus, flight

Loading seats data...

From Kampung Rambutan to Surabaya by bus

09:00
Kampung Rambutan, Bekasi
21:30
Agen Rizky Mandiri, Surabaya
1d 12h 30m
Instant 
11:10
Kampung Rambutan, Bekasi
01:30
Agen Rizky Mandiri, Surabaya
14h 20m
Instant 
11:30
Kampung Rambutan, Bekasi
03:20
Agen Rizky Mandiri, Surabaya
15h 50m
Instant 
11:40
Kampung Rambutan, Bekasi
03:20
Agen Rizky Mandiri, Surabaya
15h 40m
Instant 
14:25
Kampung Rambutan, Bekasi
08:35
Terminal Surabaya Bungurasih
18h 10m
Instant 
14:40
Kampung Rambutan, Bekasi
04:30
Terminal Surabaya Bungurasih
13h 50m
Instant 

From Kantor Cabang PO Mawar to Surabaya by bus

18:30
Kantor Cabang PO Mawar, Jakarta
08:30
Terminal Surabaya Bungurasih
14h
Instant 

From Pondok Pinang to Surabaya by bus

14:00
Pondok Pinang, Jakarta
04:20
Terminal Surabaya Bungurasih
14h 20m
Instant 

From Pulo Gebang to Surabaya by bus

11:00
Pulo Gebang, Jakarta
00:35
Agen Rizky Mandiri, Surabaya
13h 35m
Instant 
13:00
Pulo Gebang, Jakarta
00:40
Agen Rizky Mandiri, Surabaya
11h 40m
Instant 
13:00
Pulo Gebang, Jakarta
06:40
Terminal Surabaya Bungurasih
17h 40m
Instant 
14:30
Pulo Gebang, Jakarta
04:30
Terminal Surabaya Bungurasih
14h
Instant 
17:00
Pulo Gebang, Jakarta
06:50
Terminal Surabaya Bungurasih
13h 50m
Instant 
18:30
Pulo Gebang, Jakarta
08:20
Terminal Surabaya Bungurasih
13h 50m
Instant 
20:00
Pulo Gebang, Jakarta
09:50
Terminal Surabaya Bungurasih
13h 50m
Instant 
21:00
Pulo Gebang, Jakarta
10:50
Terminal Surabaya Bungurasih
13h 50m
Instant 

From Pulo Gebang to East Java by bus

20:00
Pulo Gebang, Jakarta
09:50
Surabaya Kota, East Java
13h 50m
Instant 
21:00
Pulo Gebang, Jakarta
10:50
Surabaya Kota, East Java
13h 50m
Instant 

From Terminal Kali Deres to Surabaya by bus

12:20
Terminal Kali Deres, Jakarta
03:35
Agen Rizky Mandiri, Surabaya
15h 15m
Instant 
13:20
Terminal Kali Deres, Jakarta
05:10
Agen Rizky Mandiri, Surabaya
15h 50m
Instant 
13:50
Terminal Kali Deres, Jakarta
09:20
Terminal Surabaya Bungurasih
19h 30m
Instant 

From Soekarno Hatta Airport to East Java by flight

#QG710
04:10
CGK Soekarno Hatta Airport, Jakarta
05:40
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#JT890
04:30
CGK Soekarno Hatta Airport, Jakarta
06:00
SUB Juanda Airport, East Java
1h 30m
Instant 
 
04:30
CGK Soekarno Hatta Airport, Jakarta
06:00
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#JT690
05:00
CGK Soekarno Hatta Airport, Jakarta
06:30
SUB Juanda Airport, East Java
1h 30m
Instant 
 
05:35
CGK Soekarno Hatta Airport, Jakarta
07:05
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#QG712
05:55
CGK Soekarno Hatta Airport, Jakarta
07:25
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#JT748
06:00
CGK Soekarno Hatta Airport, Jakarta
07:30
SUB Juanda Airport, East Java
1h 30m
Instant 
 
06:00
CGK Soekarno Hatta Airport, Jakarta
07:30
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#QG9712
07:15
CGK Soekarno Hatta Airport, Jakarta
08:55
SUB Juanda Airport, East Java
1h 40m
Instant 
 
#JT528
07:30
CGK Soekarno Hatta Airport, Jakarta
09:00
SUB Juanda Airport, East Java
1h 30m
Instant 
 
07:35
CGK Soekarno Hatta Airport, Jakarta
09:05
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#QG714
07:45
CGK Soekarno Hatta Airport, Jakarta
09:15
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#JT752
07:50
CGK Soekarno Hatta Airport, Jakarta
09:20
SUB Juanda Airport, East Java
1h 30m
Instant 
 
08:05
CGK Soekarno Hatta Airport, Jakarta
09:35
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#JT28
08:20
CGK Soekarno Hatta Airport, Jakarta
09:50
SUB Juanda Airport, East Java
1h 30m
Instant 
 
08:40
CGK Soekarno Hatta Airport, Jakarta
10:10
SUB Juanda Airport, East Java
1h 30m
Instant 
 
08:45
CGK Soekarno Hatta Airport, Jakarta
10:15
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#SJ254
08:55
CGK Soekarno Hatta Airport, Jakarta
10:10
SUB Juanda Airport, East Java
1h 15m
Instant 
 
08:55
CGK Soekarno Hatta Airport, Jakarta
10:25
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#JT656
09:05
CGK Soekarno Hatta Airport, Jakarta
10:35
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#JT330
09:10
CGK Soekarno Hatta Airport, Jakarta
10:40
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#JT692
09:10
CGK Soekarno Hatta Airport, Jakarta
10:40
SUB Juanda Airport, East Java
1h 30m
Instant 
 
09:35
CGK Soekarno Hatta Airport, Jakarta
11:05
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#JT588
09:40
CGK Soekarno Hatta Airport, Jakarta
11:10
SUB Juanda Airport, East Java
1h 30m
Instant 
 
10:30
CGK Soekarno Hatta Airport, Jakarta
12:00
SUB Juanda Airport, East Java
1h 30m
Instant 
 
10:40
CGK Soekarno Hatta Airport, Jakarta
12:10
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#JT694
11:20
CGK Soekarno Hatta Airport, Jakarta
12:50
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#JT892
11:20
CGK Soekarno Hatta Airport, Jakarta
12:50
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#QG716
12:00
CGK Soekarno Hatta Airport, Jakarta
13:20
SUB Juanda Airport, East Java
1h 20m
Instant 
 
12:55
CGK Soekarno Hatta Airport, Jakarta
14:25
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#SJ266
13:10
CGK Soekarno Hatta Airport, Jakarta
14:25
SUB Juanda Airport, East Java
1h 15m
Instant 
 
#JT582
13:35
CGK Soekarno Hatta Airport, Jakarta
15:05
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#QG718
13:40
CGK Soekarno Hatta Airport, Jakarta
15:10
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#SJ258
13:50
CGK Soekarno Hatta Airport, Jakarta
15:20
SUB Juanda Airport, East Java
1h 30m
Instant 
 
14:50
CGK Soekarno Hatta Airport, Jakarta
16:20
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#JT596
15:20
CGK Soekarno Hatta Airport, Jakarta
16:50
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#JT40
15:40
CGK Soekarno Hatta Airport, Jakarta
17:10
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#QG720
16:30
CGK Soekarno Hatta Airport, Jakarta
17:50
SUB Juanda Airport, East Java
1h 20m
Instant 
 
#JT3979
16:30
CGK Soekarno Hatta Airport, Jakarta
18:00
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#QG9722
16:35
CGK Soekarno Hatta Airport, Jakarta
18:15
SUB Juanda Airport, East Java
1h 40m
Instant 
 
#JT696
16:50
CGK Soekarno Hatta Airport, Jakarta
18:20
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#QG722
17:00
CGK Soekarno Hatta Airport, Jakarta
18:40
SUB Juanda Airport, East Java
1h 40m
Instant 
 
#JT3590
17:00
CGK Soekarno Hatta Airport, Jakarta
18:30
SUB Juanda Airport, East Java
1h 30m
Instant 
 
17:20
CGK Soekarno Hatta Airport, Jakarta
18:50
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#QG174
17:30
CGK Soekarno Hatta Airport, Jakarta
19:10
SUB Juanda Airport, East Java
1h 40m
Instant 
 
#JT652
17:35
CGK Soekarno Hatta Airport, Jakarta
19:05
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#JT3580
18:30
CGK Soekarno Hatta Airport, Jakarta
20:00
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#QG736
18:40
CGK Soekarno Hatta Airport, Jakarta
20:20
SUB Juanda Airport, East Java
1h 40m
Instant 
 
18:50
CGK Soekarno Hatta Airport, Jakarta
20:20
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#QG726
19:30
CGK Soekarno Hatta Airport, Jakarta
21:10
SUB Juanda Airport, East Java
1h 40m
Instant 
 
19:30
CGK Soekarno Hatta Airport, Jakarta
21:00
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#SJ256
20:20
CGK Soekarno Hatta Airport, Jakarta
21:50
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#JT590
20:45
CGK Soekarno Hatta Airport, Jakarta
22:15
SUB Juanda Airport, East Java
1h 30m
Instant 
 
#JT798
21:40
CGK Soekarno Hatta Airport, Jakarta
23:10
SUB Juanda Airport, East Java
1h 30m
Instant 
 
22:15
CGK Soekarno Hatta Airport, Jakarta
23:45
SUB Juanda Airport, East Java
1h 30m
Instant 
 

Jakarta to Surabaya Schedule

Jakarta to Surabaya Schedule
Transport NameRoute TimePrice
Citilink Economy #QG71004:10 – 05:40IDR 680,881
Lion Air Economy #JT74806:00 – 07:30IDR 652,398
Pahala Kencana Express 09:00 – 21:30IDR 354,287
Pahala Kencana Express 11:10 – 01:30IDR 389,676
Pahala Kencana Express 13:00 – 00:40IDR 330,639
Citilink Economy #QG71612:00 – 13:20IDR 680,881
Sriwijaya Air Economy #SJ26613:10 – 14:25IDR 693,367
Pahala Kencana Express 14:25 – 08:35IDR 366,027
Tiara Mas Express 17:00 – 06:50IDR 257,126
Mawar Express 18:30 – 08:30IDR 277,696
3M Transport Express 20:00 – 09:50IDR 205,700
Batik Air Indonesia Economy #ID626622:15 – 23:45IDR 746,228

Popular Routes in Indonesia

How to get from Jakarta to Surabaya

When you want to get from Jakarta to Surabaya, you have a few options to consider. Traveling between these destinations is possible by different means of transport:

  • Flight
  • Bus

If you’re looking for a quick trip, it’s recommended that you use Flight. However, if you’d rather take your time with a slower, more affordable travel option, you can book a Bus ticket.

The cost of travel will depend on the means of transport you choose for your trip. A flight ticket is the most expensive option - it will cost you about IDR 741,628. If you want to save on transportation, it’s better to take a bus as a bus ticket costs as low as IDR 220,000.

How far is Jakarta from Surabaya?

If you’re traveling by land, it’s important to know the distance from Jakarta to Surabaya. Your trip will be a total of 1135 miles (1825 km). The flying distance is 416 miles (668 km).

How long does it take to get from Jakarta to Surabaya?

The travel time from Jakarta to Surabaya can vary depending on the mode of transportation you choose. All things considered, the whole journey should take from 2 to 37 hours.

How much does it cost to get from Jakarta to Surabaya?

The cost of the trip from Jakarta to Surabaya varies according to what means of transport you choose for your journey. The most affordable operator is 3M Transport: travelling by bus expect to pay as low as IDR 220,000 for your ticket.

However, if you’re after more upscale travel . The most expensive variant is to opt for a flight - a one-way flight ticket can cost as much as IDR 741,628.

Here is a chart of the average ticket prices and transportation options available from Jakarta to Surabaya:

  • Bus tickets - IDR 220,000 to IDR 388,481;
  • Plane tickets - IDR 648,376 to IDR 741,628;

How many trips per day are there between Jakarta and Surabaya?

Depending on your choice of transportation, the number of daily trips varies.

  • Flights from Jakarta to Surabaya depart during the day - there are approximately 54 departures a day.
  • Buses start plying the route from 09:00 - you can also take a bus as late as 21:00. There are 21 available bus trips every day.

Which means of transport is the best for the route?

Flights

Traveling by plane is the fastest way to get from Jakarta to Surabaya. While it’s often the most expensive option, tool, occasionally you can grab promotional tickets for more or less the price of a train or a ferry ticket. Normally, the minimum you need to pay for a Plane ticket is IDR 648,376.

Things to remember before boarding a plane:

  • It’s recommended to book a ticket in advance and check-in online. This way, you can save over 2 hours at the airport, and if your seat selection is on a first come first served basis you will have more options to choose from.
  • Getting through security checks may take some time - it’s recommended to get to the airport at least 1.5 hours in advance.

Airlines flying from Jakarta to Surabaya
Batik Air Indonesia, Citilink, Lion Air, Sriwijaya Air

Buses

Taking a bus from Jakarta to Surabaya is cheaper than flying. Quite often, a long-distance bus is the cheapest transportation option. Buses normally make bathroom and/or lunch stops along the way.

Things to remember before opting for a bus ride:

  • If possible, make sure to choose higher-class buses for a more comfortable travel experience. Such buses often have an air conditioning system, soft reclining seats, Wi-Fi, bathrooms, etc.
  • As with plane tickets, buses are better booked in advance so that you can secure a good seat.
  • While booking a bus, keep in mind that delays are possible. Yet it still pays to get to the bus station at least 15 minutes prior to the scheduled departure.

The most popular transport from Jakarta to Surabaya

How to choose the most convenient way of travel from Jakarta to Surabaya? In order to make your choice of transportation easier, we asked 1000 users to range their preferences for this route. Here are the results of the poll:

  • 1000 decided to go for a bus.