364€ Find Cheap Flights to Johannesburg – Compare and Save

1 adult
1 adult, Economy, 0 bags

Save 30% or more on flights. Compare deals from all over the web.

Never overpay with our price tracking tools.

Filter searches by price, airline and more to find your best flights.

Everything you should know

Cheapest return flight
451 €
Typical prices: 667 €-992 €
Condor
Fri 7.12.Thu 20.12.
HAM - JNB • 1 stop
Cheapest direct flights
582 €
Typical prices: 706 €-1.084 €
Condor
Wed 5.12.Thu 20.12.
FRA - JNB • Direct
Direct flights
You can fly direct with Lufthansa and Condor. Average duration is 10h 43m
FAQs
FAQs
Top airlines
Most flights • 12 per week
Best reviews • 7,8 score
Airline reviews
+1
Airline reviews
+1
Top routes
Cheapest • 10% average savings
Most popular
Insights
Insights
When to book
in advance
Our data shows that travellers who book at least 9 weeks in advance save around 11% compared to booking last minute.
Insights
Insights
When to travel
Cheapest • 11% price drop
Most popular
Good to know
+1
Good to know
+1
Start a new search
KAYAK searches hundreds of sites at once to find you the best travel deals.
We hope you enjoy your trip to Johannesburg!
Flight Deals
Booking Insights
Flight Deals

Cheap Flights to Johannesburg

 
Discover the best prices for you by selecting your travel dates on KAYAK.

Recent return flight deals to Johannesburg

Mon, 7. Dec - Sun, 20. Dec
Condor Logo
7:00 - 8:15Hamburg  Hamburg-Johannesburg Johannesburg OR Tambo
24h 15m1 stop Frankfurt am Main
Condor Logo
19:40 - 9:35Johannesburg  Johannesburg OR Tambo-Hamburg Hamburg
14h 55m1 stop Frankfurt am Main
451 €Condor
4 hours ago
Sat, 5. Dec - Sun, 20. Dec
Condor Logo
7:00 - 8:15Hamburg  Hamburg-Johannesburg Johannesburg OR Tambo
24h 15m1 stop Frankfurt am Main
Condor Logo
19:40 - 9:35Johannesburg  Johannesburg OR Tambo-Hamburg Hamburg
14h 55m1 stop Frankfurt am Main
455 €Condor
19 hours ago
Mon, 7. Dec - Tue, 22. Dec
Air Europa Logo
18:50 - 10:40Düsseldorf  Duesseldorf Intl-Johannesburg Johannesburg OR Tambo
14h 50m1 stop Madrid Barajas
Air Europa Logo
19:55 - 9:35Johannesburg  Johannesburg OR Tambo-Düsseldorf Duesseldorf Intl
14h 40m1 stop Madrid Barajas
518 €Air Europa
2 days ago
Wed, 17. Feb - Thu, 15. Apr
Air Europa Logo
18:50 - 10:40Düsseldorf  Duesseldorf Intl-Johannesburg Johannesburg OR Tambo
14h 50m1 stop Madrid Barajas
Air Europa Logo
18:50 - 9:30Johannesburg  Johannesburg OR Tambo-Düsseldorf Duesseldorf Intl
14h 40m1 stop Madrid Barajas
518 €Air Europa
3+ days ago
Mon, 3. May - Wed, 12. May
KLM Logo
6:45 - 21:20Frankfurt am Main  Frankfurt am Main-Johannesburg Johannesburg OR Tambo
14h 35m1 stop Amsterdam Schiphol
KLM Logo
23:15 - 13:35Johannesburg  Johannesburg OR Tambo-Frankfurt am Main Frankfurt am Main
14h 20m1 stop Amsterdam Schiphol
575 €KLM
3+ days ago
Sun, 29. Nov - Sun, 6. Dec
Air France Logo
15:05 - 11:25Frankfurt am Main  Frankfurt am Main-Johannesburg Johannesburg OR Tambo
19h 20m1 stop Paris Charles de Gaulle
Air France Logo
19:40 - 9:30Johannesburg  Johannesburg OR Tambo-Frankfurt am Main Frankfurt am Main
14h 50m1 stop Paris Charles de Gaulle
575 €Air France
2 days ago
Mon, 7. Dec - Tue, 22. Dec
Multiple Airlines Logo
9:00 - 8:15Düsseldorf  Duesseldorf Intl-Johannesburg Johannesburg OR Tambo
22h 15m2 stops Milan Malpensa Frankfurt am Main
Multiple Airlines Logo
19:40 - 20:15Johannesburg  Johannesburg OR Tambo-Düsseldorf Duesseldorf Intl
25h 35m2 stops Frankfurt am Main Milan Malpensa
576 €Multiple Airlines
22 hours ago
Thu, 21. Jan - Thu, 28. Jan
KLM Logo
18:30 - 22:00Frankfurt am Main  Frankfurt am Main-Johannesburg Johannesburg OR Tambo
26h 30m1 stop Amsterdam Schiphol
KLM Logo
23:55 - 9:40Johannesburg  Johannesburg OR Tambo-Frankfurt am Main Frankfurt am Main
34h 45m1 stop Amsterdam Schiphol
578 €KLM
3+ days ago
Thu, 26. Nov - Tue, 9. Feb
Multiple Airlines Logo
10:15 - 22:00Frankfurt am Main  Frankfurt am Main-Johannesburg Johannesburg OR Tambo
34h 45m1 stop Amsterdam Schiphol
Multiple Airlines Logo
19:40 - 9:30Johannesburg  Johannesburg OR Tambo-Frankfurt am Main Frankfurt am Main
14h 50m1 stop Paris Charles de Gaulle
578 €Multiple Airlines
3+ days ago
Mon, 18. Jan - Wed, 3. Feb
Air France Logo
17:35 - 11:25Frankfurt am Main  Frankfurt am Main-Johannesburg Johannesburg OR Tambo
16h 50m1 stop Paris Charles de Gaulle
Air France Logo
19:40 - 9:30Johannesburg  Johannesburg OR Tambo-Frankfurt am Main Frankfurt am Main
14h 50m1 stop Paris Charles de Gaulle
583 €Air France
2 days ago
Booking Insights

