From
To
Thu 1/28
Thu 2/4
Any month
Compare vs Cheapflights |
From
To
Leaving on
Thu 1/28
Time
Anytime
From
To
Leaving on
Depart
Time
Anytime
From
To
Leaving on
Depart
Time
Anytime
From
To
Leaving on
Depart
Time
Anytime
From
To
Leaving on
Depart
Time
Anytime
From
To
Leaving on
Depart
Time
Anytime

We work with more than 300 partners to bring you better travel deals

Return
Economy
Thu 1/28
Thu 2/4
From
#smartAirportField( "origin${leg}", $options['origin'], $options['originCode'], "#string('FROM_TO_INPUT_PLACEHOLDER_FFD')", "origin$leg", "origincode$leg" ) #nearbyAirportField("nearbyOriginCheck$leg", $nearbyO, false "$!options['origin']")
To
#smartAirportField( "destination${leg}", $options['destination'], $options['destinationCode'], "#string('FROM_TO_INPUT_PLACEHOLDER_FFD')", "destination${leg}", "destinationcode${leg}" ) #nearbyAirportField("nearbyDestinationCheck${leg}", $nearbyD, false, "$!options['destination']")
Leaving on
Thu 1/28
Time
Anytime
From
#smartAirportField( "origin${leg}", $options['origin'], $options['originCode'], "#string('FROM_TO_INPUT_PLACEHOLDER_FFD')", "origin$leg", "origincode$leg" ) #nearbyAirportField("nearbyOriginCheck$leg", $nearbyO, false "$!options['origin']")
To
#smartAirportField( "destination${leg}", $options['destination'], $options['destinationCode'], "#string('FROM_TO_INPUT_PLACEHOLDER_FFD')", "destination${leg}", "destinationcode${leg}" ) #nearbyAirportField("nearbyDestinationCheck${leg}", $nearbyD, false, "$!options['destination']")
Leaving on
Depart
Time
Anytime
#removeLegButton($self.id("removeLeg$leg"))
From
#smartAirportField( "origin${leg}", $options['origin'], $options['originCode'], "#string('FROM_TO_INPUT_PLACEHOLDER_FFD')", "origin$leg", "origincode$leg" ) #nearbyAirportField("nearbyOriginCheck$leg", $nearbyO, false "$!options['origin']")
To
#smartAirportField( "destination${leg}", $options['destination'], $options['destinationCode'], "#string('FROM_TO_INPUT_PLACEHOLDER_FFD')", "destination${leg}", "destinationcode${leg}" ) #nearbyAirportField("nearbyDestinationCheck${leg}", $nearbyD, false, "$!options['destination']")
Leaving on
Depart
Time
Anytime
#removeLegButton($self.id("removeLeg$leg"))
From
#smartAirportField( "origin${leg}", $options['origin'], $options['originCode'], "#string('FROM_TO_INPUT_PLACEHOLDER_FFD')", "origin$leg", "origincode$leg" ) #nearbyAirportField("nearbyOriginCheck$leg", $nearbyO, false "$!options['origin']")
To
#smartAirportField( "destination${leg}", $options['destination'], $options['destinationCode'], "#string('FROM_TO_INPUT_PLACEHOLDER_FFD')", "destination${leg}", "destinationcode${leg}" ) #nearbyAirportField("nearbyDestinationCheck${leg}", $nearbyD, false, "$!options['destination']")
Leaving on
Depart
Time
Anytime
#removeLegButton($self.id("removeLeg$leg"))
From
#smartAirportField( "origin${leg}", $options['origin'], $options['originCode'], "#string('FROM_TO_INPUT_PLACEHOLDER_FFD')", "origin$leg", "origincode$leg" ) #nearbyAirportField("nearbyOriginCheck$leg", $nearbyO, false "$!options['origin']")
To
#smartAirportField( "destination${leg}", $options['destination'], $options['destinationCode'], "#string('FROM_TO_INPUT_PLACEHOLDER_FFD')", "destination${leg}", "destinationcode${leg}" ) #nearbyAirportField("nearbyDestinationCheck${leg}", $nearbyD, false, "$!options['destination']")
Leaving on
Depart
Time
Anytime
#removeLegButton($self.id("removeLeg$leg"))
From
#smartAirportField( "origin${leg}", $options['origin'], $options['originCode'], "#string('FROM_TO_INPUT_PLACEHOLDER_FFD')", "origin$leg", "origincode$leg" ) #nearbyAirportField("nearbyOriginCheck$leg", $nearbyO, false "$!options['origin']")
To
#smartAirportField( "destination${leg}", $options['destination'], $options['destinationCode'], "#string('FROM_TO_INPUT_PLACEHOLDER_FFD')", "destination${leg}", "destinationcode${leg}" ) #nearbyAirportField("nearbyDestinationCheck${leg}", $nearbyD, false, "$!options['destination']")
Leaving on
Depart
Time
Anytime
#removeLegButton($self.id("removeLeg$leg"))
#infantInLapWarning('multiRightOfTravelers')
Home Asia Cheap flights to Indonesia

