How to get from Surabaya to Jakarta

Compare Flights and Buses with just one click and find the best one for you
The Best Deals Save up to 70%
The Most Choices Millions of routes worldwide
Easy and Transparent Compare offers with 1 click

What is the best way to travel from Surabaya to Jakarta?

Looking for a trip? Check and compare all the available Flights and Buses to Jakarta from Surabaya. Look at different modes of transportation, search for the cheapest tickets, fastest rides and most popular stations, and see all 13 available companies to find your perfect trip!
Bus is the cheapest, while Flight is the fastest way on this route
Transport type
Travel time
Cheapest price
Average price
Daily departures
Bus
10h 0m
£11
£15
50
Flight
1h 30m
£52
£60
23

What is the cheapest way to reach Jakarta from Surabaya?

You can reach Jakarta with just £11 by taking a Bus from Harapan Jaya, but there are many more cheap offers: we have selected the best ones for you for the next few days here.

Friday
from £12
Saturday
Sunday
from £14
Monday
from £11
Tuesday
from £15
Wednesday
Thursday

    Cheapest Buses Friday

  • Damri Express
    11h 0m
    0
    09:00
    Surabaya
    Central Station
    20:00
    Jakarta
    Terminal Manggarai
    0
    Damri Express
    Economy
    £12
  • Haryanto Bojonegoro
    12h 30m
    0
    11:30
    Surabaya
    Central Station
    00:00
    Jakarta
    Terminal Manggarai
    0
    Haryanto Bojonegoro
    Economy
    £14
  • Kramat Djati
    13h 15m
    0
    15:00
    Surabaya
    Central Station
    04:15
    Jakarta
    Terminal Manggarai
    0
    Kramat Djati
    Economy
    £14
  • Gunung Harta
    14h 50m
    0
    13:00
    Surabaya
    Central Station
    03:50
    Jakarta
    Terminal Manggarai
    0
    Gunung Harta
    Economy
    £15
  • Pahala Kencana
    13h 10m
    0
    15:35
    Surabaya
    Central Station
    04:45
    Jakarta
    Terminal Manggarai
    0
    Pahala Kencana
    Economy
    £15

    Cheapest Buses Sunday

  • Sinar Jaya
    13h 45m
    0
    07:00
    Surabaya
    Central Station
    20:45
    Jakarta
    Terminal Bus Kota Blok M
    0
    Sinar Jaya
    Premium Economy
    £14
  • Sinar Jaya
    13h 30m
    0
    07:15
    Surabaya
    Central Station
    20:45
    Jakarta
    Terminal Bus Kota Blok M
    0
    Sinar Jaya
    Premium Economy
    £14
  • Kramat Djati
    17h 0m
    0
    15:00
    Surabaya
    Central Station
    08:00
    Jakarta
    Terminal Bus Kota Blok M
    0
    Kramat Djati
    Economy
    £15
  • Harapan Jaya
    13h 0m
    0
    13:00
    Surabaya
    Gubeng Train Station
    02:00
    Jakarta
    Terminal Pulo Gebang
    0
    Harapan Jaya
    Economy
    £15
  • 27 Trans
    11h 30m
    0
    17:20
    Surabaya
    Central Station
    04:50
    Jakarta
    Terminal Bus Kota Blok M
    0
    27 Trans
    Economy
    £16
  • Cheapest Flights Sunday

  • Citilink
    1h 35m
    0
    07:35
    Surabaya Airport
    Surabaya Airport
    09:10
    Soekarno-Hatta Airport
    Stasiun KA Bandara Bus Stop
    0
    Citilink
    Economy
    from £52
  • Citilink
    1h 35m
    0
    10:35
    Surabaya Airport
    Surabaya Airport
    12:10
    Soekarno-Hatta Airport
    Stasiun KA Bandara Bus Stop
    0
    Citilink
    Economy
    from £53
  • Garuda Indonesia
    1h 35m
    0
    07:05
    Surabaya Airport
    Surabaya Airport
    08:40
    Soekarno-Hatta Airport
    Stasiun KA Bandara Bus Stop
    0
    Garuda Indonesia
    Economy
    from £61
  • Garuda Indonesia
    1h 40m
    0
    16:30
    Surabaya Airport
    Surabaya Airport
    18:10
    Soekarno-Hatta Airport
    Stasiun KA Bandara Bus Stop
    0
    Garuda Indonesia
    Economy
    from £61
  • Batik Air
    1h 30m
    0
    17:30
    Surabaya Airport
    Surabaya Airport
    19:00
    Soekarno-Hatta Airport
    Stasiun KA Bandara Bus Stop
    0
    Batik Air
    Economy
    from £75

    Cheapest Buses Monday

  • Harapan Jaya
    10h 0m
    0
    09:50
    Surabaya
    Sidotopo Bus Station
    19:50
    Jakarta
    Terminal Bus Kota Blok M
    0
    Harapan Jaya
    Economy
    £11
  • Harapan Jaya
    10h 0m
    0
    20:30
    Surabaya
    Sidotopo Bus Station
    06:30
    Jakarta
    Terminal Bus Kota Blok M
    0
    Harapan Jaya
    Economy
    £13
  • Harapan Jaya
    11h 30m
    0
    09:00
    Surabaya
    Terminal Purabaya-Bungurasih
    20:30
    Jakarta
    Terminal Pulo Gebang
    0
    Harapan Jaya
    Economy
    £15
  • Pahala Kencana
    12h 31m
    0
    15:30
    Surabaya
    Terminal Purabaya-Bungurasih
    04:01
    Jakarta
    Terminal Pulo Gebang
    0
    Pahala Kencana
    Economy
    £15

    Cheapest Buses Tuesday

  • Harapan Jaya
    13h 0m
    0
    13:00
    Surabaya
    Gubeng Train Station
    02:00
    Jakarta
    Terminal Pulo Gebang
    0
    Harapan Jaya
    Economy
    £15
  • Harapan Jaya
    13h 0m
    0
    14:00
    Surabaya
    Gubeng Train Station
    03:00
    Jakarta
    Terminal Pulo Gebang
    0
    Harapan Jaya
    Economy
    £17
  • Harapan Jaya
    13h 0m
    0
    17:15
    Surabaya
    Gubeng Train Station
    06:15
    Jakarta
    Terminal Pulo Gebang
    0
    Harapan Jaya
    Economy
    £17

