Data and sources
FlyCodes is built entirely on open, publicly available datasets. Here is exactly what we use, how fresh it is, and how you can use it too.
OurAirports (public domain)
Airport records, including IATA and ICAO codes, names, cities, countries, coordinates, elevation and runways, come from OurAirports. OurAirports data is released into the public domain, so it can be used freely for any purpose. We filter it to airports that carry an IATA code and are classed as small, medium or large airports.
OpenFlights
Airline records (IATA and ICAO airline codes, callsigns and country) and the route connections we use to rank the busiest airports come from the OpenFlights project. Our "busiest" ranking counts scheduled route connections in this dataset, which is a proxy for how central an airport is to the global network rather than a passenger total.
How we process it
At build time we trim both datasets to the aviation-code fields, join runways to airports, compute a connection-based rank, and bake the result into static JSON. Nothing is fetched at request time, so pages are fast and the data is reproducible. The build script is committed in the repository.
Accuracy and corrections
Open aviation data is very good but not perfect. Codes change, airports close, and airlines come and go. We show a "last updated" date on this page and regenerate periodically. For anything safety-critical, always confirm against official IATA or ICAO sources. FlyCodes is an independent reference and is not affiliated with IATA or ICAO.
Download the whole dataset
Both entities are published as one file each, with the derived fields the upstream sources do not provide: the connection count and rank per airport, the route count and rank per carrier, and the ICAO prefix letter. No sign up, no key.
- flycodes-airports.csv and flycodes-airports.json (8,803 rows)
- flycodes-airlines.csv and flycodes-airlines.json (1,108 rows)
Data dictionary
Every column, what it means, and where it comes from. "Derived" means FlyCodes computes it and it is in neither source file.
| Column | Type | Meaning | Source |
|---|---|---|---|
| iata | string | Three-letter IATA code | OurAirports |
| icao | string | Four-letter ICAO location indicator, empty when unassigned | OurAirports |
| name | string | Official airport name | OurAirports |
| city | string | Municipality served | OurAirports |
| country_iso | string | ISO 3166-1 alpha-2 country code | OurAirports |
| country_name | string | Country name | OurAirports |
| continent | string | Continent name | OurAirports |
| latitude | number | Decimal degrees, WGS84 | OurAirports |
| longitude | number | Decimal degrees, WGS84 | OurAirports |
| elevation_ft | number | Field elevation in feet above sea level | OurAirports |
| type | string | large_airport, medium_airport, small_airport, heliport, seaplane_base or closed | OurAirports |
| scheduled_service | boolean | Whether the field carries scheduled commercial service | OurAirports |
| runway_count | integer | Number of runways on record | Derived from OurAirports runways |
| longest_runway_ft | integer | Length of the longest runway, in feet | Derived from OurAirports runways |
| icao_prefix | string | First letter of the ICAO code, the region indicator | Derived |
| connections | integer | Nonstop route entries in the open route dataset touching this airport | Derived from OpenFlights |
| connection_rank | integer | Rank by that count, 1 is the most connected. Not a passenger figure | Derived |
| has_page | boolean | Whether flycodes.net publishes a detail page for this record | Derived |
| Column | Type | Meaning | Source |
|---|---|---|---|
| iata | string | Two-character IATA airline code | OpenFlights |
| icao | string | Three-letter ICAO airline code | OpenFlights |
| name | string | Carrier name | OpenFlights |
| callsign | string | Radio callsign used by air traffic control | OpenFlights |
| country | string | Home country, as spelled in the source | OpenFlights |
| active | boolean | The source active flag; it ages with the file | OpenFlights |
| route_entries | integer | Route rows carrying this code, codeshare listings included | Derived from OpenFlights |
| route_rank | integer | Rank by that count, 1 is the largest | Derived |
Licence and attribution
The airport data derives from OurAirports, which is public domain, and is published here under CC0 1.0. The airline and route data derives from OpenFlights and is published under the Open Database License (ODbL) 1.0, the licence the source itself carries; if you redistribute it, that licence travels with it. The attribution we ask for, in one line: Data from OurAirports and OpenFlights, compiled by FlyCodes (flycodes.net).
Use the data yourself
You can also read it record by record through the free JSON API, and every regeneration is listed in the changelog. How the derived fields are computed is written out on the methodology page.