How to travel from Surabaya to Denpasar, Indonesia

The distance between Surabaya and Denpasar is around 334km (208 miles) and the quickest way to get there is to fly which takes around 1h 25m.

7 routes found

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

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

🚀 Fastest
1
plane
+

Fly

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

  • Duration1h 25m
  • Flight time55min
  • Typical cost
    IDR 913,655($61)
Operated by

Lion Mentari Airlines

+ 3 others
2
bus
+

Bus

Take the bus to Terminal Mengwi.

  • Duration12h 15m
  • Departsonce daily
  • Typical cost
    IDR 464,315($31)
Operated by

Gunung Harta

1 similiar route

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

3
train
+
bus
+

Train and Bus

Take the train to Ketapang then take the bus to Denpasar.

  • Duration10h 45m
  • Departstwice daily
  • Typical cost
    IDR 404,405($27)
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 Denpasar.

  • Duration6h 30m
  • Departshourly
  • Typical cost
    IDR 389,425($26)
Operated by

Multiple operators

Frequently asked questionsabout travel between Surabaya and Denpasar

There are several options for getting from Surabaya to Denpasar by plane, train, ferry, bus and car. The cheapest option is to drive and then take a ferry which costs around IDR 389,425 ($26) and will take around 6h 30m. If you need to get there more quickly, you can fly and arrive in approximately 1h 25m, though it is a bit more costly at approximately IDR 913,655 ($61).

The distance between Surabaya and Denpasar is around 334km (208 miles). In a direct line (as the crow flies), the distance is 315km (196 miles)

It takes around 1h 25m to get from Surabaya and Denpasar by plane.

The quickest way to get from Surabaya to Denpasar is to fly which takes around 1h 25m and will set you back approx IDR 913,655 ($61).

The cheapest way to travel between Surabaya and Denpasar is to drive and then take a ferry which will typically cost around IDR 389,425 ($26) for a standard one-way ticket.

Train travel

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

Bus travel

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

There are no direct bus services that runs from Surabaya to Denpasar. 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, Damri and LADJU Trans run regular bus services between Surabaya and Denpasar. 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 Denpasar. 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 Denpasar with no stop-overs required. Flights typically take around 55min.

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

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

The closest major airport to Denpasar is Ngurah Rai International Airport (DPS) (DPS) which is approximately 12km (7 miles) from Denpasar. Blimbingsari Airport (BWX) (BWX) and Zainuddin Abdul Madjid International Airport (LOP) (LOP) 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 Denpasar. We recommend that you fly from Juanda International (SUB) to Ngurah Rai (DPS). instead which will take 1h 25m.

If you don't have a car, the easiest way to get from Surabaya to Denpasar is to fly which takes, on average, 1h 25m and will usually cost around IDR 913,655 ($61).

How do I get from Surabaya to Denpasar

Compare travel optionsbetween Surabaya and Denpasar

Transport options from Surabaya to Denpasar
Transport optionDurationCostFrequencyDistance
Fly
1h 25m
IDR 913,655($61)
on demand334km (208 miles)
Bus + 1 similar
12h 15m
IDR 464,315($31)
once daily428km (266 miles)
Bus via Banyuwangi13hrs
IDR 479,295($32)
twice daily449km (279 miles)
Train and Bus + 2 similar
10h 45m
IDR 404,405($27)
twice daily439km (273 miles)
Train to Ketapang, Bus11h 15m
IDR 404,405($27)
once daily442km (275 miles)
Train, Ferry and Bus10hrs
IDR 479,295($32)
twice daily440km (273 miles)
Car and Ferry
6h 30m
IDR 389,425($26)
hourly425km (264 miles)

Top Carriersoperating between Surabaya and Denpasar

Airlines

Ferry operators

Bus companies

Train operators

Airports near Denpasar

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

DPS
Ngurah Rai International Airport (DPS)
International Airport
Distance
12km (7 miles) from Denpasar
BWX
Blimbingsari Airport (BWX)
Domestic Airport
Distance
104km (65 miles) from Denpasar
LOP
Zainuddin Abdul Madjid International Airport (LOP)
International Airport
Distance
117km (72 miles) from Denpasar