Price, demand, and travel trends for flights to Johannesburg

Use KAYAK data on prices, travel dates, airlines, and seasonal trends to compare options and book flights with more confidence.

What is the cheapest flight to Johannesburg?

Hamburg to Johannesburg is the cheapest route at 451 € return, found in the past 5 days on KAYAK. Frankfurt am Main Airport to Johannesburg is the most popular connection with return deals from 575 €.

How much is a flight to Johannesburg?

On average, a return flight from Germany to Johannesburg costs 792 €, based on KAYAK data over the past 12 months. Return fares from Berlin average 729 €, while Cologne runs a bit higher at 744 €.

What is the cheapest day to fly to Johannesburg?

Monday is the cheapest day to fly to Johannesburg at 766 € return on average over the past 12 months on KAYAK. Saturday is the most expensive at 853 €.

What is the cheapest month to fly to Johannesburg?

•January is the cheapest month to fly to Johannesburg with an average price of 704 € return.
•December (1.027 €) and July (997 €) are the most expensive.

Based on KAYAK data over the past 12 months.

What is the cheapest time of day to fly to Johannesburg?

Morning flights to Johannesburg are the cheapest at 726 € return on average. Night flights are the most expensive at 901 €.

What is a good deal for flights to Johannesburg?

Flights under 667 € are considered a good deal. 25% of KAYAK users found return flights to Johannesburg at or below these prices, with the lowest fares from:
•Cologne 598 €
•Hannover 628 €
•Berlin 634 €.

When are flights to Johannesburg the cheapest?

