Guide
How Are Airport Codes Assigned?
Airport codes are assigned by two separate bodies: three-letter IATA codes come from the International Air Transport Association, which manages them for ticketing and baggage, while four-letter ICAO codes come from the International Civil Aviation Organization using regional prefixes. IATA codes favor memorability; ICAO codes follow a strict geographic hierarchy.
How IATA assigns three-letter codes
The IATA code is the one travelers see most: on boarding passes, luggage tags, and departure boards. IATA maintains a global register of these three-letter identifiers and issues a new one when an airport requests it, checking only that the combination is not already in use somewhere else in the world. Because there are just 17,576 possible three-letter combinations and thousands of airports, availability, not logic, often decides the result.
Where possible, IATA picks letters that echo the city or airport name. Seoul's main gateway is ICN (Incheon), New York's is JFK (John F. Kennedy), and London's principal hub is LHR (Heathrow). The code is deliberately short and phonetic so agents and passengers can say and write it quickly. IATA codes are commercial tools, not regulatory ones, and they are unique per airport rather than tied to any country grouping.
How ICAO codes and regional prefixes work
ICAO codes are four letters and are used by pilots, air traffic control, and flight-planning systems. Unlike IATA codes, they are built on a structured regional scheme: the first one or two letters identify a region and country, and the remaining letters identify the specific airport within it. This makes ICAO codes predictable and non-overlapping worldwide, which matters when a flight plan crosses several countries' airspace.
| K | Contiguous United States (KJFK, KLAX) |
|---|---|
| C | Canada (CYYZ Toronto, CYVR Vancouver) |
| EG | United Kingdom (EGLL Heathrow) |
| LF | France (LFPG Charles de Gaulle) |
| ED | Germany (EDDF Frankfurt) |
| RK | South Korea (RKSI Incheon) |
| RJ | Japan (RJTT Haneda) |
| Z | Mainland China (ZBAA Beijing Capital) |
| Y | Australia (YSSY Sydney) |
| OM | United Arab Emirates (OMDB Dubai) |
The pattern is easy to read once you know it. Every ICAO code beginning with K sits in the mainland United States; every one beginning with RK is in South Korea. So Incheon is ICN to a passenger but RKSI to a controller, and Tokyo's downtown airport is HND commercially and RJTT in the flight-planning system. The two codes describe the same airport from two different professional viewpoints.
Why some codes look unrelated to the city
A code can drift from the city name for several reasons, most of them historical.
- The airport was renamed. Chicago's ORD comes from Orchard Field, the airfield's name before it became O'Hare. The code stuck even though the name changed.
- It reflects a former military site. Orlando's MCO preserves McCoy Air Force Base, the field the civil airport replaced.
- Letters are reserved. In the United States, codes starting with N are largely held for the Navy, and W and Q are reserved for other uses, so cities in affected areas had to choose substitute letters.
- The obvious code was already taken. With limited combinations, a new airport often cannot get the letters that match its name and receives the next available set instead.
Canada's codes look especially cryptic because most begin with Y, a legacy of early radio-station identifiers, which is why Toronto is YYZ rather than something resembling "Toronto." These quirks are not errors; they are frozen snapshots of when and how each airport joined the system.
IATA versus ICAO at a glance
| Length | IATA: 3 letters | ICAO: 4 letters |
|---|---|
| Assigned by | IATA: airline trade association | ICAO: UN aviation agency |
| Structure | IATA: mostly name-based | ICAO: regional prefix + airport |
| Used for | IATA: tickets, tags, boards | ICAO: flight plans, ATC |
Both systems are maintained continuously, and new codes are added or reassigned as airports open, close, or change roles. When you look up an airport, the short code is the one you will book with, while the four-letter code is what pilots and controllers rely on to move that flight safely through shared airspace.