ICAO Airport Code Prefix Guide
What every letter prefix means — decode any ICAO code instantly
ICAO codes (International Civil Aviation Organization) are 4-letter identifiers used by air traffic control, flight planning systems, and pilots worldwide. Unlike IATA codes — which are arbitrary 3-letter codes assigned to commercial airports — ICAO codes have a logical geographic structure built into their prefix.
The first one or two letters of an ICAO code tell you exactly which region or country the airport is in. Once you know the system, you can decode any ICAO code before looking it up.
Example: KSEA
K = Contiguous United States · SEA = derived from Seattle · Full: Seattle–Tacoma International Airport
Example: EGLL
EG = United Kingdom · LL = Heathrow · Full: London Heathrow Airport
A — Western South Pacific
B — North Atlantic
C — Canada
Canada uses a single-letter prefix. The second letter further subdivides by province: CY = major airports, CZ = aerodromes.
D — West Africa
E — Northern Europe
F — Africa (south of equator)
G — Africa (northwest)
H — Africa (northeast)
K — Contiguous United States
The K prefix is unique: it's a single letter covering the entire contiguous US. IATA codes for US airports are often the last 3 letters of the ICAO code (SEA → KSEA), but not always (LAX → KLAX, ORD → KORD).
L — Southern Europe / Middle East
M — Central America & Caribbean
N — Pacific Ocean
O — Middle East
P — Pacific (US territories) & Alaska
R — East Asia (US/Japan/Korea)
S — South America
T — Caribbean
U — Russia & Central Asia
Russia uses many two-letter prefixes for its vast territory. U alone covers the western half; the Russian Far East uses code groups under other regional assignments.
V — South Asia & Southeast Asia
W — Southeast Asia (western)
Y — Australia & Antarctica
Australia uses a single-letter Y prefix for all civil airports, similar to Canada's C. The second letter often indicates the state (YM = Victoria, YS = South Australia, etc.).
Z — China & Mongolia
Frequently Asked Questions
Why does the United States use "K" instead of "U"?
The U prefix was assigned to the Soviet Union and its successor states. When ICAO established its regional coding system, K was assigned to the contiguous United States. This was partly influenced by existing radio station naming conventions — US broadcast stations east of the Mississippi used W, and those to the west used K. Alaska and Hawaii use P codes instead.
Why does Canada use "C" and Australia use "Y"?
Both countries received single-letter prefixes due to their large geographic size and the large number of airports they operate. Canada's C prefix covers all provinces and territories. Australia's Y prefix similarly covers the entire continent. The choice of specific letters reflects ICAO's regional allocation decisions from the late 1940s.
Why don't ICAO and IATA codes always match?
IATA codes were originally derived from city names or weather station codes and were not designed to be globally unique in the same systematic way. ICAO codes were designed later with geographic logic built in. For many US airports, the IATA code is the last 3 letters of the ICAO code (SEA → KSEA), but for others they diverge entirely (ORD for O'Hare, which uses KORD because ORD derived from "Orchard Field," the airport's former name).
Are ICAO codes always 4 letters?
Yes — all standard ICAO airport identifiers are exactly 4 letters. The OurAirports dataset sometimes includes longer "idents" for non-standard facilities, but official ICAO codes are always 4 characters. If you see a 4-letter code starting with the country prefix, it's an ICAO code.