The assignment of these codes is governed by IATA Resolution 763,[5] 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.[6]
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.[7]
Naming conventions
National policies
United States
Since the
U.S. Navy reserved "N" codes, and to prevent confusion with
Federal Communications Commissionbroadcast 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:
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:[citation needed]
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.[citation needed]
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",[8][unreliable source?] 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:
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.[citation needed]
Four of the ten provincial capital airports in Canada have ended up with codes beginning with YY, including:
Canada's largest airport is YYZ[9] 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, now the location of Montréal–Trudeau). 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)[10] and
Vancouver International Airport (YVR).[11]
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.
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:
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:
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).
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.
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."[7] 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).[7] Since HOU is used for
William P. Hobby Airport, the new
Houston–Intercontinental became IAH.[7] 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
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
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);
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.
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 StandifordField, 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.)[13]
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.
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 name in their respective language which is different from the name in English, yet the airport code represents only the English name. Examples include:
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 and
JFK.[18]