Cheap flights from Johannesburg to Oporto

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

The best prices from Johannesburg to Oporto are usually found in October or February, booked 60 days in advance, depart on a Wednesday or Monday and return on a Wednesday

Return
Economy
Mon 11/2
Mon 11/9
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
Mon 11/2
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 Oporto (OPO)

JNB - OPO
Price
R6 991 - R12 186
OPO
Temperature
14 - 25 °C
OPO
Rainfall
17 - 160 mm

Popular in

December

High demand for flights, 20% potential price rise

Cheapest in

October

Best time to find cheap flights, 28% potential price drop

Average price

R6 991

Average for round-trip flights in October 2020

Round-trip from

R6 991

From Johannesburg to Oporto

Flight route prices based on searches on Cheapflights within the last 3 days, monthly prices based on aggregated historical data.
What is the cheapest day to fly return from Johannesburg to Oporto?

Users have found that leaving on a Tuesday can be a cost-effective option. It’s possible to save up to 41% on your flight compared to booking on days when demand is much higher.

How far in advance should I book a flight from Johannesburg to Oporto?

Users have found that booking a flight from Johannesburg to Oporto at least 61 days early can save you up to 21% on average compared to booking a flight this week. If booking 61 days before your flight isn’t an option for you, users have found flights from Johannesburg to Oporto for as little as R11 700 when booking for a departure date within the next two weeks. You can also check prices now. Some users have found airline tickets as low as R12 461 for flights departing within the next 3 days.

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

Due to multiple factors, expect to potentially pay more when booking in December. For low rates, October can be a great choice for travel to Oporto. Flights to Oporto from Johannesburg in October are about R9 762 on average during October, but can be found for as low as R5 680.

When is the cheapest time to fly from Johannesburg to Oporto (JNB - OPO)?

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

Cheap flights from Johannesburg to Oporto in October, November 2020

The best prices found for JNB to OPO flights in October, November
28 Oct - 1 Nov
R8 172pp
JNB
Johannesburg OR Tambo
KLM
 
1 STOP
OPO
Porto
OPO
Porto
KLM
 
1 STOP
JNB
Johannesburg OR Tambo
28 Oct - 1 Nov
R8 205pp
JNB
Johannesburg OR Tambo
KLM
 
1 STOP
OPO
Porto
OPO
Porto
KLM
 
1 STOP
JNB
Johannesburg OR Tambo
28 Oct - 1 Nov
R8 464pp
JNB
Johannesburg OR Tambo
KLM
   
2 STOPS
OPO
Porto
OPO
Porto
KLM
 
1 STOP
JNB
Johannesburg OR Tambo

Johannesburg to Oporto 2020 flight deals

Cheap flights to Oporto from Johannesburg found for this year
28 Oct - 1 Nov
R8 172pp
JNB
Johannesburg OR Tambo
KLM
 
1 STOP
OPO
Porto
OPO
Porto
KLM
 
1 STOP
JNB
Johannesburg OR Tambo
28 Oct - 1 Nov
R8 205pp
JNB
Johannesburg OR Tambo
KLM
 
1 STOP
OPO
Porto
OPO
Porto
KLM
 
1 STOP
JNB
Johannesburg OR Tambo
28 Oct - 1 Nov
R8 464pp
JNB
Johannesburg OR Tambo
KLM
   
2 STOPS
OPO
Porto
OPO
Porto
KLM
 
1 STOP
JNB
Johannesburg OR Tambo

Related info for your journey

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

Flight FAQs

From Johannesburg to Oporto

How popular is this flight route?

Within the past month, 3 748 users have taken a look at flights from Johannesburg OR Tambo to Porto.

What safety measures are being taken by airlines flying from Johannesburg OR Tambo to Porto to control the spread of COVID-19?

Airlines globally have implemented additional safety measures to accommodate you. Etihad Airways is one of them. Some of the new policies that have been implemented to accommodate travellers flying from Johannesburg OR Tambo to Porto are improved sanitation, HEPA filters, mask requirements, socially-distanced seating (for a limited time), and pre-flight testing for antibodies and symptoms. Policies will vary by airline.

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

Some of the carriers operating flights from Johannesburg OR Tambo to Porto that may be offering flexible cancellation policies are TAAG, Emirates, and Turkish Airlines. Our site will let you filter for all airlines offering greater flexibility due to COVID-19.

Does it rain more in Johannesburg or Oporto?

The rainfall in Johannesburg is generally more than the rainfall in Oporto. This will continue over the next 15 days.

Is Johannesburg weather warmer or cooler than Oporto?

Temperatures around the 26 °Cs can be experienced in January. The weather in Oporto is colder than in Johannesburg. Plan for potential changes in flight availability as peak weather approaches in this location.

Related searches

Flights to Oporto from Johannesburg
Flights to Johannesburg Flights to Oporto Flights from Johannesburg

Alternative routes for Johannesburg to Oporto

Destination information for Oporto

Things to know before you go. Useful info for your trip from Johannesburg to Oporto
Today's exchange rate
R1 = €0,06
Average temperature for October in Oporto
21.0 °C
Avg rainfall for October in Oporto
146.0 mm

Airports servicing Johannesburg

Airports servicing Porto

Home Europe Portugal Oporto Cheap flights from Johannesburg to Oporto
  • Return
  • One-way
  • Economy
  • Premium Economy
  • Business
  • First