Rome2Rio

How to get fromBSD City to Surabayaby plane, train, bus, car, or shuttle

Find Transport to Surabaya

See all options

There are 10 ways to get from BSD City to Surabaya 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 Soekarno–Hatta International Airport to Juanda International Airport, train

    best
    1. Fly from Soekarno–Hatta International Airport (CGK) to Juanda International Airport (SUB)plane plane CGK - SUB
    2. Take the train from Waru to Surabaya Gubengtrain train
    4h 36m
    Rp 1,228,157–2,528,413
  2. Train via Jelambar

    cheapest
    1. Take the train from Jakarta Gambir to Surabaya Gubengtrain train Bima
    16h 8m
    Rp 327,000–557,000
  3. Train

    1. Take the train from Jakarta Gambir to Surabaya Pasar Turitrain train Argo Bromo Anggrek / ...
    8h 17m
    Rp 533,207–691,972
  4. Bus

    1. Take the bus from Serpong to Soekarno-Hatta International Airportbus bus
    2. Take the bus from DAMRI Bus Station Jakarta to Surabaya Kotabus bus Jakarta - Surabaya Kota
    13h 23m
    Rp 360,127–1,200,741
  5. Drive 750.5 km

    1. Drive from BSD City to Surabayacar car 750.5 km
    9h 40m
    Rp 1,484,606–2,144,430
  6. Fly Halim Perdanakusuma Airport to Juanda International Airport, train

    1. Fly from Halim Perdanakusuma Airport (HLP) to Juanda International Airport (SUB)plane plane HLP - SUB
    2. Take the train from Waru to Surabaya Gubengtrain train
    4h 44m
    Rp 1,456,512–2,661,924
  7. Fly Soekarno–Hatta International Airport to Abdul Rachman Saleh Airport, train

    1. Fly from Soekarno–Hatta International Airport (CGK) to Abdul Rachman Saleh Airport (MLG)plane plane CGK - MLG
    2. Take the train from Lawang to Gubengtrain train
    4h 49m
    Rp 1,653,657–2,488,413
  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
    4h 51m
    Rp 1,982,012–7,221,924
  9. Fly Soekarno–Hatta International Airport to Ahmad Yani, train

    1. Fly from Soekarno–Hatta International Airport (CGK) to Ahmad Yani (SRG)plane plane CGK - SRG
    2. Take the train from Semarang Tawang to Surabaya Pasar Turitrain train
    5h 32m
    Rp 1,448,657–2,778,413
  10. Fly Soekarno–Hatta International Airport to Kediri, shuttle

    1. Fly from Soekarno–Hatta International Airport (CGK) to Kediri (DHX)plane plane CGK - DHX
    2. Take a shuttle bus from Nganjuk to Surabayashuttle bus
    4h 19m

Soekarno–Hatta International Airport (CGK) to Juanda International Airport (SUB) flights

Calendar213Weekly Planes
Duration1h 34mAverage Duration
TicketRp 1,045,393Cheapest Price
See schedules

Questions & Answers

What companies run services between BSD City, 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, you can take a vehicle from BSD City to Surabaya Kota via Serpong, Soekarno-Hatta International Airport, and DAMRI Bus Station Jakarta in around 13h 23m.

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 Need to know: Greyhound, Getting to Rome from the airport, and Travelling by boat in Italy - to help you get the most out of your next trip.

More Questions & Answers