Airport Codes

70,348
Updated:
Files:1
Size:8.82 MB
Formats:csv
License:ODC-PDDL-1.0

Data contains the list of all airport codes, the attributes are listed in the table schema. Some of the columns contain attributes identifying airport locations, other codes (IATA, local if exist) that are relevant to identification of an airport.

Part of these Data Solutions

  • Global Country & Region Reference Data Solution

    Authoritative country codes, regions and location reference data to power your location-based solutions.

    Explore →
  • Logistics Data Solution

    Comprehensive reference for shipping codes, container standards and more.

    Explore →
  • Postal Codes Solution

    Every worldwide postal-code dataset in one bundle — the ultimate global reference for precise postal codes.

    Explore →

API Access

Access dataset files directly from scripts, code, or AI agents.

Browse dataset files
Dataset Files

Each file has a stable URL (r-link) that you can use directly in scripts, apps, or AI agents. These URLs are permanent and safe to hardcode.

/core/airport-codes/
https://datahub.io/core/airport-codes/_r/-/.gitattributes
https://datahub.io/core/airport-codes/_r/-/.gitignore
https://datahub.io/core/airport-codes/_r/-/ATTRIBUTION.txt
https://datahub.io/core/airport-codes/_r/-/Makefile
https://datahub.io/core/airport-codes/_r/-/README.md
https://datahub.io/core/airport-codes/_r/-/UPDATE_SCRIPT_MAINTENANCE_REPORT.md
https://datahub.io/core/airport-codes/_r/-/archive/data.csv
https://datahub.io/core/airport-codes/_r/-/data/airport-codes.csv
https://datahub.io/core/airport-codes/_r/-/data/type-counts.csv
https://datahub.io/core/airport-codes/_r/-/datapackage.json
Key Files

Start with these files — they give you everything you need to understand and access the dataset.

datapackage.json— metadata & schema
https://datahub.io/core/airport-codes/_r/-/datapackage.json
README.md— documentation
https://datahub.io/core/airport-codes/_r/-/README.md
Typical Usage
  1. 1. Fetch datapackage.json to inspect schema and resources
  2. 2. Download data resources listed in datapackage.json
  3. 3. Read README.md for full context

Data Views

Data Files

Explore with AI

airport-codes

Download

Download CSV

About

List of airports and airfields worldwide with their IATA and ICAO codes, location identifiers, facility type, and geographic coordinates. Derived from the OurAirports public domain dataset by merging latitude and longitude into a single coordinates field.
Last updated
16 October 2026
Total rows
...
Format
CSV
File size
8.82 MB

About this dataset

badge

Airport Codes

Airports, airfields, heliports and other aviation facilities from around the world, with their IATA codes (three letters, used in passenger reservation, ticketing and baggage handling), ICAO codes (four letters, used by air traffic control) and other identifiers, plus type, location and coordinates. The data comes from OurAirports.

Column definitions and types are in datapackage.json.

Data

  • data/airport-codes.csv has one row per facility.
  • archive/data.csv is an unchanged copy of the file downloaded from OurAirports, with all of its columns.
  • data/type-counts.csv is a small table of counts by facility type, including Closed. It is rebuilt from airport-codes.csv each time the data is updated.

Columns of data/airport-codes.csv:

ColumnMeaning
identOurAirports identifier of the facility, for example KLAX or 00A. It is not always an ICAO code
typelarge_airport, medium_airport, small_airport, heliport, seaplane_base, balloonport or closed
nameName of the facility
elevation_ftElevation above sea level in feet. Empty when unknown
continentTwo-letter continent code: AF, AN, AS, EU, NA (North America), OC, SA
iso_countryTwo-letter country code, for example US
iso_regionCountry and region, for example US-CA
municipalityCity or town served. Empty when unknown
icao_codeICAO code, for example KLAX. Often empty
iata_codeIATA code, for example LAX. Often empty
gps_codeGPS code. Often the same as the ICAO code. May be empty
local_codeCode used inside the country, for example the FAA code in the US. May be empty
coordinatesLatitude and longitude in one text value: "33.942501, -118.407997"

Known limitations

  • Many rows have no iata_code or no icao_code, because many facilities have no such code. Do not use either column as a key.
  • The file includes closed facilities (type is closed). Filter on type if you only want facilities that are in use.
  • NA is a real value in two columns: continent (North America) and iso_country (Namibia). By default pandas reads NA as missing. Read the file as text and turn that off: pd.read_csv("data/airport-codes.csv", dtype=str, keep_default_na=False). Empty cells are then empty strings.
  • coordinates is one text column, not two numbers. To split it: lat_lon = df["coordinates"].str.split(", ", expand=True).astype(float). The original latitude_deg and longitude_deg columns are only in archive/data.csv.

Data sources

  • OurAirports (airports.csv): the list of airports, with all columns. OurAirports says it compiles its data from many sources, listed on its About page. Licence: public domain, as stated by OurAirports (see License).

Changes made to the source data: the file airports.csv is downloaded; latitude_deg and longitude_deg are combined into one coordinates column; the columns id, scheduled_service, home_link, wikipedia_link and keywords are removed. No rows are changed, added or removed.

Not endorsed by, or affiliated with, OurAirports.

Preparation

You need Python 3.12 or greater. To rebuild the data from the repository root:

# Install the requirements and run the script
pip install -r scripts/requirements.txt
python3 scripts/process.py

# Or use make
make
make clean

The script downloads airports.csv into archive/data.csv, then writes data/airport-codes.csv. It then counts the facilities by type to write data/type-counts.csv and to update the counts used by the chart in datapackage.json.

A GitHub workflow runs the script every night (at 00:00 UTC) and on every push to main, and commits archive/, data/ and datapackage.json if they changed.

The data is also published on datahub.io.

License

The data comes from OurAirports (https://ourairports.com/data/). OurAirports states: "All data is released to the Public Domain, and comes with no guarantee of accuracy or fitness for use." Credit is not required; OurAirports asks for it as a courtesy, and a credit line is in ATTRIBUTION.txt.

Two things are unclear. We did not find terms that answer either, so this package does not claim more than OurAirports' statement above:

  • OurAirports' own sources (for example government airport lists and GeoNames). OurAirports names them but we found no statement from them about reuse.
  • Any rights IATA or ICAO may hold in their code lists. The IATA code search page carries "All rights reserved" and we did not read IATA's or ICAO's terms.

The maintainers offer their own work (the selection and formatting of the data) under the Public Domain Dedication and License (PDDL).