This is a follow up to my previous question What do numbers signify in airport codes?

In that case, I was asking why my local airport (Markham Airport) had a number in its code (CNU8). I later learned that the code was not really a code, but a Transport Canada Identifier.

This leads me to my question, Why do some airports not have ICAO codes? At my local airport, there is plenty of glider activity, and a flight school is also located there.

My main thoughts for the airport not having a code comes from the lack of an Air Traffic Control Tower. When declaring a landing, pilots have to do declare it on Traffic, which doesn't have a controller. It looks something like this (based on memory, I'm not a pilot but I hope to be one):

Markham Traffic, Aircraft Papa Lima landing on the grass strip beside whatever runway

Am I correct in assuming that airports without ICAO codes don't have codes because of the lack of a control tower? Or is there other reasons for this?

  • 4
    $\begingroup$ Wish I could find a reference for this question. I suspect it has to do with traffic volume. With the FAA, they generally seem to start an airport with a 4 digit code(state abbr, and 2 numbers, aka 20GA in some combo), then if it's busier they'd upgrade to a 3 character code(6A2), then if it increases then they'd bump to a 3 letter identifier(PUJ). Once it's to the 3 letter one, it's generally assumed to be ICAO compliant by adding a K in front for the Continental US. Now is this correct? Not sure, but that's the standard I've seen in upgrading identifiers in the US. $\endgroup$
    – slookabill
    Commented May 6, 2015 at 0:10
  • 4
    $\begingroup$ The reason why not all airports do is that there aren't that many ICAO codes, and there are lots of airports. $\endgroup$
    – cpast
    Commented May 6, 2015 at 0:19
  • $\begingroup$ In the US there is a minimum level of weather reporting capability (among other things) required to get an ICAO identifier. $\endgroup$
    – casey
    Commented May 6, 2015 at 1:40
  • $\begingroup$ @cpast if what you say is the case looks to me that ICAO procedures are really obsolete or not needed. $\endgroup$ Commented May 6, 2015 at 8:21
  • $\begingroup$ The airport has to apply for an ICAO code. At a very local grass strip with a lot of glider traffic you might not have any use for the worldwide ICAO code. $\endgroup$
    – ghellquist
    Commented Jul 29, 2018 at 8:20

1 Answer 1


There is plenty of information on the Internet on how certain and specific identifiers came to life, however the codes are sometimes not directly assigned by ICAO, but by the member nations.

ICAO Document 7910 - Location Identifiers contains codes allocated by national governments, on behalf of ICAO, to airports, airfields and other facilities such as ATC and weather stations.

Ultimately, it is the national CAA's or other authorities' decision whether to assign a code and get it validated through ICAO. The decision may be based on political, historical or other reasons, there is no minimum requirements for airports to receive an ICAO code.

Am I correct in assuming that airports without ICAO codes don't have codes because of the lack of a control tower? Or is there other reasons for this?

The availability of a control tower is not a requirement for ICAO codes, even small uncontrolled fields with grass strips can have an ICAO code, example: EDKW / Werdohl-Küntrop (600m grass / uncontrolled / PPR)

  • 1
    $\begingroup$ One reason in the US to have an ICAO identifier is weather reporting. Sometime back in the 1990's the FAA changed a bunch of airports identifiers to ICAO standard identifiers as part of a change where they changed weather reports to ICAO standards. Non-ICAO airport identifiers don't work in the ICAO-compliant weather system. $\endgroup$
    – Gerry
    Commented Dec 18, 2022 at 19:05
  • $\begingroup$ I don't think that's correct, @Gerry. There are plenty of airports in the US which have weather reporting but do not have ICAO codes. A quick browse of Skyvector will show them: 1R8, 2J9, 24J, 28J, X60, etc, etc.... $\endgroup$
    – randomhead
    Commented Mar 21 at 3:25
  • $\begingroup$ @randomhead At the time, that was the reason given for changing airport identifiers to ICAO format. Destin was 79J and changed to KDTS at that time. Since then, with automation they have greatly expanded the number of airports with weather stations. Do to the numbers, they apparently had issues with the renaming and just decided to affix the "K" prefix to the beginning of the old identifiers to make them work within the weather system. If you look at your examples, Bay Minette is 1R8 but if you hover over the weather station icon, it displays "WEATHER STATION K1R8 BAY MINETTE" $\endgroup$
    – Gerry
    Commented Mar 21 at 17:45
  • $\begingroup$ @Gerry: Correct, but I want to clarify an important point. Destin was not changed from 79J (FAA Location ID) to KDTS (ICAO). It was changed from 79J (FAA LID) to DTS (FAA LID), and the fact that the new FAA LID consisted of only letters allowed easy assignment of the ICAO identifier KDTS. Then of course we have the Weather Station identifier which is the FAA LID prefixed with K... sometimes that lines up with the ICAO identifier and sometimes it doesn't because there is no ICAO identifier. $\endgroup$
    – randomhead
    Commented Mar 21 at 17:55

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .