Porto (OPO) to Johannesburg (JNB) flights from EUR809

*Modifying this information may result in a different fare

*All amounts are in EUR. Taxes and surcharges are included. No booking fee is applicable. Fares displayed have been collected within the last 48hrs and may no longer be available at time of booking. 

Why book directly on the KLM website?

Explore the benefits of booking through our website.

No hidden costs icon

No hidden costs

Book with confidence. Our rates hide no unpleasant surprises.

24/7 customer service icon

24/7 customer service

Count on direct, personal support whenever you need it, day or night.

Seamless travel icon

Seamless travel

Enjoy a smooth journey with timely updates and automatic rebooking.

Lowest fares between Porto and Johannesburg

cmp-daily-histogram-bars-legend-min-price-aria-label EUR809
cmp-daily-histogram-bars-legend-max-price-aria-label EUR953
Displaying fares for July-2026
  • OPO–JNB, 30/07/2026 – 13/08/2026: From EUR902
    30

    Th

    JUL

  • OPO–JNB, 31/07/2026 – 07/08/2026: From EUR939
    31

    Fr

  • OPO–JNB, 01/08/2026 – 15/08/2026: From EUR835
    01

    Sa

    AUG

  • OPO–JNB, 02/08/2026 – 09/08/2026: From EUR953
    02

    Su

  • OPO–JNB, 03/08/2026 – 24/08/2026: From EUR934
    03

    Mo

  • OPO–JNB, 04/08/2026 – 01/09/2026: From EUR873
    04

    Tu

  • OPO–JNB, 05/08/2026 – 26/08/2026: From EUR907
    05

    We

  • OPO–JNB, 06/08/2026 – 03/09/2026: From EUR910
    06

    Th

  • OPO–JNB, 07/08/2026 – 04/09/2026: From EUR910
    07

    Fr

  • OPO–JNB, 08/08/2026 – 15/08/2026: From EUR819
    08

    Sa

  • OPO–JNB, 09/08/2026 – 06/09/2026: From EUR809
    09

    Su

  • OPO–JNB, 10/08/2026 – 07/09/2026: From EUR809
    10

    Mo

  • OPO–JNB, 11/08/2026 – 08/09/2026: From EUR809
    11

    Tu

  • OPO–JNB, 12/08/2026 – 09/09/2026: From EUR809
    12

    We

  • OPO–JNB, 13/08/2026 – 10/09/2026: From EUR809
    13

    Th

  • OPO–JNB, 14/08/2026 – 11/09/2026: From EUR809
    14

    Fr

  • OPO–JNB, 15/08/2026 – 12/09/2026: From EUR809
    15

    Sa

  • OPO–JNB, 16/08/2026 – 06/09/2026: From EUR809
    16

    Su

  • OPO–JNB, 17/08/2026 – 07/09/2026: From EUR809
    17

    Mo

  • OPO–JNB, 18/08/2026 – 15/09/2026: From EUR809
    18

    Tu

  • OPO–JNB, 19/08/2026 – 16/09/2026: From EUR809
    19

    We

  • OPO–JNB, 20/08/2026 – 17/09/2026: From EUR809
    20

    Th

  • OPO–JNB, 21/08/2026 – 11/09/2026: From EUR809
    21

    Fr

  • OPO–JNB, 22/08/2026 – 12/09/2026: From EUR809
    22

    Sa

  • OPO–JNB, 23/08/2026 – 06/09/2026: From EUR882
    23

    Su

  • OPO–JNB, 24/08/2026 – 21/09/2026: From EUR809
    24

    Mo

  • OPO–JNB, 25/08/2026 – 15/09/2026: From EUR809
    25

    Tu

  • OPO–JNB, 26/08/2026 – 16/09/2026: From EUR809
    26

    We

  • OPO–JNB, 27/08/2026 – 17/09/2026: From EUR809
    27

    Th

  • OPO–JNB, 28/08/2026 – 25/09/2026: From EUR809
    28

    Fr

  • OPO–JNB, 29/08/2026 – 26/09/2026: From EUR809
    29

    Sa

  • RangeEUR809-EUR953