Rome2Rio

How to get fromSurabaya to Jakarta Rayaby plane, train, bus, car, or shuttle

Find Transport to Jakarta Raya

See all options
QR code to download the Rome2Rio app

Download the Rome2Rio travel app

Scan QR code with your phone to download the app

Download on the App StoreGet it on Google Play

There are 7 ways to get from Surabaya to Jakarta Raya by plane, train, bus, car, or shuttle

Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.

  1. Fly to Soekarno–Hatta International Airport

    best
    1. Fly from Juanda International Airport (SUB) to Soekarno–Hatta International Airport (CGK)plane plane SUB - CGK
    2h 42m
    Rp 1,248,196–1,679,959
  2. Bus

    cheapest
    1. Take the bus from Surabaya Kota to DAMRI Bus Station Jakartabus bus Surabaya Kota - Jakarta
    11h 13m
    Rp 220,218–803,215
  3. Train

    1. Take the train from Surabaya Pasar Turi to Jatinegaratrain train Argo Bromo Anggrek / ...
    8h 3m
    Rp 320,000–431,264
  4. Drive  727.8 km

    1. Drive from Surabaya to Jakartacar car 727.8 km
    9h 8m
    Rp 1,254,898–1,812,630
  5. Fly to Halim Perdanakusuma Airport, bus

    1. Fly from Juanda International Airport (SUB) to Halim Perdanakusuma Airport (HLP)plane plane SUB - HLP
    2. Take the bus from Jln. Komodor 2 to PGC Dalambus bus
    3. Take the bus from Cililitan to Matraman Barubus bus
    2h 44m
    Rp 1,339,696–2,064,459
  6. Train via Jakarta Gambir

    1. Take the train from Surabaya Pasar Turi to Jakarta Gambirtrain train Argo Bromo Anggrek / ...
    8h 4m
    Rp 323,500–439,003
  7. Shuttle, bus

    1. Take a shuttle bus from Surabaya to Kudusshuttle bus Surabaya
    2. Take the bus from Kudus to Jakarta Kampung Rambutan Bus Stationbus bus
    15h 38m
    Rp 427,759–742,759

Surabaya to Jakarta Raya by train, foot, and bus

Calendar42Weekly Services
Duration8h 3mAverage Duration
TicketRp 320,000Cheapest Price
See schedules

Comparing Your Travel Options

What companies run services between Surabaya, Indonesia and Jakarta Raya, Indonesia?

Citilink Indonesia, Super Air Jet, and four other airlines fly from Juanda International Airport (SUB) to Soekarno–Hatta International Airport (CGK) hourly. Alternatively, Kereta API operates a train from Surabaya Pasar Turi to Jatinegara every 4 hours. Tickets cost Rp 320,000–440,000 and the journey takes 7h 40m.

Airlines
Train operators
Bus operators

Want to know more about travelling around the world?

Rome2Rio's Travel Guide series provide vital information for the global traveller. Read our range of informative guides on popular transport routes and companies - including Getting to Rome from the airport, Travelling around the UAE, and Is ride-sharing platform BlaBlaCar right for you? - to help you get the most out of your next trip.

Booking & Getting There