Next free-source hunt
We check for new free data every weekday.
Datasets / Transport & Shipping
ourairports.com/

OurAirports open airport data

Freeauth: noneCustom#transport-shipping#geospatial#historical-data#flows#infrastructure✓ verified Nov 1, 2026

OurAirports open airport data

OurAirports publishes worldwide airport, runway, radio-frequency, navaid, country and region data as UTF-8 CSV files. Airport rows include persistent identifiers, facility type, name, coordinates, elevation, region codes, municipality, scheduled-service status and ICAO, IATA, GPS or local codes; no key is required.

Coverage

The worldwide airport file fetched on 2026-11-01 contained 86,329 records across 246 country codes, including 4,338 marked as having scheduled service. OurAirports updates the downloadable dumps nightly; the provider does not publish an archive start date on the download page.

Verdict

A lightweight global network and infrastructure reference for joining airport codes to locations, facility types, runways, navaids and scheduled-service flags. It can support route, catchment and capacity-context enrichment, but it is a community-maintained directory rather than an operational authority. Airport status, codes and facilities can be incomplete or stale, and the provider disclaims accuracy and fitness. Treat the nightly file as a changing snapshot and retain the retrieval date.

Get the free weekly email

Free weekly email of newly verified free data. Unsubscribe by emailing us.

Use in your agent

Load the worldwide OurAirports CSV into Parquet. Checked against the provider's documentation on Nov 1, 2026.

Raw skill file (/skills/ourairports-open-data.md)Also in our MCP server: call get_ingestion_skill with {"slug": "ourairports-open-data"}.

Access

  • No account or key. The worldwide airports CSV is a public download hosted from the provider's GitHub Pages repository.
  • Related runway, frequency, navaid, country and region CSV files use documented join keys.

Request

bash
curl -O 'https://davidmegginson.github.io/ourairports-data/airports.csv'

Format

UTF-8 CSV with airport ID and ident, type, name, latitude, longitude, elevation, continent, country and region codes, municipality, scheduled-service flag, airport codes and reference links.

Load into pandas and Parquet

Needs Python 3 with requests, pandas and pyarrow.

python
"""Worldwide OurAirports airport dump -> pandas -> Parquet."""
import io
import requests
import pandas as pd

URL = "https://davidmegginson.github.io/ourairports-data/airports.csv"
r = requests.get(URL, timeout=120)
r.raise_for_status()
df = pd.read_csv(io.BytesIO(r.content), low_memory=False)
df.to_parquet("ourairports_airports.parquet", index=False)
print(len(df), "airports", df["iso_country"].nunique(), "country codes",
      int((df["scheduled_service"] == "yes").sum()), "with scheduled service")

Run by us on 2026-11-01 (python 3.13.5 | pandas 3.1.0 | pyarrow 26.0.0 | requests 2.34.2). Result: 86329 airports 246 country codes 4338 with scheduled service

Limits

  • Download rate limit: Not stated.
  • The checked airports.csv file was about 12.8 MB.
  • The download page states that files update nightly.

Quirks

  • Use ident as the external join key; id is the provider's persistent internal integer key.
  • iso_region joins to regions.csv, while iso_country joins to countries.csv.
  • Facility type and scheduled_service describe the directory's current classification, not live operating status.
  • CSV text is UTF-8 and includes non-Latin scripts.

Terms and attribution

  • OurAirports releases all downloadable data to the public domain.
  • Credit is appreciated but not required.
  • The provider gives no warranty of accuracy or fitness for use.

Sources

Information and education only. Not financial, investment, legal or tax advice. Listings can be inaccurate, incomplete or out of date and are provided "as is". Free tiers, limits and licenses belong to each provider and can change, so check the provider's own terms before you rely on them. Terms & Disclaimer