What are the fastest trips from Surabaya to Jakarta?

You can get to Jakarta from Surabaya in just 1h 30m with a Flight from Batik Air. But this is just one option, click on any of the offers below to compare it with the other available modes of transportations.

Friday
from 11h 0m
Saturday
Sunday
from 1h 30m
Monday
from 10h 0m
Tuesday
from 13h 0m
Wednesday
Thursday

    Fastest Buses Friday

  • Damri Express
    11h 0m
    0
    09:00
    Surabaya
    Central Station
    20:00
    Jakarta
    Terminal Manggarai
    0
    Damri Express
    Economy
    £12
  • Haryanto Bojonegoro
    12h 30m
    0
    11:30
    Surabaya
    Central Station
    00:00
    Jakarta
    Terminal Manggarai
    0
    Haryanto Bojonegoro
    Economy
    £14
  • Pahala Kencana
    13h 10m
    0
    15:35
    Surabaya
    Central Station
    04:45
    Jakarta
    Terminal Manggarai
    0
    Pahala Kencana
    Economy
    £15
  • Kramat Djati
    13h 15m
    0
    15:00
    Surabaya
    Central Station
    04:15
    Jakarta
    Terminal Manggarai
    0
    Kramat Djati
    Economy
    £14
  • Gunung Harta
    14h 50m
    0
    13:00
    Surabaya
    Central Station
    03:50
    Jakarta
    Terminal Manggarai
    0
    Gunung Harta
    Economy
    £15

    Fastest Flights Sunday

  • Batik Air
    1h 30m
    0
    17:30
    Surabaya Airport
    Surabaya Airport
    19:00
    Soekarno-Hatta Airport
    Stasiun KA Bandara Bus Stop
    0
    Batik Air
    Economy
    from £75
  • Citilink
    1h 35m
    0
    07:35
    Surabaya Airport
    Surabaya Airport
    09:10
    Soekarno-Hatta Airport
    Stasiun KA Bandara Bus Stop
    0
    Citilink
    Economy
    from £52
  • Citilink
    1h 35m
    0
    10:35
    Surabaya Airport
    Surabaya Airport
    12:10
    Soekarno-Hatta Airport
    Stasiun KA Bandara Bus Stop
    0
    Citilink
    Economy
    from £53
  • Garuda Indonesia
    1h 35m
    0
    07:05
    Surabaya Airport
    Surabaya Airport
    08:40
    Soekarno-Hatta Airport
    Stasiun KA Bandara Bus Stop
    0
    Garuda Indonesia
    Economy
    from £61
  • Garuda Indonesia
    1h 40m
    0
    16:30
    Surabaya Airport
    Surabaya Airport
    18:10
    Soekarno-Hatta Airport
    Stasiun KA Bandara Bus Stop
    0
    Garuda Indonesia
    Economy
    from £61
  • Fastest Buses Sunday

  • 27 Trans
    11h 30m
    0
    17:20
    Surabaya
    Central Station
    04:50
    Jakarta
    Terminal Bus Kota Blok M
    0
    27 Trans
    Economy
    £16
  • Harapan Jaya
    13h 0m
    0
    13:00
    Surabaya
    Gubeng Train Station
    02:00
    Jakarta
    Terminal Pulo Gebang
    0
    Harapan Jaya
    Economy
    £15
  • Sinar Jaya
    13h 30m
    0
    07:15
    Surabaya
    Central Station
    20:45
    Jakarta
    Terminal Bus Kota Blok M
    0
    Sinar Jaya
    Premium Economy
    £14
  • Sinar Jaya
    13h 45m
    0
    07:00
    Surabaya
    Central Station
    20:45
    Jakarta
    Terminal Bus Kota Blok M
    0
    Sinar Jaya
    Premium Economy
    £14
  • Kramat Djati
    17h 0m
    0
    15:00
    Surabaya
    Central Station
    08:00
    Jakarta
    Terminal Bus Kota Blok M
    0
    Kramat Djati
    Economy
    £15

    Fastest Buses Monday

  • Harapan Jaya
    10h 0m
    0
    09:50
    Surabaya
    Sidotopo Bus Station
    19:50
    Jakarta
    Terminal Bus Kota Blok M
    0
    Harapan Jaya
    Economy
    £11
  • Harapan Jaya
    10h 0m
    0
    20:30
    Surabaya
    Sidotopo Bus Station
    06:30
    Jakarta
    Terminal Bus Kota Blok M
    0
    Harapan Jaya
    Economy
    £13
  • Harapan Jaya
    11h 30m
    0
    09:00
    Surabaya
    Terminal Purabaya-Bungurasih
    20:30
    Jakarta
    Terminal Pulo Gebang
    0
    Harapan Jaya
    Economy
    £15
  • Pahala Kencana
    12h 31m
    0
    15:30
    Surabaya
    Terminal Purabaya-Bungurasih
    04:01
    Jakarta
    Terminal Pulo Gebang
    0
    Pahala Kencana
    Economy
    £15

    Fastest Buses Tuesday

  • Harapan Jaya
    13h 0m
    0
    13:00
    Surabaya
    Gubeng Train Station
    02:00
    Jakarta
    Terminal Pulo Gebang
    0
    Harapan Jaya
    Economy
    £15
  • Harapan Jaya
    13h 0m
    0
    14:00
    Surabaya
    Gubeng Train Station
    03:00
    Jakarta
    Terminal Pulo Gebang
    0
    Harapan Jaya
    Economy
    £17
  • Harapan Jaya
    13h 0m
    0
    17:15
    Surabaya
    Gubeng Train Station
    06:15
    Jakarta
    Terminal Pulo Gebang
    0
    Harapan Jaya
    Economy
    £17