Flights to Johannesburg are cheapest 9 weeks before departure. Booking in this window typically costs about 11% less than the average last-minute fare (within 2 weeks of the flight), based on KAYAK data.

Key details for flights to Johannesburg

Low season

May

Cheapest flight

364 €
Beat the crowds with an average 33% drop in travellers.
The most popular month to fly with an average 18% increase in travellers.
One-way flight from Berlin to Johannesburg OR Tambo Airport

When to book flights to Johannesburg

Are your dates flexible? Find out the best times to travel to Johannesburg based on our flight data from the last year. Discover the cheapest month and even day to fly.
Estimated return price

Your questions about flights to Johannesburg, answered

Find helpful route details based on KAYAK data, including flight times, airports, airlines, and booking questions.

  • How do I know if a flight to Johannesburg is a good deal?

    A good deal on a flight to Johannesburg is around 667 € return. This fare is in the lowest 25% of return flight prices searched on KAYAK, averaged across the cities most often searched as origins by KAYAK users.

  • Which airports serve Johannesburg?

    Flights to Johannesburg arrive at: Johannesburg Lanseria (HLA) and Johannesburg OR Tambo (JNB).

  • How long are direct flights to Johannesburg from different departure cities?

    Direct flight time to Johannesburg varies depending on your departure city:

    • From Munich: 10h 40m
    • From Frankfurt am Main: 10h 40m

  • Which city has the cheapest flights to Johannesburg?

    Based on fares booked in the past 5 days, the cheapest flights to Johannesburg are from Düsseldorf, starting at 518 € return, and from Frankfurt am Main, starting at 575 € return.

  • How expensive are last-minute flights to Johannesburg?

    Last-minute fares to Johannesburg (booked within two weeks of departure) are typically 3% higher than the average return fare of 792 €.

  • What is the difference between the most popular and the most frequent airline at Johannesburg?

    Lufthansa operates the most flights from Germany to Johannesburg at 12 per week, and for this route Lufthansa is also the airline most often selected by KAYAK users searching for flights from Germany to Johannesburg. The two are sometimes different because flight volume reflects an airline's schedule, while popularity reflects traveller choice.

  • Which airlines should I consider for flights to Johannesburg?

  • How many flights serve Johannesburg?

    Johannesburg receives 2 flights per day and 14 per week from across the world. Frankfurt am Main has the most flights to Johannesburg with 9 weekly flights.

  • Which airports serve Johannesburg and the surrounding area?

    Flights to Johannesburg can arrive at several major airports serving the metro area, including Johannesburg Lanseria (HLA) and Johannesburg OR Tambo (JNB). Nearby alternatives within 80,5 km of Johannesburg include Pretoria Wonderboom Apt. (PRY). This airport is not in Johannesburg itself but may be useful depending on your route, airline, and onward travel plans.

Your guide to booking Johannesburg flights

From booking to airport arrival, find tips to help you plan your flight with more confidence.
  • For the best chance at a low fare to Johannesburg, book around 9 weeks before departure. Based on KAYAK data from the last 12 months, fares are historically about 11% lower during this window than last-minute fares.
  • For flights to Johannesburg, a good return fare is around 667 €. If you find a fare below that, you're getting a strong deal.
  • If your travel dates are flexible, consider flying to Johannesburg in January. Return fares historically average 704 €, making January the cheapest month to travel based on KAYAK data from the last 12 months.
  • Before you book:

    • Check the route's typical price range so you can spot a deal.
    • Confirm baggage fees and seat selection costs on budget carriers.
    • Verify whether you need any travel documents beyond an ID.
    • Pick a departure airport, since your nearest may not be the cheapest origin.
  • Shift your departure to morning to save up to 174 € on a return flight. Morning flights to Johannesburg average 726 € compared to 901 € for evening flights.
  • Bag allowances vary by airline, fare type, cabin class, and route. On flights to Johannesburg, some airlines may include bags at no extra cost. For example, Lufthansa includes a cabin bag and a checked bag in Economy class, Condor includes a cabin bag and a checked bag in Economy class, and South African includes a cabin bag and a checked bag in Economy class. Always check the fare details before booking, since bag policies can change by ticket type.

