How to travel from Surakarta to Bali, Indonesia

The distance between Surakarta and Bali is around 521km (324 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 Surakarta to Bali by plane, train, bus, ferry and car. The recommended routes, which include information on duration, ticket price, and level of difficulty, can be found below.

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

🚀 Fastest
1
plane
+

Fly

Fly from Solo (SOC) to Ngurah Rai (DPS).

  • Duration1h 35m
  • Flight time1h 15m
  • Typical cost
    IDR 1,288,105($86)
Operated by

Lion Mentari Airlines

+ 2 others

3 similiar routes

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

2
bus
+
bus
+

Bus

Take the bus to Surabaya and then to Terminal Mengwi.

  • Duration19h 30m
  • Departsonce daily
  • Typical cost
    IDR 569,160($38)
Operated by

Multiple bus operators

💰 Cheapest
3
train
+
ferry
+
bus
+

Train, Ferry and Bus

Take the train to Ketapang then take a ferry to Gilimanuk then take the bus to Terminal Ubung.

  • Duration14h 5m
  • Departstwice daily
  • Typical cost
    IDR 374,450($25)
Operated by

Multiple operators

4
car
+
ferry
+
car
+

Car and Ferry

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

  • Duration8h 55m
  • Departshourly
  • Typical cost
    IDR 1,108,370($74)
Operated by

Multiple operators

Frequently asked questionsabout travel between Surakarta and Bali

There are several options for getting from Surakarta to Bali by plane, train, bus, ferry and car. The cheapest option is to take the train, then take a ferry and then take the bus which costs around IDR 374,450 ($25) and will take around 14h 5m. 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 1,288,105 ($86).

The distance between Surakarta and Bali is around 521km (324 miles). In a direct line (as the crow flies), the distance is 477km (296 miles)

It takes around 1h 35m to get from Surakarta and Bali by plane.

The quickest way to get from Surakarta to Bali is to fly which takes around 1h 35m and will set you back approx IDR 1,288,105 ($86).

The cheapest way to travel between Surakarta and Bali is to take the train, then take a ferry and then take the bus 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 Surakarta and Bali. We recommend that you fly from Solo (SOC) to Ngurah Rai (DPS). instead which will take 1h 35m.

Bus travel

Yes there is a bus that runs regularly from Surakarta and Bali. It typically takes around 19h 30m and departs once daily.

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

Putra Agung and Gunung Harta run regular bus services between Surakarta and Bali. Buses run once daily and take around 19h 30m on average but will vary depending on you book with.

Flights and Airlines

Yes you can fly from Surakarta and Bali. Flights depart from Solo (SOC) and arrive at Ngurah Rai (DPS). The flight takes around 1h 15m.

Yes there is a direct flight between Surakarta and Bali with no stop-overs required. Flights typically take around 1h 15m.

Lion Mentari Airlines, Indonesia AirAsia and Wings Air fly between Surakarta and Bali. Flights depart from Solo (SOC) and and arrive into Ngurah Rai (DPS). These flights usually take around 1h 15m.

The flight from Surakarta to Bali typically takes around 1h 15m. Flights depart from Solo (SOC) and and arrive into Ngurah Rai (DPS).

The closest major airport to Bali is Ngurah Rai International Airport (DPS) (DPS) which is approximately 47km (29 miles) from Bali. 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 Surakarta to Bali. We recommend that you fly from Solo (SOC) to Ngurah Rai (DPS). instead which will take 1h 35m.

If you don't have a car, the easiest way to get from Surakarta to Bali is to fly which takes, on average, 1h 35m and will usually cost around IDR 1,288,105 ($86).

How do I get from Surakarta to Bali

Compare travel optionsbetween Surakarta and Bali

Transport options from Surakarta to Bali
Transport optionDurationCostFrequencyDistance
Fly + 3 similar
1h 35m
IDR 1,288,105($86)
hourly521km (324 miles)
Train and Plane2h 50m
IDR 2,231,715($150)
every 3 hours585km (364 miles)
Train to Wates, Fly3h 15m
IDR 1,497,795($100)
every 20 mins675km (419 miles)
Bus and Plane3h 45m
IDR 2,501,320($165)
twice daily676km (420 miles)
Bus
19h 30m
IDR 569,160($38)
once daily689km (428 miles)
Train, Ferry and Bus
14h 5m
IDR 374,450($25)
twice daily691km (429 miles)
Car and Ferry
8h 55m
IDR 1,108,370($74)
hourly655km (407 miles)

Top Carriersoperating between Surakarta and Bali

Airlines

Ferry operators

Bus companies

Train operators

Airports near Bali

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

DPS
Ngurah Rai International Airport (DPS)
International Airport
Distance
47km (29 miles) from Bali
BWX
Blimbingsari Airport (BWX)
Domestic Airport
Distance
83km (51 miles) from Bali
LOP
Zainuddin Abdul Madjid International Airport (LOP)
International Airport
Distance
139km (86 miles) from Bali