
2
Airlines
140×
Per week
$139
From (live)
via FA
2.2h
Nonstop
Johannesburg (JNB) → Cape Town (CPT)
Johannesburg
O.R. Tambo International
DISTANCE
1 373 km
Cape Town
Cape Town International
Flight time is an estimate: great-circle distance with ~8% routing adjustment and ~45 min ground operations. Actual block time depends on the carrier, winds, and specific service (check the airline schedule).
Fare trend — last 8weeks
↓ down 11%Lowest one-way fare from weekly Travelpayouts snapshots. See methodology for how we collect this.
When are fares cheapest?
Cheapest one-way fare actually found for each departure month — click a month to search.
Cheapest month to fly Johannesburg to Cape Town: August 2026, from $64 one-way.Based on 10 months of tracked fares · updated 16 Aug 2026
Compare carriers on this route
🇿🇦FlySafair
FA
- Frequency
- 140× / week
- Baggage
- LCC (paid)
- Migrant program
- —
🇿🇦South African Airways
SA
- Frequency
- 140× / week
- Baggage
- LCC (paid) +5
- Migrant program
- —
Flights Johannesburg -> Cape Town (JNB-CPT) — USD Fares, Airlines, Frequency
140 scheduled departures a week link Johannesburg (JNB) in South Africa with Cape Town (CPT) — about 20 a day — flown by 2 catalogued carriers at a scheduled block time near 2.2 hours. Our catalogue scores corridor demand 10/10 and files it as an intra-Africa + Gulf hub transit corridor.
Johannesburg to Cape Town is one of the busiest air routes in the world, connecting South Africa’s largest city with its legislative capital and main tourist destination. With around 140 flights a week — many each hour through the day — it carries business travellers, holidaymakers and families in roughly equal measure. Block time is just over two hours.
Great-circle distance Johannesburg–Cape Town is about 1,271 km, computed from the stored coordinates of JNB (-26.13, 28.24) and CPT (-33.96, 18.60). What the figure fixes is the sector profile — 1,271 km against a scheduled 2.2-hour block time — and the fuel-and-crew economics behind the fare floor. It does not fix a compensation amount. No fixed-tariff compensation scheme reaches JNB–CPT. EU261 and UK261 do band by distance, but they only cover flights departing an EU/EEA or UK airport — plus arrivals there on a bloc-licensed carrier — and neither endpoint here is one, whoever operates the flight. The Montreal Convention 1999 is what applies, and it pays provable loss, not a tariff.
Airlines on this route
2 carriers operate JNB–CPT: FlySafair (FA) and South African Airways (SA). Our carrier table records checked-baggage baselines from 20 kg to 23 kg; South African Airways sits in Star Alliance while our table puts FlySafair outside a global alliance. That mix decides three things — the fare floor, whether your bag is through-checked on a connection, and which delay regulation covers you.
Two carriers fly JNB-CPT: FlySafair, a South African low-cost carrier with a lean base fare to which baggage is added, and South African Airways, full-service with a checked allowance included. With dozens of flights a day between them, the route is built for flexibility — a missed flight rarely means a long wait.
| Carrier | Baggage baseline | Alliance |
|---|---|---|
| FlySafair (FA) | 20 kg | none |
| South African Airways (SA) | 23 kg | Star Alliance |
USD fares — JNB-CPT
$110 is the most recent weekly reading in our fare log for JNB–CPT, taken in 2026-W29, across 6 readings that range $110 to $173. The point-in-time fare cache holds no entry for this corridor, so the weekly log is the observed evidence here.
As an extremely high-frequency domestic route with both low-cost and full-service carriers, JNB-CPT is competitively priced. Fares are lowest on quieter weekday flights and rise around the December holidays and long weekends. One to three weeks of lead time usually secures a low fare in USD.
Book 4-8 weeks ahead. Fares rise around the December holidays; mid-week departures are usually the cheapest. That window is cluster guidance for an intra-Africa + Gulf hub transit corridor rather than a rule for this single pairing; on a corridor with 140 weekly departures, the practical constraint is often seat availability on the days you can actually travel, not the headline fare.
One thing our fare data cannot tell you: whether the quote includes a checked bag. The cache stores a price and a carrier, not a fare family. On JNB–CPT that matters most where a low-cost carrier or a basic-economy bucket is in the mix, because the cheapest screen number and the cheapest all-in number are then two different itineraries. Compare after adding the bag you will actually carry.
Has the JNB–CPT fare moved? 6 weekly readings
6 weekly readings between 2026-W20 and 2026-W29 put the cached JNB–CPT low between $110 and $173 — a $63 spread, 57% of the cheapest reading. The cheapest reading is also the most recent, 2026-W29. Each row is one weekly snapshot of the cheapest published quote, not an average of everything sold that week.
| ISO week | Cached low (USD) | Carrier on the quote |
|---|---|---|
| 2026-W20 | $157 | FA |
| 2026-W23 | $147 | FA |
| 2026-W24 | $132 | FA |
| 2026-W25 | $173 | FA |
| 2026-W27 | $145 | 5Z |
| 2026-W29 | $110 | 5Z |
The cached low fell 30% between the first and last reading, from $157 to $110. Read it with the sample size in front of you: 6 observations over a ten-week window is a signal about this corridor’s volatility, not a forecast. What it does establish is a defensible floor — you now know $110 was achievable on JNB–CPT inside the window, so a quote well above $173 is worth a second search.
Carriers behind the readings: 5Z and FA, with the $110 low attributed to 5Z. Where a row shows a dash the gate returned no carrier code with the quote, which usually means a multi-carrier or agency-issued itinerary. Do not read a carrier name here as that airline’s own published fare — it is the marketing carrier on the cheapest itinerary a gate had loaded that week.
Checked baggage and uplift on JNB–CPT — and what is not covered
20–23 kg is the checked-baggage baseline our carrier table records for the 2 airlines on JNB–CPT, with a recorded diaspora uplift of up to +5 kg on South African Airways. Baselines are economy figures and fare-family dependent. The allowance printed on your issued ticket overrides any table, this one included.
Read the baseline as an advertised standard rather than a guarantee. Airlines on JNB–CPT sell below it through hand-baggage and basic-economy fare families, and those are disproportionately the fares that appear as the corridor’s cheapest quote. The only allowance that binds anyone is the one printed on the ticket you hold.
Where our table records a migrant or diaspora uplift — +5 kg on South African Airways — three exclusions usually bite. The uplift attaches to nominated corridors rather than the whole network; it rarely survives onto a codeshare or interline segment operated and ticketed by a different airline; and the deepest-discount fare buckets are commonly carved out. None of that makes the uplift fictional, but it does mean it has to be confirmed against your booking class, in writing, before you pack to it.
Search live fares
140 weekly departures across 2 carriers mean a live JNB–CPT search returns several price points for the same day; the most recent weekly reading in our fare log was $110. Scheduled nonstop block time is 2.2 hours, so any result far above that is connecting whatever the screen says.
Search JNB -> CPT on Aviasales ->
Three checks make a live JNB–CPT result comparable. Fix the passenger count and cabin first, because a per-passenger fare and a party total look identical on a results page. Then read the elapsed time next to the price — a one-stop itinerary and the 2.2-hour nonstop are different products at the same number. Then check whether the fare carries the bag you are actually taking.
Flexible dates are the highest-leverage setting on this corridor. Our own cache shows month-to-month movement on JNB–CPT that dwarfs the difference between booking gates, so one search across a whole month tells you more than five searches on a single date. Where the dates cannot move — a pilgrimage window, a school term, a contract start — book earlier instead of searching harder.
About Cape Town
1 catalogued corridor in this site’s data reach Cape Town (CPT), Cape Town International, ICAO FACT, from 1 catalogued origin and 2 carriers in total. That count is this site’s coverage of Cape Town, not the airport’s published schedule. Each of those corridors has its own guide with carriers, weekly frequency, scheduled block time and whatever the fare cache holds.
Cape Town sits on South Africa’s southwestern coast beneath Table Mountain, the country’s main tourist destination and the seat of its parliament. For travellers from Johannesburg it is both a business and a holiday destination, and the direct, frequent service makes it an easy trip to plan.
Cape Town is a based hub for South African Airways and FlySafair. A hub airport behaves differently from an outstation: connecting banks are built around it, spare aircraft and crew sit there, and a disruption is far more likely to be recovered the same day. It also means the hub carrier usually sets the price on routes into CPT, and competitors price against it rather than the other way round.
FAQ
Which airlines fly Johannesburg to Cape Town? Direct JNB-CPT flights are operated by FlySafair, South African Airways. Compare baggage baseline and alliance in the carrier table above.
How long is the JNB-CPT flight and how often does it run? Block time is about 2.2 hours. The JNB-CPT route runs roughly 140 flights per week across all carriers.
How much does a JNB-CPT flight cost and when is it cheapest? Typical economy fares sit in the $400-900 USD band. Intra-Africa and Gulf-hub transit fares move week-to-week; 4-8 weeks is the typical sweet spot.
What is the checked baggage allowance on JNB-CPT? It varies by carrier and fare class — see the baggage-baseline column in the carrier table above. Full-service carriers usually include 23-30 kg, while low-cost carriers sell it as an add-on. Confirm on the airline’s site before booking.
What currency is used in Cape Town? Cape Town uses USD. Fares in this guide are quoted in USD; budget on-the-ground spending in USD.
Related routes and reading
2 pages below connect to JNB–CPT through the data: a shared airport, a shared operating carrier, or the same audience cluster in our segmentation. Each is annotated with what it actually contains, so you can decide before clicking. Each corridor entry carries that route’s carriers, estimated weekly frequency, scheduled block time and demand score straight from our route file.
- Johannesburg airport (JNB) — O.R. Tambo International, South Africa: 39 catalogued departure corridors and 6 arrival corridors.
- Cape Town airport (CPT) — Cape Town International, South Africa: 7 catalogued departure corridors and 1 arrival corridor.
Internal links on this site are placed from the data, not from a keyword list: a corridor is linked when it shares an origin, a destination, a carrier or an audience cluster with the page you are on. If a link above looks unrelated to your trip, it probably shares a carrier or a hub rather than a destination.
Each airport page goes wider than this one: every catalogued route at that field, which carriers are actually based there, the alliance spread and the passenger rights regime of its country. That last item is the reason both ends of JNB–CPT are linked — on a disruption, the departure airport’s jurisdiction is what decides your remedy.
Where to stay · Cape Town
Hotels in Cape Town — USD budget
Budget
Guesthouse & 2-3★
$25–50 / night
Mid
Comfort 3-4★
$50–120 / night
Luxury
5★ & resort
$120+ / night
Hotellook compares 70+ booking sites including Booking.com, Agoda, Trip.com — booking earns us a small commission at no extra cost.
All hotels in Cape Town