How to travel from Surabaya to Canggu, Indonesia

The distance between Surabaya and Canggu is around 340km (211 miles) and the quickest way to get there is to fly which takes around 1h 35m.

7 routes found

We've found 7 different ways to get from Surabaya to Canggu by plane, train, ferry, taxi, bus and car. The recommended routes, which include information on duration, ticket price, and level of difficulty, can be found below.

👋 Also check out CangguSurabaya if you're planning a return trip.

🚀 Fastest
1
plane
+

Fly

Fly from Juanda International (SUB) to Ngurah Rai (DPS).

  • Duration1h 35m
  • Flight time55min
  • Typical cost
    IDR 823,790($55)
Operated by

Lion Mentari Airlines

+ 3 others
2
bus
+
bus
+

Bus via Jember

Take the bus to Jember and then to Terminal Mengwi.

  • Duration11h 15m
  • Departsonce daily
  • Typical cost
    IDR 509,250($34)
Operated by

Multiple bus operators

1 similiar route

We’ve grouped similar routes together, click the arrows to see the other options.

3
train
+
ferry
+
taxi
+

Train, Ferry and Taxi

Take the train to Ketapang then take a ferry to Gilimanuk then take a taxi to Canggu.

  • Duration8h 35m
  • Departstwice daily
  • Typical cost
    IDR 1,632,595($110)
Operated by

Multiple operators

2 similiar routes

We’ve grouped similar routes together, click the arrows to see the other options.

💰 Cheapest
4
car
+
ferry
+
car
+

Car and Ferry

Drive to Ketapang then take a ferry to Gilimanuk then drive to Canggu.

  • Duration6h 15m
  • Departshourly
  • Typical cost
    IDR 374,450($25)
Operated by

Multiple operators

Frequently asked questionsabout travel between Surabaya and Canggu

There are several options for getting from Surabaya to Canggu by plane, train, ferry, taxi, bus and car. The cheapest option is to drive and then take a ferry which costs around IDR 374,450 ($25) and will take around 6h 15m. If you need to get there more quickly, you can fly and arrive in approximately 1h 35m, though it is a bit more costly at approximately IDR 823,790 ($55).

The distance between Surabaya and Canggu is around 340km (211 miles). In a direct line (as the crow flies), the distance is 37km (23 miles)

It takes around 1h 35m to get from Surabaya and Canggu by plane.

The quickest way to get from Surabaya to Canggu is to fly which takes around 1h 35m and will set you back approx IDR 823,790 ($55).

The cheapest way to travel between Surabaya and Canggu is to drive and then take a ferry which will typically cost around IDR 374,450 ($25) for a standard one-way ticket.

Train travel

There is no train service that runs between Surabaya and Canggu. We recommend that you fly from Juanda International (SUB) to Ngurah Rai (DPS). instead which will take 1h 35m.

Bus travel

Yes there is a bus that runs regularly from Surabaya and Canggu. It typically takes around 12h 15m and departs once daily.

There are no direct bus services that runs from Surabaya to Canggu. However, you can instead can take several connecting buses with changeovers in Terminal Mengwi. These services run once daily and will take a minimum of 12h 15m.

Gunung Harta, Kamilah Tour & Travel and Bali Jaya Trans run regular bus services between Surabaya and Canggu. Buses run once daily and take around 12h 15m on average but will vary depending on you book with.

Flights and Airlines

Yes you can fly from Surabaya and Canggu. Flights depart from Juanda International (SUB) and arrive at Ngurah Rai (DPS). The flight takes around 55min.

Yes there is a direct flight between Surabaya and Canggu with no stop-overs required. Flights typically take around 55min.

Lion Mentari Airlines, Citilink Indonesia, Garuda Indonesia and Indonesia AirAsia fly between Surabaya and Canggu. Flights depart from Juanda International (SUB) and and arrive into Ngurah Rai (DPS). These flights usually take around 55min.

The flight from Surabaya to Canggu typically takes around 55min. Flights depart from Juanda International (SUB) and and arrive into Ngurah Rai (DPS).

The closest major airport to Canggu is Juanda International Airport (SUB) (SUB) which is approximately 37km (23 miles) from Canggu. Abdul Rachman Saleh Airport (MLG) (MLG) and Adisumarmo International Airport (SOC) (SOC) are also nearby and might be a better alternative airport depending on where you are flying from.

Drive yourself

No, its not really possible or feasible to drive from Surabaya to Canggu. We recommend that you fly from Juanda International (SUB) to Ngurah Rai (DPS). instead which will take 1h 35m.

If you don't have a car, the easiest way to get from Surabaya to Canggu is to fly which takes, on average, 1h 35m and will usually cost around IDR 823,790 ($55).

How do I get from Surabaya to Canggu

Compare travel optionsbetween Surabaya and Canggu

Transport options from Surabaya to Canggu
Transport optionDurationCostFrequencyDistance
Fly
1h 35m
IDR 823,790($55)
on demand340km (211 miles)
Bus via Jember + 1 similar
11h 15m
IDR 509,250($34)
once daily439km (273 miles)
Bus12h 15m
IDR 449,340($30)
once daily426km (265 miles)
Train, Ferry and Taxi + 2 similar
8h 35m
IDR 1,632,595($110)
twice daily435km (270 miles)
Train, Ferry and Bus9h 50m
IDR 449,340($30)
twice daily438km (272 miles)
Train to Ketapang, ferry and bus10h 20m
IDR 449,340($30)
once daily441km (274 miles)
Car and Ferry
6h 15m
IDR 374,450($25)
hourly420km (261 miles)

Top Carriersoperating between Surabaya and Canggu

Airlines

Ferry operators

Bus companies

Train operators

Airports near Canggu

The following major airports near Canggu offer regular flights to various popular destinations within Indonesia and internationally.

SUB
Juanda International Airport (SUB)
International Airport
Distance
37km (23 miles) from Canggu
MLG
Abdul Rachman Saleh Airport (MLG)
Domestic Airport
Distance
62km (38 miles) from Canggu
SOC
Adisumarmo International Airport (SOC)
International Airport
Distance
189km (117 miles) from Canggu