Cheap flights from Johannesburg to Xiamen

Know your dates, get live prices in seconds:

From
To
Depart
Return
Any month
Compare vs Cheapflights |
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
From
To
Leaving on
Depart
Time
Anytime

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

Return
Economy
Sat 1/23
Sat 1/30
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
Sat 1/23
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')

How to find the cheapest flight from
Johannesburg (JNB) to Xiamen (XMN)

What is the cheapest day to fly return from Johannesburg to Xiamen?

Sunday is generally a great day to depart. Flying on this day could help you save up to 56%.

What is the cheapest month to fly from Johannesburg to Xiamen?

April is one of the best times of the year to fly to Xiamen from Johannesburg. Prices for April average R11 281 per person but you can even find prices for as low as R8 573. The most expensive prices can be found in the month of January. Opting for a April flight can save you 17% on your journey compared to booking in April

When is the cheapest time to fly from Johannesburg to Xiamen (JNB - XMN)?

One of the essential ways to save on airfare from Johannesburg to Xiamen is to remain as flexible as possible. Flights that are in the afternoon tend to be the most expensive. A flight in the evening could potentially save you up to 23% on airfare.

Johannesburg to Xiamen 2021 flight deals

Cheap flights to Xiamen from Johannesburg found for this year
11 Sep - 14 Sep
R11 244pp
JNB
Johannesburg OR Tambo
Singapore Airlines
 
1 STOP
XMN
Xiamen Gaoqi Intl
XMN
Xiamen Gaoqi Intl
Singapore Airlines
 
1 STOP
JNB
Johannesburg OR Tambo
11 Sep - 14 Sep
R11 426pp
JNB
Johannesburg OR Tambo
Singapore Airlines
 
1 STOP
XMN
Xiamen Gaoqi Intl
XMN
Xiamen Gaoqi Intl
Singapore Airlines
 
1 STOP
JNB
Johannesburg OR Tambo

Related info for your journey

Useful info, stats and facts about Johannesburg to Xiamen flights.

Flight FAQs

From Johannesburg to Xiamen

How popular is this flight route?

Flights from Johannesburg OR Tambo to Xiamen Gaoqi Intl have been viewed 220 times in the past calendar month.

Which airlines flying from Johannesburg OR Tambo to Xiamen Gaoqi Intl have flexible cancellations due to COVID-19?

Some of our airline partners flying from Johannesburg OR Tambo to Xiamen Gaoqi Intl have new flexible policies in place due to COVID-19. Cathay Pacific, Air China, and Singapore Airlines are some of the carriers where you may find flexible cancellation policies. You can use our site to filter for airlines like Cathay Pacific with this kind of flexibility.

Does it rain more in Johannesburg or Xiamen?

Expected rainfall in Johannesburg is less than in Xiamen. You can expect this to be the case over the next 19 days.

Is Johannesburg weather warmer or cooler than Xiamen?

Temperatures around the 33 °Cs can be experienced in July. The weather in Xiamen is hotter than in Johannesburg. Plan for potential changes in flight availability as peak weather approaches in this location.

Related searches

Flights to Xiamen from Johannesburg
Flights to Johannesburg Flights to Xiamen Flights from Johannesburg

Destination information for Xiamen

Things to know before you go. Useful info for your trip from Johannesburg to Xiamen
Today's exchange rate
R1 = ¥0,43
Average temperature for January in Xiamen
18.0 °C
Avg rainfall for January in Xiamen
40.0 mm

Airports servicing Johannesburg

Airports servicing Xiamen

Top 3 airlines flying from Johannesburg to Xiamen

The chart below displays the airlines Cheapflights users travelling from Johannesburg to Xiamen choose most often. Cheapest and average prices are based on aggregated data from the past 12 months.

Airline Cheapest Average Flexibility On-time COVID-19 safety
Air China
R442 R535 No cancel fee 67%
Search Air China flights
Cathay Pacific
R822 R871 No cancel fee 72%
Search Cathay Pacific flights
Singapore Airlines
R623 R907 No cancel fee 81%
Search Singapore Airlines flights
Home Asia China Xiamen Cheap flights from Johannesburg to Xiamen
  • Return
  • One-way
  • Economy
  • Premium Economy
  • Business
  • First