Rome2Rio

How to get fromJakarta Kota to Surabayaby train, bus, car, plane, or shuttle

Find Transport to Surabaya

See all options

There are 12 ways to get from Jakarta Kota to Surabaya by train, bus, car, plane, 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. Train via Selatan St. Gondangdia

    best
    1. Take the train from Jakarta Gambir to Surabaya Pasar Turitrain train Argo Bromo Anggrek / ...
    9h 12m
    Rp 326,500–451,500
  2. Bus

    cheapest
    1. Take the bus from DAMRI Bus Station Jakarta to Surabaya Kotabus bus Jakarta - Surabaya Kota
    12h 4m
    Rp 212,849–802,849
  3. Drive 733.9 km

    1. Drive from Jakarta Kota to Surabayacar car 733.9 km
    9h 25m
    Rp 1,448,334–2,092,037
  4. Train, bus to Halim Perdanakusuma Airport, fly to Juanda International Airport

    1. Take the train from Jakarta Kota to Cawangtrain train
    2. Take the bus from St. Cawang 3 to PGC Dalambus bus
    3. Fly from Halim Perdanakusuma Airport (HLP) to Juanda International Airport (SUB)plane plane HLP - SUB
    4. Take the train from Waru to Surabaya Gubengtrain train
    6h 20m
    Rp 1,212,500–2,378,000
  5. Train

    1. Take the train from Pasar Senen to Surabaya Pasar Turitrain train Gumarang / ...
    12h 1m
    Rp 322,849–442,849
  6. Bus, shuttle

    1. Take the bus from Jakarta Daan Mogot to Kudusbus bus
    2. Take a shuttle bus from Kudus to Surabayashuttle bus Surabaya
    18h 40m
    Rp 483,500–753,500
  7. Bus to Soekarno–Hatta International Airport, fly to Juanda International Airport, train

    1. Take the bus from Pasar Baru to Jakarta Airportbus bus
    2. Fly from Soekarno–Hatta International Airport (CGK) to Juanda International Airport (SUB)plane plane CGK - SUB
    3. Take the train from Waru to Surabaya Gubengtrain train
    6h 21m
    Rp 1,028,000–2,531,500
  8. Fly Halim Perdanakusuma Airport to Abdul Rachman Saleh Airport, train

    1. Fly from Halim Perdanakusuma Airport (HLP) to Abdul Rachman Saleh Airport (MLG)plane plane HLP - MLG
    2. Take the train from Lawang to Gubengtrain train
    6h 27m
    Rp 1,738,000–6,938,000
  9. Bus to Soekarno–Hatta International Airport, fly to Abdul Rachman Saleh Airport, train

    1. Take the bus from Pasar Baru to Jakarta Airportbus bus
    2. Fly from Soekarno–Hatta International Airport (CGK) to Abdul Rachman Saleh Airport (MLG)plane plane CGK - MLG
    3. Take the train from Lawang to Gubengtrain train
    6h 33m
    Rp 1,453,500–2,591,500
  10. Bus to Soekarno–Hatta International Airport, fly to Ahmad Yani, train

    1. Take the bus from Pasar Baru to Jakarta Airportbus bus
    2. Fly from Soekarno–Hatta International Airport (CGK) to Ahmad Yani (SRG)plane plane CGK - SRG
    3. Take the train from Semarang Tawang to Surabaya Pasar Turitrain train
    7h 17m
    Rp 1,248,500–2,781,500
  11. Bus to Soekarno–Hatta International Airport, fly to Kediri, shuttle

    1. Take the bus from Pasar Baru to Jakarta Airportbus bus
    2. Fly from Soekarno–Hatta International Airport (CGK) to Kediri (DHX)plane plane CGK - DHX
    3. Take a shuttle bus from Nganjuk to Surabayashuttle bus
    6h 3m
  12. Bus to Soekarno–Hatta International Airport, fly to Adisumarmo International Airport, train

    1. Take the bus from Pasar Baru to Jakarta Airportbus bus
    2. Fly from Soekarno–Hatta International Airport (CGK) to Adisumarmo International Airport (SOC)plane plane CGK - SOC
    3. Take the train from Solo Balapan to Surabaya Gubengtrain train
    8h 13m
    Rp 1,125,500–1,988,500

Jakarta Kota to Surabaya by train and bus

Calendar28Weekly Services
Duration9h 12mAverage Duration
TicketRp 326,500Cheapest Price
See schedules

Questions & Answers

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

Kereta API operates a train from Jakarta Gambir to Surabaya Pasar Turi 4 times a day. Tickets cost Rp 320,000–440,000 and the journey takes 7h 45m. Alternatively, Damri operates a bus from DAMRI Bus Station Jakarta to Surabaya Kota once daily. Tickets cost Rp 210,000–800,000 and the journey takes 10h.

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 How to get from Luton Airport into central London, Need to know: Eurostar, and Travelling Croatia’s Dalmatian Coast by boat, bus, car and train - to help you get the most out of your next trip.

More Questions & Answers