Reviews of the top 5 airlines flying to Johannesburg

 
Need help choosing which airline to fly with to Johannesburg? KAYAK airline reviews give an overall score for each airline based on loads of factors, including comfort, boarding, in-flight entertainment and more, to make your decision easier. See airline scores according to verified KAYAK customer reviews.
7,8
KLMOverall score based on 1595 reviews
7,4Food
7,8Boarding
7,7Comfort
8,4Crew
7,2Entertainment
Airline reviews

Terrible last row seats many seats available but no offer to move to better seat

2,0 MediocreAnonymous, Dec 2025
Read more KLM reviews

Terrible last row seats many seats available but no offer to move to better seat

The baggage drop-off in Stuttgart is bad: after online check-in you cannot use the automated baggage drop off as indicated on the website. You can use the terminals but have to cue to 1 of three open and slowly working counters to drop the bags. took about 45 minutes wait time.

Transavia flight, was booked as KLM but i couldnt select seat or access boarding pass with KLM at all. Crammed seating and very no frills experience all around. First and last time.

Good experience, just i couldn’t connect me to the wifi

Pretty bad. Food was awful. drinks were scarce, as if drinking an extra drink would ruin the airline. attendants were not very helpful. likely Dutch "directedness" (I cannot be bothered). Crammed flight. Entertainment in very minimal dosage. Almost all old movies and series with 1-3 episodes only. Very limited number of options available. Jesus!! it seems you need to bring your own entertainment these days even of flights that are 13 hrs long!! I would and I will avoid in the future!

The flight itself it was great nice food the crew were very nice and helpful, Checking in from Birmingham wasn't great long queues for bag dropped, And I had my hand luggage case taken away from me even though I requested to have it with me as I had breakables items. I was told I can not because of the length of the flight with no explanation at all no options was given for me to take my fragile items out of my case it was taken away with hold buggage I find the staff member who was checking me in very unpleasant !! Can we please be advise if the rules have changed about the the carry on hand luggage it will be easier to be advise on booking your tickect if we not allowed to take the hand luggage with me. Overall I had a good flight .

I requested wheel chair assistance , it was confirmed via email that inwoood get it but I didn’t get it . The last leg of my trip to Nigeria was the worst.

Amazing KLM service and brilliant economy comfort seats. Well worth the extra.

At the transit could be less time not like 12 hour 6 hours the mix should be 4 hour, thanks

Seats actually fit a human! Snack options were a bit lame but that’s ok

Excellent overall. Boarding was a mess. Queue up too early, takes too long for them to start boarding but they want everyone to queue up and wait and wait.

Changed to older plane with old set-up in Business class.

PLEASE GIVRE US PERMISSION TO BOOK SEAT NUMBER EVEN WITH FEES

Turkish Airlines will be my first choice to fly in the future.

I hate to have pay for my first luggage 165$ when I did my search on Kayak with 2 luggages .I don't plan to use kayak in the future and go with Turkish airlines directly

Make sure to request a vegetarian meal in advance. They printed out menus for all passengers with the options but by the time they were halfway through (for breakfast and dinner), the vegetarian options were already all taken.

Very good except the boarding process too forever and wasn’t organized by group. I had a heavy pack or I wouldn’t have minded. I was in business. There were no audible announcements in the waiting area about boarding and everyone packed into the boarding area. Then boarding stopped for a long time but the staff made no announcements to update waiting passengers about the holdup. The flight was good after we got on.

The seat did not recline and we called the stewardess, he forced it to recline, but when we landed, it did not come forward because the seat was broken. The stewardess came, He tried to do it but couldn't do it, the flight commander came and spoke to us in a bad tone, telling us to get out of here, she waited at the head and acted as if there was a child and we couldn't get up, it was very shameful, I don't even know if it's true, but she said if you don't get up, the plane will not land and will keep turning around. Then a passenger pushed the seat from behind and it worked. Then we wanted to talk to the supervisor again, but she did not come next to us. We fly so much and this is the first time we encountered such a style.

I requested a special meal (kosher) several months ahead of the flight . It was listed on the Turkish air website that I had a kosher meal. In-flight, there was no kosher meal. I was not able to eat during the nearly 8-hour flight. There also was no kosher meal on the second leg of the trip. The flight attendants said there was nothing they could do. They had no idea why the kosher meal was not provided. Very bad meal service.

This is the first and last time I will be traveling Turkish airlines. The flight was delayed three times. Second time we sat on the aircraft for approximately an hour and a half. Initially told that the delay would only be 15 minutes then no explanation thereafter except that we were deboarding. We missed our connecting flights to Zimbabwe, and had to pay for a overnight hotel stay in addition to paying for a new tickets to our get to our final destination. They allowed us to order food from the airport food court but only from fast food and even that they limited the menu items we could select. I would some to contact me about the refund on the hotel and the connecting flight!

The second leg of the trip was ok. I had a premium economy ticket and that was not touched by the airline.

The boarding procedure with Boarding Category Group 5 clients is just undignified.

It was a short flight. I don't really have any notes. You bring your own entertainment but as long as you aren't boring or forgetful that's not a bad thing. There were snacks and they gave me chocolate before we disembarked!

Proximity of the the gate to the lounge could have been better but overall a nice experience. The lounge was exceptional. Getting from the Schengen side to the international side was also pain free. Boarding the plane, service on board , disembarking at Heathrow and quick delivery of bags all made for a good overall experience.

Such a comfortable flight! Food was yummy and staff was very friendly! Will absolutely fly Lufthansa again.

I was first assigned a seat that could not recline fully and was at the back of the craft. I was not able to select another seat during check-in even when opting to pay for selecting a different seat. I had to contact the airline and spent 25min with a chatbot and was then transferred to an agent who was very helpful and could change my seat (free of charge). The entire process took me one hour. If I happened to not have that hour available this would have been a problem. And that was only to check in. The next problem is that the airport lounge I had access to is located landside. How strange. So it means that you need to allow time for security check and passport control and boarding time when leaving the lounge, which makes it almost pointless having lounge access unless you have a very long layover or arrive 5 hours before the flight. Inflight service was okay. But not up to par with the likes of QA, SQ or CX, even though the price is the same or even more. It was much better than the domestic flight where Lufthansa is actually a low-cost airline with legacy airline prices.

The crew were excellent, smiling and kind. The seats were good for economy though my seat back got a bit sticky from getting out of the reclining position. The food was good for a Kosher meal, better than usual. Entertainment was okay, but there was no Wi-fi available the entire flight. Overall the flight was fine for an overnight flight. The flight attendant in my section was absolutely delightful.

Staff are really not attentive. Seem rather disinterested in attending to the customers in general.

Food was OK.. nothing to rave about but it was tasty enough. Many choices to choose from for entertainment. Seats tight but comfortable. Flight attendants cheerful & helpful.

The flight was smooth and on time. Check-in and boarding was very efficient. The flight was very comfortable and there was good entertainment and food on offer.

I ended up upgrading to business class. They use Seat Boost and even though I was the highest bidder at 900 Euros, they decline my offer. When I got to the Gate, I asked if I could upgrade and they said yest for 1300 Euros.

The flight was 1 hour late due to technical problems with the plane. We paid for premium economy seats, but the seats were extremely uncomfortable and just as crowded as regular economy seats with perhaps a little more legroom. I had to pay extra to select our seats in advance. Compared to other airlines with premium economy seats, Condor’s premium economy seats were poor and other airlines don’t charge to select your seats in advance. The worst though was the toilets. They ran out of toilet paper with 4 hours left in a 12 hour flight, trash was overflowing, and the toilets were smelly. I will never fly Condor again and I will advise my friends and colleagues to never fly Condor.

