Rome2Rio

How to get fromKlia to Surabayaby plane, bus, ferry, or train

Find Transport to Surabaya

See all options

There are 7 ways to get from Klia to Surabaya by plane, bus, ferry, or train

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 Kuala Lumpur International Airport to Juanda International Airport

    best
    1. Fly from Kuala Lumpur International Airport (KUL) to Juanda International Airport (SUB)plane plane KUL - SUB
    8h 39m
    Rp 1,428,407–4,596,607
  2. Bus, ferry via Jakarta

    cheapest
    1. Take the bus from KL International Airport 1 to Jalan Tun Aminahbus bus
    2. Take the ferry from Berjaya Waterfront Ferry Terminal Johor Bahru to Batam Centreferry ferry
    3. Take the ferry from Batu Ampar to Port of Tanjung Priokferry ferry
    4. Take the bus from DAMRI Bus Station Jakarta to Surabaya Kotabus bus
    2d 9h
    Rp 1,398,951–2,244,374
  3. Fly Kuala Lumpur International Airport to Abdul Rachman Saleh Airport, train

    1. Fly from Kuala Lumpur International Airport (KUL) to Abdul Rachman Saleh Airport (MLG)plane plane KUL - MLG
    2. Take the train from Lawang to Gubengtrain train
    10h 52m
    Rp 4,053,907–5,256,607
  4. Train to Sultan Abdul Aziz Shah, fly to Juanda International Airport

    1. Take the train from Klia T1 to KL Sentraltrain train
    2. Fly from Sultan Abdul Aziz Shah (SZB) to Juanda International Airport (SUB)plane plane SZB - SUB
    11h 38m
    Rp 1,427,329–6,405,571
  5. Fly Kuala Lumpur International Airport to Ahmad Yani, train

    1. Fly from Kuala Lumpur International Airport (KUL) to Ahmad Yani (SRG)plane plane KUL - SRG
    2. Take the train from Semarang Tawang to Surabaya Pasar Turitrain train
    9h 45m
    Rp 2,048,907–4,446,607
  6. Train, bus, ferry

    1. Take the train from Klia T1 to Bandar Tasik Selatantrain train
    2. Take the bus from Terminal Bersepadu Selatan to Johor Larkin Terminalbus bus
    3. Take the ferry from Puteri Harbour Ferry to Batam Harbour Bayferry ferry
    4. Take the ferry from Batu Ampar to Port of Tanjung Priokferry ferry
    5. Take the ferry from Tanjung Priok to Surabayaferry ferry
    3d 6h
    Rp 1,546,829–2,263,425
  7. Bus, ferry

    1. Take the bus from KL International Airport 1 to Jalan Tun Aminahbus bus
    2. Take the bus from Johor Bahru CIQ to Changi Airport Terminal 1bus bus Ts1
    3. Take the ferry from Tanah Merah to Sri Bintan Pura Ferry Terminalferry ferry
    4. Take the ferry from Pelabuhan Sri Bayintan Kijang to Surabaya - Tanjung Perak Portferry ferry
    3d 14h
    Rp 1,713,077–3,629,300

Kuala Lumpur International Airport (KUL) to Juanda International Airport (SUB) flights

Calendar65Weekly Planes
Duration3h 9mAverage Duration
TicketRp 1,241,044Cheapest Price
See schedules

Questions & Answers

What companies run services between Klia, Malaysia and Surabaya, Indonesia?

Indonesia AirAsia, Malindo Airways, and two other airlines fly from Kuala Lumpur International Airport (KUL) to Juanda International Airport (SUB) every 3 hours.

Airlines
Train operators
Bus operators
Ferry 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: Jadrolinija, How to travel India's Golden Triangle, and What documents do I need to cross Niagara Falls? - to help you get the most out of your next trip.