Here you will find all operators and timetables for a Bus from Surabaya to Jakarta

What are the most popular stations in Surabaya and Jakarta?

In Surabaya, you will usually depart from Terminal Purabaya-Bungurasih, Gubeng Train Station or Central Station, while in Jakarta you will be arriving at Terminal Pasar Minggu, Teuku Umar 8 Coach Station or Terminal Manggarai, but there are many more stops to explore in both locations.

How do I decide? Some tips and tricks from our experience

Are you having trouble deciding on how to get to Jakarta from Surabaya? With 5 connections between 13 Flight and Bus operators, it can be difficult to find the one ride that will make you happy. But we have some tips that can help you make the best informed decision. First of all, the best trip is always the one that meets all your needs, so make a list of all the things that you want from this journey and look for something that will satisfy all of them. Here we will go through some of the factors mostly commonly taken into consideration.

Look for the lowest price

Ticket price is usually the main concern: even if you can afford to pay more, why do it if there are cheaper options? Saving on the trip means that you can spend more on the vacation itself! Between Surabaya and Jakarta, you can pay as low as £11 with a Bus from Harapan Jaya.

Travel duration

Time is also an important factor. An earlier departure may allow you to see a beautiful sunset or relax before an important event. And remember, time is money, so paying more for a shorter trip may be well worth it. For longer distances, flights are without doubt the best options, but be mindful of airport times and possible delays: a high-speed train may end up cheaper and faster! Here the quicker option is definitely the Flight from Batik Air: you will get to Jakarta in just 1h 30m.

