How Airports Are Given 3 Letter Codes


For most readers (who we assume love to fly), it’s relatively common knowledge that every airport has a unique three-letter code associated with it. From tickets to barcoded luggage tags to boarding passes, you’ll see these IATA-administered codes everywhere. On some flight tracking services, there might be a slightly different four-letter airport code. While pilots and industry-insiders know what the difference is, the knowledge isn’t common to everyone. Let’s jump into the world of airport codes and try to make some sense of it all.

Hong Kong International Airport HKIA
Hong Kong International Airport’s IATA airport code is HKG, while its ICAO code is VHHH. Photo: Hong Kong International Airport

What are airport codes at all?

Before we jump into three-letters vs. four-letters or IATA vs. ICAO, let’s take a step back and figure out why we need ‘codes’ in the first place (This is extremely basic, so feel free to scroll down if it’s a little too simplistic).

In essence, an airport code is a quick way to reference an airport – whether it’s on a boarding pass or a pilot’s flight plan, codes make life simpler. This is clearly useful when space is limited, such as the documents mentioned above.

If I had a flight to New Orleans, rather than spelling out “Louis Armstrong New Orleans International Airport” on a boarding pass, it’s the IATA-standard that the code MSY represents this destination. Likewise, a pilot’s flight plan will have the ICAO code of KMSY to represent the airport.

Are you flying out of London Heathrow Airport? You’ll see LHR on your boarding pass. The ICAO code is EGLL. Photo: Heathrow Airport News Room

Codes can be useful for radio communication as well. Rather than trying to pronounce and communicate a difficult foreign airport name, a four-letter code can be transmitted instead. For example, if a pilot is flying to Moscow’s Sheremetyevo Alexander S. Pushkin International Airport, and needs to communicate it, then they can use the airport’s ICAO code: UUEE. Of course, over the radio, they would use the phonetic alphabet, saying: “Uniform-Uniform-Echo-Echo.”

To wrap up this explanation, airport codes are the language of airlines, aviators, and (many) travelers. Whether you use the IATA code or ICAO code depends on what you’re doing at the airport!


IATA airport codes (three letters)

First, let’s talk about IATA airport codes. IATA stands for the International Air Transport Association. It is a trade association that has established itself as the voice of representation for air travel as it pertains to the public and business.

As it is indeed a trade association, IATA’s policies aren’t legally binding. However, they have simply become accepted as the trade standard, thus making air travel easier and more streamlined.

This is what an IATA representative told Condé Nast Traveler regarding IATA codes:


“IATA codes are an integral part of the travel industry, and essential for the identification of an airline, its destinations, and its traffic documents. They are also fundamental to the smooth running of hundreds of electronic applications which have been built around these coding systems for passenger and cargo traffic purposes,” -Perry Flint, IATA’s head of corporate communications for the Americas

Toronto Pearson Airport.
Toronto Pearson uses the IATA code YYZ, while its ICAO code is CYYZ. Photo: Toronto Pearson Airport

So every airport that has adopted this IATA standard has a three-letter code. So the next question will naturally be: “How are these codes determined?”

Well, to keep it simple, codes don’t really have any rule other than:

  • They have to be three letters
  • They must be unique and not in use by any other entity

Beyond this, everything is fair game. And we can clearly see this with the variety of IATA airport codes in the world. Let’s take a look at some examples and how the three letters are derived:

  • LHR and LGW: London Heathrow and London Gatwick
  • TPE: Taoyuan International Airport serves the city of Taipei (Taiwan)
  • NRT and HND: The two airports of Narita and Haneda both serve the Tokyo Metropolitan Area in Japan
  • DAR: Julius Nyerere International Airport serves the Tanzanian city of Dar es Salaam
  • KWI: Kuwait International Airport
  • BOG: El Dorado International Airport serves the city of Bogota (Colombia)

Sometimes airport codes are more associated with the airport’s name itself and aren’t tied to the name of the cities they serve. For example:

  • CDG: Paris Charles de Gaulle
  • JFK: New York’s John F. Kennedy
  • SVO: Moscow’s Sheremetyevo International Airport

Then, as we explained in a previous article, Canadian airports have their own interesting pattern in which the overwhelming majority of airports in the country have IATA airport codes beginning with Y.

American and Delta Planes at LAX
Sometimes the airport code becomes part of the airport’s popular identity. Very few people refer to LAX as ‘Los Angeles International Airport.’ Indeed, it is almost always referred to as LAX. Photo: Getty Images

ICAO airport codes (four letters)

With air travel being one of the main ways we human travel between countries, it helps greatly to have an agreed-upon set of rules, policies, and procedures. This saves pilots and airline operations personnel a great deal of grief when planning a flight to a new country. This is the role that the International Civil Aviation Organization (ICAO) has.

The ICAO’s roots are founded in the Convention on International Civil Aviation (also known as Chicago Convention). This document was signed on 7 December 1944 by 52 States and ratified by an additional 26 states by 1947, which is when the ICAO officially came into being.


“THEREFORE, the undersigned governments having agreed on certain principles and arrangements in order that international civil aviation may be developed in a safe and orderly manner and that international air transport services may be established on the basis of equality of opportunity and operated soundly and economically;” -1944 Chicago Convention

Emirates Airbus A380
The home of Emirates is Dubai International Airport. This is DXB for IATA but OMDB for ICAO. Photo: Emirates

The ICAO’s airport codes are much more relevant to those actually operating airlines and flying aircraft.

Just like aircraft registration codes, the start of the sequence denotes the country or region of the entity. Here’s an 87-page list from 2012 of all the ICAO airport codes at the time.

In the ICAO world, every American airport code begins with the letter K. The country has decided to ‘harmonize’ its IATA and ICAO codes so that the latter is just the former with the addition of a ‘K’ at the beginning. For example:

  • Los Angeles International Airport: IATA: LAX, ICAO: KLAX
  • Seattle-Tacoma Internationa: IATA: SEA, ICAO: KSEA
  • Dallas-Fort Worth International: IATA: DFW, ICAO: KDFW

The same goes for Canada. Just add the letter ‘C’ to an airport’s IATA code and you’ll almost always have its ICAO code.

This is not the case in other parts of the world, however. For example, Hong Kong International Airport is HKG for IATA but a strange VHHH for ICAO. Every country will have a different explanation and backstory for their codes.

Delhi Airport India
Pilots will refer to Indira Gandhi International Airport in Delhi as VIDP. However, IATA simply uses DEL. Photo: Getty

It (mostly) makes sense

Hopefully, this article sheds some light on the conventions that govern this aspect of air travel. As you can see with IATA codes, there isn’t a strict rule or pattern that is followed. When it comes to ICAO codes, the country or region code is the main structure that governs the rest of the four-letter code.

Did you learn anything new about airport codes? Is there anything that we missed? Have your say in the comments.