Terrible. I can't believe I lost my entire ticket price when I tried to cancel or change the flight the day before.

Excellent airline. New planes. Comfortable business class seats. Professional crew

Frankfurt to San Francisco The Site would not let me Upgrade luggage ( paid extra at the airport Had to pay for seats but did not receive those seats Had to pay extra to check in at counter (since I could not upgrade on the app) $25 a person. Unfriendly staff- bordering on rude Check in in San Francisco (to Frankfurt) was smooth, courteous and no extra charges for seats or check in

It was a short flight, maybe an hour long. Everything was handled great.

Missed this flight. $5000 to rebook next day. Horribly rude staff in Frankfurt. Everyone we encountered was either not helpful or outright mean.

Missed connection due to no fault of our own, rude staff across the board, nearly 4 hrs in line for Condor service desk to ‘rebook’. Paid $5000 just to be lucky enough to get home next day.. will never fly with condor again.

Condor's computers do not work. They do not leave enough time to catch a connecting flight. Condor had to book passengers on a different airline to make their destination. They lost my niece and nephew's luggage. The bathroom had pee all over it before the flight took off.

Awful!! We got stuck in the passport line for two hours. Condor acknowledges that the lines are really long but says it is not their problem and would only rebook us in two days. We are stuck in Frankfurt for two days and it cost us $500. Condor stated that they gave us a 1.5 hour layover which was more than enough time and in the next sentence said, yes we know the lines are a problem.

On Airlink flight Johannesburg to Victoria Falls one bag had been cut open, the TSA approved lock was gone and the contents had been gone through. It appeared that nothing had been taken.

The staff were fantastic and couldn't have been more accomodating; however, the air-conditioning was broken in our section of the aircraft, leaving us feeling extremely cold and unwell on arrival in Johannesbury. The head sets were also faulty, causing difficulty when listening to announcements and entertainment.

Terrible, We experienced massive delays and then couldn’t book a hotel through the link provided, nothing was available. We then went to the airport the next day and experienced further delays, almost no communication was given. We had dinner at lunchtime and breakfast at midnight. We then landed in Jhb at 1am and had to book another hotel as our flight to durban was at 8am. The experience was painful and very expensive.

Ok we did get an upgrade and the flight was delayed 45 minutes BUT without any bias. The crew were excellent, friendly, efficient and verging on exuberant, they all were so happy to do their jobs. Food excellent and the new safety video is fun to watch.

old seat need to go! outdated and uncomfortable. I waited 40 minutes for my bag

The crew on board were all very pleasant and happy to help. The flight had the old business class seats. The departure board in the business lounge did not update and kept on saying ' gate open' but never said boarding. When I got nervous about the departure time and walked to the gate I was told off rudely for being late.

Struggled with boarding pass on my iPhone.Suggest taking a printed copy. We sat upper deck at the rear on right hand side and best Economy flight in years. Bins below the windows made a massive difference for storage etc. inflight entertainment played up for a few pax but we were fine. Crew were first rate. Overall an excellent flight

They ran out of starter options but the alternative was okay. Just disappointed

Staff was wonderful. There was no breakfast because a cooling system had not been repaired. My luggage didn’t make it on the plane in London, so I had to wait to have my luggage delivered. I’m a long ways from home to be without items in my bag. We have to wait to be reimbursed for costs

The flight boarded two hours late and then we had an hour sitting in the aircraft before take off. Tempers got hot The actual flight was fine and the food was really tasty. Because we landed more than 3 hours late, I missed my connecting flight. No connecting flight for the rest of the day and had to sleep over. There was absolutely no support from BA on the other side. Nothing

More options for your flight to Johannesburg