South Africa airport codes, decoded.
Airport codes prevent expensive mistakes. Use the three-letter code—not only the city name—to confirm where every flight starts and ends.
Content updated 24 September 2026
Written and reviewed by Kyle Govender, founder and editor · Johannesburg
Independent guides. Booking through Travelstart. Travelstart handles booking and ticketing. Check the full total before payment. Is this site legit? →
Live fare search
Check the live options before deciding.
Use the guide to choose the right route and fare, then compare current bookable flights.
Code directory
The codes used across South African domestic searches.
| Code | Airport | Serves |
|---|---|---|
| BFN | Bram Fischer International Airport | Bloemfontein and the central Free State. |
| CPT | Cape Town International Airport | Cape Town |
| DUR | King Shaka International Airport | Durban |
| ELS | King Phalo Airport | East London, Buffalo City and the southern Wild Coast approach. |
| GRJ | George Airport | George, Wilderness, Mossel Bay, Oudtshoorn and the central Garden Route. |
| HDS | Hoedspruit Eastgate Airport | Hoedspruit, Timbavati, Klaserie and central Greater Kruger. |
| HLA | Lanseria International Airport | Lanseria |
| JNB | O.R. Tambo International Airport | Johannesburg |
| KIM | Kimberley Airport | Kimberley and the central-eastern Northern Cape. |
| MGH | Margate Airport | Margate, Southbroom, Ramsgate and the lower KZN South Coast. |
| MQP | Kruger Mpumalanga International Airport | Mbombela, White River, Hazyview and southern Kruger. |
| PLZ | Chief Dawid Stuurman International Airport | Gqeberha, Kariega, Addo and Nelson Mandela Bay. |
| PTG | Polokwane International Airport | Polokwane and central Limpopo. |
| PZB | Pietermaritzburg Airport | Pietermaritzburg, Hilton, Howick and the KZN Midlands. |
| RCB | Richards Bay Airport | Richards Bay, Empangeni and the northern KZN coast. |
| SIS | Sishen Airport | Kathu, Sishen and the surrounding Northern Cape mining corridor. |
| SZK | Skukuza Airport | Skukuza, southern Kruger and nearby Sabi Sand reserves. |
| UTN | Upington International Airport | Upington, the Orange River corridor and the Kalahari gateway. |
| UTT | Mthatha Airport | Mthatha and the northern Wild Coast hinterland. |
Airport names and route schedules can change. The IATA code is the clearest identifier on the itinerary.
Why codes matter
City names can hide different airports.
Johannesburg is the clearest example: JNB is O.R. Tambo and HLA is Lanseria. A search result can show “Johannesburg” while the airport code determines the real departure point.
Gqeberha is still widely searched as Port Elizabeth, but its airport code remains PLZ. Nelspruit and Mbombela searches commonly use MQP for Kruger Mpumalanga International Airport.
Final itinerary check
Read the code on departure, arrival and return.
Confirm every sector before payment. Return flights can use a different airport from the outbound, and self-built connections can require an airport change.
The code also helps when arranging parking, transfers, car hire and lodge pickups because those services need the exact terminal location.
Common questions
Questions travellers ask before booking.
What is Johannesburg’s airport code?
O.R. Tambo is JNB and Lanseria is HLA. Always check which one appears on the ticket.
What is Cape Town airport’s code?
Cape Town International Airport uses CPT.
Why is Gqeberha airport PLZ?
The IATA code remained PLZ after the city’s name changed from Port Elizabeth to Gqeberha.
What is the Nelspruit airport code?
Kruger Mpumalanga International Airport uses MQP and serves the Mbombela/Nelspruit and southern Kruger region.
Decision made
Compare the current flight options.
Search exact dates and judge the final fare.
