# IATA airport code

An IATA airport code, also known as an IATA location identifier, IATA station code, or simply a location identifier, is a three-letter geocode designating many airports and metropolitan areas around the world, defined by the International Air Transport Association (IATA). The characters prominently displayed on baggage tags attached at airport check-in desks are an example of a way these codes are used.
The assignment of these codes is governed by IATA Resolution 763, and it is administered by the IATA's headquarters in Montreal, Canada. The codes are published semi-annually in the IATA Airline Coding Directory.
IATA provides codes for airport handling entities, and for certain railway stations.
Alphabetical lists of airports sorted by IATA code are available. A list of railway station codes, shared in agreements between airlines and rail lines such as Amtrak, SNCF, and Deutsche Bahn, is available. However, many railway administrations have their own list of codes for their stations, such as the list of Amtrak station codes.

## History

Airport codes arose out of the convenience that the practice brought pilots for location identification in the 1930s. Initially, pilots in the United States used the two-letter code from the National Weather Service (NWS) for identifying cities. This system became unmanageable for cities and towns without an NWS identifier, and the use of two letters allowed only a few hundred combinations; a three-letter system of airport codes was implemented. This system allowed for 17,576 permutations, assuming all letters can be used in conjunction with each other.

## Naming conventions
### National policies
#### United States