Comfort makes all the difference

You should always take into account what your personal travelling preferences are. Is one hand luggage enough, or are you trasporting more? Would you like to have a snack during the journey? Can you relax in a busy compartment, or do you need space for yourself? Even among the same mode of transportation, different companies will offer you varying levels of comfort and amenities. The main operators connecting Surabaya and Jakarta are Harapan Jaya, Kramat Djati and Pahala Kencana, but be sure to check what they have to offer!

Save money with deals, and always compare

One last tip? Even if you live in Surabaya and Jakarta is your only destination, it may be wise to check the offers from and to nearby cities or, if you are flyng, nearby airports. Check the trips from Surbaya or to Tebet, and look at flights from Surabaya Airport, and landing at Halim Perdanakusuma Airport. Comparing different routes may allow you to find deals or promotions you were not aware of. Consider also signing up to CheckMyBus to see even more exclusive promotions!

Which companies offer a trip from Surabaya to Jakarta?

The most popular companies between Surabaya and Jakarta, are Harapan Jaya, Kramat Djati and Pahala Kencana. Be sure to check their seat class offers and the amenities that they provide.

Bus companies: Harapan Jaya, Kramat Djati, Pahala Kencana and 5 more.

Airlines: Citilink, Garuda Indonesia and Batik Air

All you need to know when you travel from Surabaya to Jakarta

Check all information on comfort and services on all modes of transports from Surabaya to Jakarta. See which seat classes are available, and what amenities are other advantages offered by the operators on your journey.

FAQs about the trip from Surabaya to Jakarta

How can I reach Jakarta from Surabaya?

Every day, there are on average 5 connections between Flight and Bus, with which you can get to Jakarta from Surabaya.

How far is Jakarta from Surabaya?

The distance between Surabaya and Jakarta is 662.2 km.

What is the most ecofriendly mode of transport between Surabaya and Jakarta?

Trains and buses are by far the greenest options, with trains surpassing buses on longer routes. Planes will always be the worst polluters, especially in shorter flights, were the emissions from the takeoff and landing are less offset by the distance. On this particular route, a bus will emit, per person, a total of 18 kgs of CO2, a train 23 kgs, a car 113 kgs, and a flight 163 kgs.

What is the cheapest mode of transport from Surabaya to Jakarta?

You can get to Jakarta with just £11 by taking a Bus from Harapan Jaya.

What is the fastest way to get from Surabaya to Jakarta?

While a plane is travelling fastest boarding and transfer to airport consumes a lot of time. Usually, high speed trains are better than flights if pure train travel time is below 4 hours. For this particular route, you can get to Jakarta in just 1h 30m with a Flight from Batik Air.

More routes to Surabaya and to Jakarta

Looking for more options? Here you can see the most popular routes to Surabaya and to Jakarta. Simply click on a connection, and you’ll find all the details about the route!

The CheckMyBus App

Free Download

App Store
CheckMyBus App
Close
GPDR CheckMyBus shield

We value your privacy!

To

show

you

the

best

bus

deals,

we

and

our

partners

use

technical,

analytical,

and

marketing

cookies

for

ads

personalisation.

We

remember

your

anonymized

details

to

provide

a

personalized

experience.