Cheap Flights to Indonesia

Popular inDecemberHigh demand for flights, 5% potential price rise
Cheapest inNovemberBest time to find cheap flights, 3% potential price drop
Average priceR10 277Average for round-trip flights in January 2021
Round-trip fromR9 323From Johannesburg to Denpasar
One-way fromR7 279One-way flight from Johannesburg to Denpasar
Flight route prices based on searches on Cheapflights within the last 3 days, monthly prices based on aggregated historical data.

Cheapest prices for Indonesia flights by month

January
R9 695
February
R9 588
March
R9 575
April
R10 168
May
R9 494
June
R9 931
July
R10 839
August
R10 721
September
R10 479
October
R9 388
November
R9 094
December
R10 416
Currently, the cheapest month for flights to Indonesia is November. The most expensive month for flights is July. The cheapest prices are shown above but prices will vary according to departure times, airlines, class and how early you book.

When is the best time to fly to Indonesia?

Average Denpasar Bali Ngurah Rai flight ticket prices and weather conditions for 2021 and 2022 by month.
JNB - DPS
Price
R9 094 - R13 710
DPS
Temperature
29 - 32 °C
DPS
Rainfall
1 - 191 mm

 

Peak season:

Generally speaking, Indonesia’s dry season – running from June through September – is peak tourist season. A lot of entertainment venues close up during Ramadan, and a lot of Indonesians tend to spend time with their families at the end of this time, also known as Eid Al-Fitr. If you’re planning on surfing, make sure you book a cheap flight to Indonesia somewhere between April and September. Keep in mind that peak season in Indonesia sees a spike in accommodation and flight rates, so be sure to book your flights well in advance if you’re planning a peak season Indonesian holiday.

 

Off season:

Indonesia’s wet season runs from mid-January through to March and also marks the off season for touristic activities, although this varies greatly depending on which island you’re visiting. The off season offers you with the opportunity to find cheaper flight and accommodation deals, but do make sure you book well in advance to avoid stumbling into availability issues at some of the more popular islands such as Bali.

 

 

When is the best time to book a flight to Indonesia?

 

The Indonesian archipelago has tropical temperatures year round, which means that any time can be a great time to visit the country. The best time to book a flight to Indonesia would generally be between May and September if you’re looking at enjoying dry, sunny weather, but this can cost a lot more than it would should you book a flight between August and April.

 

 

Which day is cheapest to fly to Indonesia?

The cheapest day to fly to Indonesia is usually Wednesday. At the moment, Saturday is the most expensive.

What time of day is cheapest to fly to Indonesia?

At the moment, flights in the afternoon are likely to offer the best value for money for your Indonesia trip. A flight at midday will more often than not be of higher cost.

As one of Southeast Asia’s best kept secrets, Indonesia comprises of over 170,000 islands, each one more beautiful than the last, and each one offering the promise of forever captivating the soul of a humble tourist.

 

Home to the world’s second largest tropical forest, active volcanoes, a diverse variety of wildlife, and some of the most pristine beaches on earth, Wonderful Indonesia offers a little something for everybody. With the cheap flights on offer, there has never been a better time to start planning your trip than right now!

 

 

How long is the flight to Indonesia?

 

Johannesburg to Jakarta                      13 hours, 40 minutes
Johannesburg to Bali Denpasar          13 hours, 50 minutes
Johannesburg to Surabaya                  14 hours, 20 minutes  

 

Which airlines operate flights to Indonesia?

 

Qatar Airways, Qantas, Singapore Airlines, South African Airways, and Kenya Airways all offer cheap flights to and from Indonesia. Although all of them have their own set of pros and cons, you’ll have to decide whether cheaper flight prices or more onboard comfort is essential to you. The cheapest flights to Indonesia are often found using South African Airways, although the more comfortable option might well be flying with an airline such as Qatar Airways.

 

 

How to get from the airport to the city center?

 

Jakarta

When you arrive at Soekarno Hatta International Airport in Jakarta, you can either use the bus service or a taxi to get to the city center. Buses run to the city center every 20 to 40 minutes, although getting there can take up to an hour. Taxi transfers from the Jakarta airport are easy and convenient to use, and they’re also faster if you’re in a hurry.

 

Denpasar

Ngurah Rai Airport in Denpasar is located 13km south of the city center, and traveling to the city center is relatively easy when making use of the buses and taxis at the airport. You may also hire a car from a car rental company, although this might be easier said than done with all the traffic in the city.

 

Surabaya

The Juanda International Airport is located 30km outside of the city center, which can be reached with a direct bus trip from the airport. There are also a variety of metered taxis parked outside of the airport which may get you to the city center faster than the bus.

Back to top

Select your preferred route to Indonesia from South Africa below

Cheapest flights to Indonesia

Home Asia Cheap flights to Indonesia
  • Return
  • One-way
  • Economy
  • Premium Economy
  • Business
  • First