Since the U.S. Navy reserved "N" codes, and to prevent confusion with Federal Communications Commission broadcast call signs, which begin with "W" or "K", the airports of certain U.S. cities whose name begins with one of these letters had to adopt "irregular" airport codes:
* EWR for Newark, New Jersey
* HVN for New Haven, Connecticut
* ORF for Norfolk, Virginia
* EYW for Key West, Florida
* OME for Nome, Alaska
* BNA for Nashville, Tennessee (whose airport's original name was Berry Field)
* APC for Napa, California.
* ILM for Wilmington, North Carolina
This practice is not followed outside the United States:
* Karachi is KHI
* Warsaw is WAW
* Nagoya is NGO
In addition, since three letter codes starting with Q are widely used in radio communication, cities whose name begins with "Q" also had to find alternate codes, as in the case of:
* Qiqihar (NDG)
* Quetta (UET)
* Quito (UIO)
* Quimper (UIP)
IATA codes should not be confused with the FAA identifiers of U.S. airports. Most FAA identifiers agree with the corresponding IATA codes, but some do not, such as Saipan, whose FAA identifier is GSN and its IATA code is SPN, and some coincide with IATA codes of non-U.S. airports.

#### Canada

Canada's unusual codes—which bear little to no similarity with any conventional abbreviation to the city's name—such as YUL in Montréal, and YYZ in Toronto, originated from the two-letter codes used to identify weather reporting stations in the 1930s. The letters preceding the two-letter code follow the following format:
* "Y" – Indicating "yes", this letter was used when the station shared its location with an airport.
* "W" – When the weather-reporting station shared its location with no airport, this letter hinted at "Without".
* "U" – This letter was used when the station was located together with a non-directional beacon (NDB).
* "X" – Suggesting that the last two letters of a code were in use by a Canadian airport, this letter was put in place.
* "Z" – This letter indicated that an airport code had been used for the identification of an airport in the U.S.
Most large airports in Canada have codes that begin with the letter "Y", although not all "Y" codes are Canadian (for example, YUM for Yuma, Arizona, and YNT for Yantai, China), and not all Canadian airports start with the letter "Y" (for example, ZBF for Bathurst, New Brunswick). Many Canadian airports have a code that starts with W, X or Z, but none of these are major airports. When the Canadian transcontinental railroads were built, each station was assigned its own two-letter Morse code:
* VR for Vancouver
* TZ for Toronto
* QB for Quebec City
* WG for Winnipeg
* SJ for Saint John
* YC for Calgary
* OW for Ottawa
* EG for Edmonton
When the Canadian government established airports, it used the existing railway codes for them as well. If the airport had a weather station, authorities added a "Y" to the front of the code, meaning "Yes" to indicate it had a weather station or some other letter to indicate it did not. When international codes were created in cooperation with the United States, because "Y" was seldom used in the United States, Canada simply used the weather station codes for its airports, changing the "Y" to a "Z" if it conflicted with an airport code already in use. The result is that most major Canadian airport codes start with "Y" followed by two letters in the city's name (for example, YOW for Ottawa, YWG for Winnipeg, YYC for Calgary, or YVR for Vancouver), whereas other Canadian airports append the two-letter code of the radio beacons that were the closest to the actual airport, such as YQX in Gander or YXS in Prince George.
Four of the ten provincial capital airports in Canada have ended up with codes beginning with YY, including:
* YYZ for Toronto, Ontario
* YYJ for Victoria, British Columbia
* YYT for St. John's, Newfoundland and Labrador
* YYG for Charlottetown, Prince Edward Island
Canada's largest airport is YYZ for Toronto Pearson (as YTZ was already allocated to Billy Bishop Toronto City Airport, the airport was given the station code of Malton, Mississauga, where it is located). YUL is used for Montréal–Trudeau (UL was the ID code for the beacon in the city of Kirkland. While these codes make it difficult for the public to associate them with a particular Canadian city, some codes have become popular in usage despite their cryptic nature, particularly at the largest airports. Toronto's code has entered pop culture in the form of "YYZ", a song by the rock band Rush, which utilizes the Morse code signal as a musical motif. Some airports have started using their IATA codes as brand names, such as Calgary International Airport (YYC) and Vancouver International Airport (YVR).

#### New Zealand

Numerous New Zealand airports use codes that contain the letter Z, to distinguish them from similar airport names in other countries. Examples include HLZ for Hamilton, ZQN for Queenstown, and WSZ for Westport.

### Naming conventions in general

Predominantly, airport codes are named after the first three letters of the city in which it is located, for instance:
* AMS for Amsterdam
* ATL for Atlanta
* CLE for Cleveland
* DEL for Delhi
* IND for Indianapolis
* SAN for San Diego
* BER for Berlin
* GLA for Glasgow
* MEX for Mexico City
* DEN for Denver
* IST for Istanbul
* SIN for Singapore
* HAN for Hanoi
* AUS for Austin
The code may also be a combination of the letters in its name, such as:
* ALA for Almaty (formerly known as Alma-Ata)
* BLR for Bengaluru
* ORK for Cork
* EWR for Newark
* GDL for Guadalajara
* JNB for Johannesburg
* HKG for Hong Kong
* SLC for Salt Lake City
* WAW for Warsaw
* PQC for Phu Quoc
* SGN for Ho Chi Minh City (formerly known as Sai Gon)
Sometimes the airport code reflects pronunciation, rather than spelling, namely:
* NAN, which reflects the pronunciation of "Nadi" as in Fijian, where "d" is realized as the prenasalized stop [ⁿd]
For many reasons, some airport codes do not fit the normal scheme described above. Some airports, for example, cross several municipalities or regions, and therefore, use codes derived from some of their letters, resulting in:
* DFW for Dallas/Fort Worth
* DTW for Detroit–Wayne County
* LBA for Leeds–Bradford (Airport)
* MSP for Minneapolis–Saint Paul
* RDU for Raleigh–Durham
Other airports—particularly those serving cities with multiple airports—have codes derived from the name of the airport itself, for instance:
* JFK for New York's John F. Kennedy
* LHR for London's Heathrow Airport
* CDG for Paris's Charles de Gaulle (see below)
This is also true with some cities with a single airport (even if there is more than one airport in the metropolitan area of said city), such as BDL for Hartford, Connecticut's Bradley International Airport or Baltimore's BWI, for Baltimore/Washington International Airport; however, the latter also serves Washington, D.C., alongside Dulles International Airport (IAD, for International Airport Dulles) and Ronald Reagan Washington National Airport (DCA, for District of Columbia Airport).
The code also sometimes comes from the airport's former name, such as Orlando International Airport's MCO (for McCoy Air Force Base), or Chicago's O'Hare International Airport, which is coded ORD for its original name: Orchard Field. In rare cases, the code comes from the airport's unofficial name, such as Kahului Airport's OGG (for local aviation pioneer Jimmy Hogg).

#### Cities with multiple commercial airports

In large metropolitan areas, airport codes are often named after the airport itself instead of the city it serves, while another code is reserved which refers to the city itself which can be used to search for flights to any of its airports. For instance:
* Beijing (BJS) – Capital (PEK) and Daxing (PKX)
* Belo Horizonte (BHZ) – Confins (CNF) and Pampulha (PLU)
* Bucharest (BUH) – Otopeni (OTP) is named after the town of Otopeni where the airport is located, while the city also has a business airport inside the city limits named Băneasa (BBU).
* Buenos Aires (BUE) – Ezeiza (EZE) is named after the suburb in Ezeiza Partido where the airport is located, while Aeroparque Jorge Newbery (AEP) is in the city proper.
* Chicago (CHI) – O'Hare (ORD), named after Orchard Field, the airport's former name, Midway (MDW), and Rockford (RFD).
* Jakarta (JKT) – Soekarno–Hatta (CGK) is named after Cengkareng, the district in which the airport is located, while the city also has another airport, Halim Perdanakusuma (HLP). JKT used to refer to the city's former airport, Kemayoran Airport, which closed down in the mid-1980s.
* London (LON) – Heathrow (LHR), Gatwick (LGW), City (LCY), Stansted (STN), Luton (LTN), and Southend (SEN)
* Milan (MIL) – Malpensa (MXP), Linate (LIN), and Orio al Serio (BGY)
* Montreal (YMQ) – Trudeau (YUL), Mirabel (YMX), and Metropolitan (YHU)
* Moscow (MOW) – Sheremetyevo (SVO), Domodedovo (DME), Vnukovo (VKO), Zhukovsky (ZIA), business airport Ostafyevo (OSF), and military air base Chkalovsky (CKL)
* New York City (NYC) – John F. Kennedy (JFK, formerly Idlewild (IDL)), LaGuardia (LGA), and Newark (EWR)
* Osaka (OSA) – Itami (ITM, formerly OSA), Kansai (KIX), and Kobe (UKB)
* Paris (PAR) – Orly (ORY), Charles de Gaulle (CDG), Le Bourget (LBG), and Beauvais (BVA)
* Rio de Janeiro (RIO) – Galeão (GIG) and Santos Dumont (SDU)
* Rome (ROM) – Fiumicino (FCO) and Ciampino (CIA)
* São Paulo (SAO) – Congonhas (CGH), Guarulhos (GRU), and Campinas (VCP)
* Sapporo (SPK) – Chitose (CTS) and Okadama (OKD)
* Seoul (SEL) – Incheon (ICN) and Gimpo (GMP, formerly SEL)
* Stockholm (STO) – Arlanda (ARN), Bromma (BMA), Nyköping–Skavsta (NYO), and Västerås (VST)
* Tenerife (TCI) – Tenerife North (TFN) and Tenerife South (TFS)
* Tokyo (TYO) – Haneda (HND, formerly TYO) and Narita (NRT)
* Toronto (YTO) – Pearson (YYZ), Billy Bishop (YTZ), Hamilton (YHM), and Waterloo (YKF)
* Washington, D.C. (WAS) – Dulles (IAD), Reagan (DCA), and Baltimore–Washington (BWI)
Or using a code for the city in one of the major airports and then assigning another code to another airport:
* Almaty (ALA) – Self-named (ALA) and Burundai (BXJ)
* Bangkok (BKK) – Suvarnabhumi (BKK) and Don Mueang (DMK, formerly BKK)
* Belfast (BFS) – International (BFS) and George Best (BHD)
* Berlin (BER) – Self-named (BER). The city also previously had three airports, Tempelhof (THF), Schönefeld (SXF) and Tegel (TXL), with THF and TXL both now closed. The former Berlin Schönefeld Airport was absorbed into Berlin Brandenburg Airport, with the old Schönefeld terminal becoming Terminal 5.
* Chengdu (CTU) – Shuangliu (CTU), Tianfu (TFU), and Huaizhou (HZU; zh)
* Colombo (CMB) – Bandaranaike (CMB) and Ratmalana (RML)
* Dakar (DKR) – Senghor (DKR) and Diass (DSS)
* Dallas–Fort Worth (DFW) – Self-named (DFW), Love Field (DAL), Meacham (FTW), Alliance (AFW), and Addison (ADS)
* Dubai (DXB) – Self-named (DXB) and Al Maktoum (DWC)
* Goa (GOI) – Dabolim Airport (GOI) and Manohar International Airport (GOX)
* Glasgow (GLA) – International (GLA) and Prestwick (PIK)
* Houston (HOU) – Hobby (HOU), George Bush Intercontinental (IAH), and Ellington (EFD)
* Istanbul (IST) – Self-named (IST), Sabiha Gökçen (SAW), and Atatürk (ISL, formerly IST)
* Johannesburg (JNB) – O. R. Tambo (formerly Jan Smuts) (JNB) and Lanseria (HLA)
* Kuala Lumpur (KUL) – Sepang (KUL) and Subang (SZB, formerly KUL)
* Kyiv (IEV) – Zhuliany (IEV) and Boryspil (KBP)
* Los Angeles (LAX) – Self-named (LAX), San Bernardino (SBD), Ontario (ONT), Orange County (SNA), Van Nuys (VNY), Palmdale (PMD), Long Beach (LGB), and Burbank (BUR)
* Medellín (MDE) – José María Córdova (MDE) and Olaya Herrera (EOH)
* Mexico City (MEX) – Self-named (MEX) and Felipe Ángeles (NLU)
* Melbourne (MEL) – Tullamarine (MEL), Essendon (MEB), and Avalon (AVV)
* Miami (MIA) – Self-named (MIA), Fort Lauderdale (FLL), and West Palm Beach (PBI)
* Nagoya (NGO) – Centrair (NGO) and Komaki (NKM, formerly NGO)
* San Diego – Self-named (SAN) and Tijuana (TIJ). TIJ is physically located in Tijuana, Mexico, but offers access directly to and from the US via the Cross Border Xpress.
* San Francisco (SFO) – Self-named (SFO), Oakland (OAK), San Jose–Mineta (SJC), and Sonoma–Schulz (STS)
* Seattle (SEA) – Tacoma (Sea–Tac) (SEA), Boeing Field (BFI), and Paine Field (PAE)
* Shanghai (SHA) – Pudong (PVG) and Hongqiao (SHA)
* Taipei (TPE) – Taoyuan (formerly Chiang Kai-shek) (TPE) and Songshan (TSA, formerly TPE)
* Tehran (THR) – Imam Khomeini (IKA) and Mehrabad (THR)
When different cities with the same name each have an airport, they need to be assigned different codes. Examples include:
* Juan Santamaría International Airport (SJO) is in Alajuela, serving the capital San José de Costa Rica. While Norman Y. Mineta San Jose International Airport (SJC) is in San Jose, California, the United States.
* Birmingham–Shuttlesworth International Airport (BHM) is in Birmingham, Alabama, the United States and Birmingham Airport (BHX) is in Birmingham, England, United Kingdom.
* Portland International Jetport (PWM) is in Portland, Maine, while Portland International Airport (PDX) is in Portland, Oregon.
* Manchester Airport (MAN) is in Manchester, England, United Kingdom, while Manchester-Boston Regional Airport (MHT) is in Manchester, New Hampshire, United States.
* Arturo Merino Benítez International Airport (SCL) is in Santiago, Chile; while Antonio Maceo Airport (SCU) is in Santiago, Cuba; Santiago–Rosalía de Castro Airport (SCQ) is in Santiago de Compostela, Spain; and Cibao International Airport (STI) serves Santiago de los Caballeros, Dominican Republic.
Sometimes, a new airport is built, replacing the old one, leaving the city's new "major" airport (or the only remaining airport) code to no longer correspond with the city's name. The original airport in Nashville, Tennessee, was built in 1936 as part of the Works Progress Administration and called Berry Field with the designation, BNA. A new facility known as Nashville International Airport was built in 1987 but still uses BNA. This is in conjunction to rules aimed to avoid confusion that seem to apply in the United States, which state that "the first and second letters or second and third letters of an identifier may not be duplicated with less than 200 nautical miles separation." Thus, Washington, D.C. area's three airports all have radically different codes: IAD for Washington–Dulles, DCA for Washington–Reagan (District of Columbia Airport), and BWI for Baltimore (Baltimore–Washington International, formerly BAL). Since HOU is used for William P. Hobby Airport, the new Houston–Intercontinental became IAH. The code BKK was originally assigned to Bangkok–Don Mueang and was later transferred to Suvarnabhumi Airport, while the former adopted DMK. The code ISK was originally assigned to Gandhinagar Airport (Nashik's old airport) and later on transferred to Ozar Airport (Nashik's current airport). Shanghai–Hongqiao retained the code SHA, while the newer Shanghai–Pudong adopted PVG. The opposite was true for Berlin: the airport Berlin–Tegel used the code TXL, while its smaller counterpart Berlin–Schönefeld used SXF; the Berlin Brandenburg Airport has the airport code BER, which is also part of its branding. The airports of Hamburg (HAM) and Hannover (HAJ) are less than 100 nautical miles (190 km) apart and therefore share the same first and middle letters, indicating that this rule might be followed only in Germany.

#### Cities or airports changing names

Many cities retain historical names in their airport codes, even after having undergone an official name/spelling/transliteration change:
* In Angola: NDD for Sumbe (formerly Novo Redondo), NOV for Huambo (formerly Nova Lisboa), PGI for Chitato (formerly Portugália), VHC for Saurimo (formerly Henrique de Carvalho), SDD for Lubango (formerly Sá da Bandeira), SPP for Menongue (formerly Serpa Pinto), and SVP for Cuíto (formerly Silva Porto)
* In Armenia: LWN for Gyumri (formerly Leninakan)
* In Azerbaijan: KVD for Ganja (formerly Kirovabad)
* In Bangladesh: DAC for Dhaka (formerly Dacca)
* In Cambodia: KOS for Sihanoukville (formerly Kampong Som)
* In Canada: YFB for Iqaluit (formerly Frobisher Bay), YHU for MET – Montreal Metropolitan Airport (formerly Montréal/Saint-Hubert Airport)
* In China: PEK for Beijing (formerly Peking), TSN for Tianjin (formerly Tientsin), CKG for Chongqing (formerly Chungking), NKG for Nanjing (formerly Nanking), TNA for Jinan (formerly Tsinan), TAO for Qingdao (formerly Tsingtao), CTU for Chengdu (formerly Chengtu), KWE for Guiyang (formerly Kweiyang), SIA for Xi'an (formerly Sian), and CAN for Guangzhou (formerly Canton). The older IATA codes follow Chinese postal romanization, introduced in 1906, officially abolished in 1964 and in use well into the 1980s, while gradually superseded by Pinyin.
** DYG for Zhangjiajie (formerly Dayong; a genuine change in city name, rather than just a change of romanization)
* In Czechia: GTW for Holešov Airport serving Zlín (formerly Gottwaldov)
* In the Democratic Republic of Congo: PFR for Ilebo (formerly Port-Francqui)
* In Fiji: PTF for Malolo Lailai (formerly Plantation Island, Fiji)
* In Greenland: most airports, including SFJ for Kangerlussuaq (formerly Søndre Strømfjord), GOH for Nuuk (formerly Godthåb) and JAV for Ilulissat (Jacobshavn)
* In India: BOM for Mumbai (formerly Bombay), CCU for Kolkata (formerly Calcutta), MAA for Chennai (formerly Madras), and CNN for Kannur (formerly Cannanore)
* In Indonesia: TKG for Bandar Lampung (formerly Tanjung Karang), UPG for Makassar (formerly Ujung Pandang). In addition, when the Enhanced Indonesian Spelling System was introduced in 1972, a few older IATA codes retained the previous spelling: BTJ for Banda Aceh (formerly Banda Atjeh), DJJ for Jayapura (formerly Djajapura), and JOG for Yogyakarta (formerly Jogjakarta).
* In Kazakhstan: NQZ for Astana (formerly Nur-Sultan and Tselinograd (TSE)), SCO for Aktau (formerly Shevchenko), GUW for Atyrau (formerly Guryev), KOV for Kokshetau (formerly Kokchetav), DMB for Taraz (formerly Dzhambyl), PLX for Semey (formerly Semipalatinsk), CIT for Shymkent (formerly Chimkent), and DZN for Jezkazgan (formerly Dzhezkazgan)
* In Kyrgyzstan: FRU for Bishkek (formerly Frunze)
* In Madagascar: DIE for Antsiranana (formerly Diego-Suarez), WPB for Boriziny (formerly Port Bergé)
* In Moldova: RMO for Chișinău (formerly Kishinev (KIV))
* In Montenegro: TGD for Podgorica (formerly Titograd)
* In Mozambique: VJB for Xai-Xai (formerly João Belo), VPY for Chimoio (formerly Vila Pery), FXO for Cuamba (formerly Nova Freixo), and TGS for Chokwe (formerly Vila Trigo de Morais)
* In Myanmar: RGN for Yangon (formerly Rangoon), SNW for Thandwe (formerly Sandoway), and TVY for Dawei (formerly Tavoy)
* In Pakistan: LYP for Faisalabad when the city changed its name from Lyallpur to Faisalabad in honour of the King Faisal of Saudi Arabia.
* In Russia: LED for St. Petersburg (formerly Leningrad), GOJ for Nizhny Novgorod (formerly Gorky), SVX for Yekaterinburg (formerly Sverdlovsk), KUF for Samara (formerly Kuybyshev), OGZ for Vladikavkaz (formerly Ordzhonikidze), and KLD for Tver (formerly Kalinin) and others
* In South Africa: NLP for Mbombela (formerly Nelspruit), PLZ for Gqeberha (formerly Port Elizabeth), and PTG for Polokwane (formerly Pietersburg)
* In South Korea: KAG for Gangneung (formerly Kangnung), PUS for Busan (formerly Pusan), and TAE for Daegu (formerly Taegu)
* In Tajikistan: LBD for Khujand (formerly Leninabad)
* In Turkmenistan: KRW for Türkmenbaşy (formerly Krasnovodsk), CRZ for Türkmenabat (formerly Chardzhev), and TAZ for Daşoguz (formerly Tashauz)
* In Ukraine: IEV for Kyiv (formerly Kiev), VSG for Luhansk (formerly Voroshilovgrad), KGO for Kropyvnytskyi (formerly Kirovograd), LWO for Lviv (formerly Lwów while part of Poland until 1939, and still called Lvov in Russian), and IFO for Ivano-Frankivsk (in Soviet times spelt in Russian as Ivano-Frankovsk);
* In Vietnam: SGN for Ho Chi Minh City (formerly Saigon)
* In Western Sahara: VIL for Dakhla (formerly Villa Cisneros)
Some airport codes are based on previous names associated with a present airport, often with a military heritage. These include:
* Chicago's O'Hare, which is assigned ORD based on its old name of Orchard Field. It was expanded and renamed O'Hare in the mid-1950s.
* Rickenbacker International Airport uses LCK, for its former name of Lockbourne Air Force Base.
* Travis Air Force Base uses SUU, for its former name of Fairfield-Suisun Army Air Base.
* North Texas Regional Airport uses PNX, for its former name of Perrin Air Force Station.
* Fresno Yosemite International Airport uses the code FAT, derived from a previous name of the airport, Fresno Air Terminal.
* Orlando International Airport was founded as Orlando Army Air Field #2 but uses MCO for having been renamed McCoy Air Force Base in 1959 in honor of a wing commander who crashed at the field in 1958. It was converted in the early 1960s to joint civilian/military use and renamed Orlando Jetport at McCoy, then renamed Orlando International Airport in the early 1980s.
* Spokane International Airport was so named in 1960 but goes by GEG because it was built on the former Geiger Field, renamed in 1941 for Major Harold Geiger when the US Army acquired it.
* Louis Armstrong New Orleans International Airport was originally named Moisant Field after daredevil aviator John Moisant, who died in 1910 in an airplane crash on agricultural land where the airport is now located. Its IATA code MSY was derived from Moisant Stock Yards, as Lakefront Airport retained the code NEW.
* Lehigh Valley International Airport uses ABE, for its former name of Allentown–Bethlehem–Easton International Airport.
* William R. Fairchild International Airport uses CLM, for its former name of Clallam County Municipal Landing Field.
* Chicago Executive Airport uses PWK, for its former name, Palwaukee Municipal Airport (which was derived from its location on Palatine Road and Milwaukee Avenue).
* Dallas Executive Airport used RBD, for its former name, Redbird Airport.
* TSTC Waco Airport uses CNW, as it was formerly Connally Air Force Base.
* Glacier Park International Airport uses FCA, for its former name Flathead County Airport.
Some airports are named for an administrative division or nearby city, rather than the one they are located in:
* Juan Santamaría International Airport is located in Alajuela province, but since it is so close to the capital city of San José, Costa Rica, the airport serves the whole Central Valley using SJO.
* Grand Strand Airport uses CRE for the former municipality of Crescent Beach, South Carolina.
* San Ignacio Town Airstrip, located in San Ignacio, Belize, uses CYD because it is located in the Cayo District.
* Ronald Reagan Washington National Airport in Crystal City, Virginia uses DCA for the District of Columbia (DC) and Arlington.
* Prince Naif bin Abdulaziz International Airport in Buraidah, Saudi Arabia uses ELQ for the Al-Qassim Province (El Qassim)
* Damazin Airport in Sudan uses RSS, for the nearby Roseires Dam.
Other airport codes are of obscure origin, and each has its own peculiarities:
* Nashville uses BNA for its former name as Berry Field, henceforth Berry Nashville Airport.
* Louisville Muhammad Ali International Airport is SDF for Standiford Field, its original name (Elisha David Standiford who, as a businessman and legislator, played an important role in Louisville transportation history and owned part of the land on which the airport was built.)
* Knoxville uses TYS for Charles McGhee Tyson, whose family donated the land for the first airport in Knoxville
* Kahului, the main gateway into Maui, uses OGG in homage to Hawaiian aviation pioneer Bertram J. Hogg
* Gold Coast, Australia, uses OOL due to its former name as Coolangatta Airport, named after the suburb in which it is located
* Sunshine Coast, Australia, uses MCY due to its former names Maroochydore Airport and Maroochydore-Sunshine Coast Airport. It is actually located in Marcoola rather than Maroochydore.
* Buli Airport uses PGQ, for its location in the Pekaulang administrative division.
* New River Valley Airport uses PSK for its location in Pulaski County, Virginia.
* Río Amazonas Airport uses PTZ for its location in Pastaza Province.
* Brackett Field uses POC, as it was named after a flying enthusiast and faculty member of nearby Pomona College.
* Yan'an Nanniwan Airport inherited the ENY code from the city of Yan'an's old airport, Yan'an Ershilipu Airport.
* Northwest Florida Beaches International Airport uses the code ECP, which when proposed was thought it could stand for "Everyone Can Party"
In Asia, codes that do not correspond with their city's names include Niigata's KIJ, Nanchang's KHN and Pyongyang's FNJ.

#### Multiple codes for a single airport

EuroAirport Basel Mulhouse Freiburg, which serves three countries, has three airport codes: BSL, MLH, EAP.
* The French part of the airport is assigned MLH, for Mulhouse, France
* The Swiss part of the airport is assigned BSL, for Basel, Switzerland
* The Airport has a neutral code, EAP, for EuroAirport.

#### Airport codes using the English name of the city

Some cities have a local name in their respective language which is different from the name in English, yet the airport code represents only the English name. Examples include:
* BKK – Bangkok, Thailand (Thai: กรุงเทพ, romanized: Krung Thep)
* CAI – Cairo, Egypt (Arabic: القاهرة, romanized: al-Qāhirah)
* CGN – Cologne, Germany (German: Köln)
* CPH – Copenhagen, Denmark (Danish: København)
* DEL – Delhi, India (Hindi: दिल्ली, romanized: Dilli)
* DUB – Dublin, Ireland (Irish: Baile Átha Cliath)
* FLR – Florence, Italy (Italian: Firenze)
* GVA – Geneva, Switzerland (French: Genève)
* HAV – Havana, Cuba (Spanish: La Habana)
* LKO – Lucknow, India (Hindi: लखनऊ, romanized: Lakhnau)
* PRG – Prague, Czechia (Czech: Praha)
* VCE – Venice, Italy (Italian: Venezia)
* VIE – Vienna, Austria (German: Wien)

#### Scarcity of codes

Due to scarcity of codes, some airports are given codes with letters not found in their names:
* ACI for Alderney, UK
* BGO for Bergen, Norway
* DAD for Da Nang, Vietnam
* FNJ for Pyongyang, North Korea
* CMH for Columbus, Ohio, US

##### Use of 'X' as a filler

The use of 'X' as a filler letter is a practice to create three-letter identifiers when more straightforward options were unavailable:
* XWA for Williston, North Dakota, USA
* MMX for Malmö, Sweden
* MXX for Mora–Siljan Airport, Sweden
* DXB for Dubai, United Arab Emirates (e.g. DUB was already allocated to Dublin Airport in Ireland)
* MXP for Milan Malpensa, Italy
* GRX for Granada International Airport, Spain (e.g. GRA was already allocated to Gamarra Airport in Colombia)
* XGG for Gorom Gorom Airport, Burkina Faso
* BHX for Birmingham Airport, United Kingdom (e.g. BHM was already allocated to Birmingham–Shuttlesworth Airport in the United States)
Some airports in the United States retained their NWS (National Weather Service) codes and simply appended an X at the end. Examples include:
* LAX for Los Angeles
* PDX for Portland
* PHX for Phoenix (Note: the X does not originate from the x at the end of Phoenix but is the result of appending an X at the end of the NWS code.)

#### Airports without codes

A lot of minor airfields without scheduled passenger traffic have ICAO codes but not IATA codes, since the four letter codes allow more number of codes, and IATA codes are mainly used for passenger services such as tickets, and ICAO codes by pilots. In the US, such airfields use FAA codes instead of ICAO.
There are airports with scheduled service for which there are ICAO codes but not IATA codes, such as Nkhotakota Airport/Tangole Airport in Malawi or Chōfu Airport in Tokyo, Japan. There are also several minor airports in Russia (e.g., Omsukchan Airport) which lack IATA codes and instead use internal Russian codes for booking. Flights to these airports cannot be booked through the international air booking systems or have international luggage transferred there, and thus, they are booked instead through the airline or a domestic booking system. Several heliports in Greenland have 3-letter codes used internally which might be IATA codes for airports in faraway countries.
There are several airports with scheduled service that have not been assigned ICAO codes that do have IATA codes, especially in the U.S. For example, several airports in Alaska have scheduled commercial service, such as Stebbins and Nanwalek, which use FAA codes instead of ICAO codes.
Thus, neither system completely includes all airports with scheduled service.

#### Use in colloquial speech

Some airports are identified in colloquial speech by their IATA code. Examples include LAX, PDX and CCU.