Sao Paulo (GRU) to Johannesburg (JNB) flights from BRL8,768

*Modifying this information may result in a different fare

* All amounts are in BRL. Taxes and surcharges are included. No booking fee is applicable, but a credit card surcharge may apply. The prices shown are calculated at the exchange rate of today and may vary depending on fare availability. You will see the final amount when selecting your payment method.​ The ticket conditions depend on the fare basis. You can pay up to 4 instalments with a credit card without interests. Prices are only available on klm.com.br. Fares displayed on this page 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 Sao Paulo and Johannesburg

cmp-daily-histogram-bars-legend-min-price-aria-label BRL8.8K
cmp-daily-histogram-bars-legend-max-price-aria-label BRL10.9K
Displaying fares for August-2026
  • GRU–JNB, 06/08/2026 – 03/09/2026: From BRL8,768
    06

    Th

    AUG

  • GRU–JNB, 07/08/2026 – 28/08/2026: From BRL8,768
    07

    Fr

  • GRU–JNB, 08/08/2026 – 05/09/2026: From BRL8,936
    08

    Sa

  • GRU–JNB, 09/08/2026 – 23/08/2026: From BRL8,768
    09

    Su

  • GRU–JNB, 10/08/2026 – 24/08/2026: From BRL8,768
    10

    Mo

  • GRU–JNB, 11/08/2026 – 01/09/2026: From BRL8,772
    11

    Tu

  • GRU–JNB, 12/08/2026 – 26/08/2026: From BRL8,772
    12

    We

  • GRU–JNB, 13/08/2026 – 27/08/2026: From BRL8,772
    13

    Th

  • GRU–JNB, 14/08/2026 – 28/08/2026: From BRL8,772
    14

    Fr

  • GRU–JNB, 15/08/2026 – 05/09/2026: From BRL8,772
    15

    Sa

  • GRU–JNB, 16/08/2026 – 30/08/2026: From BRL8,772
    16

    Su

  • GRU–JNB, 17/08/2026 – 31/08/2026: From BRL8,772
    17

    Mo

  • GRU–JNB, 18/08/2026 – 01/09/2026: From BRL8,772
    18

    Tu

  • GRU–JNB, 19/08/2026 – 16/09/2026: From BRL8,772
    19

    We

  • GRU–JNB, 20/08/2026 – 03/09/2026: From BRL8,772
    20

    Th

  • GRU–JNB, 21/08/2026 – 04/09/2026: From BRL9,231
    21

    Fr

  • GRU–JNB, 22/08/2026 – 05/09/2026: From BRL9,129
    22

    Sa

  • GRU–JNB, 23/08/2026 – 06/09/2026: From BRL9,129
    23

    Su

  • GRU–JNB, 24/08/2026 – 07/09/2026: From BRL9,129
    24

    Mo

  • GRU–JNB, 25/08/2026 – 15/09/2026: From BRL9,129
    25

    Tu

  • GRU–JNB, 26/08/2026 – 09/09/2026: From BRL9,129
    26

    We

  • GRU–JNB, 27/08/2026 – 10/09/2026: From BRL9,129
    27

    Th

  • GRU–JNB, 28/08/2026 – 18/09/2026: From BRL9,829
    28

    Fr

  • GRU–JNB, 29/08/2026 – 12/09/2026: From BRL10,074
    29

    Sa

  • GRU–JNB, 30/08/2026 – 20/09/2026: From BRL9,231
    30

    Su

  • GRU–JNB, 31/08/2026 – 14/09/2026: From BRL9,231
    31

    Mo

  • GRU–JNB, 01/09/2026 – 15/09/2026: From BRL9,150
    01

    Tu

    SEP

  • GRU–JNB, 02/09/2026 – 09/09/2026: From BRL9,252
    02

    We

  • GRU–JNB, 03/09/2026 – 10/09/2026: From BRL10,004
    03

    Th

  • GRU–JNB, 04/09/2026 – 02/10/2026: From BRL9,953
    04

    Fr

  • GRU–JNB, 05/09/2026 – 12/09/2026: From BRL10,858
    05

    Sa

  • RangeBRL8,768-BRL10,858