PlaneQuery.comSQL + LLM access to ADS-B and flight data since 2024-01-01

Latest ADS-B: Unavailable · 59.8B messages · 2.3TB | Latest flights: Unavailable · 139.3M flights | Preview: 1,000 rows / 1 GB scanned limit per queryData provided by ADSB.lol under Open Database License

Tables

adsb_messages: 58 columns; partitioned by hours(time)

Columns are based on readsb. Aircraft registration information comes from tar1090-db.

ColumnTypeComment
timetimestamp (not null)UTC millisecond precision
icaostring (not null)lowercase hex e.g a835af
callsignstring
registrationstringAircraft tail number e.g N628TS
aircraft_typestringAircraft model/type e.g A319
latdouble (not null)Latitude in decimal degrees
londouble (not null)Longitude in decimal degrees
radius_of_containment_mintPosition uncertainty (meters), derived from NIC
on_groundbooleanon-ground bit in ADS-B message
baro_altitude_ftintBarometric altitude (feet)
geom_altitude_ftintGeometric altitude (GNSS/WGS84, feet)
baro_rate_fpmintVertical rate from barometric altitude (ft/min)
geom_rate_fpmintVertical rate from geometric altitude (ft/min)
ground_speed_ktfloatGround speed (knots)
indicated_airspeed_ktfloatIndicated airspeed (knots)
true_airspeed_ktfloatTrue airspeed (knots)
machfloatMach number
track_degfloatdegrees, true north)
track_rate_deg_sfloatRate of change of track (deg/sec)
roll_degfloatAircraft roll angle (degrees)
magnetic_heading_degfloatHeading relative to magnetic north
true_heading_degfloatHeading relative to true north
nav_qnh_hpafloatAltimeter setting (QNH/QFE) in hPa
nav_altitude_mcp_ftintSelected altitude from MCP/autopilot (feet)
nav_altitude_fms_ftintSelected altitude from Flight Management System (FMS) (feet)
nav_heading_degfloatSelected heading (typically magnetic)
nav_modesarray<string>Active autopilot/flight modes (e.g. autopilot, vnav, lnav)
squawkstringMode A squawk code (4 octal digits)
emergencystringEmergency status (e.g. none, general, hijack, etc.)
alertbooleanADS-B alert flag
spibooleanSpecial Position Identification flag
versionintADS-B version (0, 1, 2)
nicintNavigation Integrity Category (position integrity)
nic_barointNIC for barometric altitude
nac_pintNavigation Accuracy Category (position)
nac_vintNavigation Accuracy Category (velocity)
silintSource Integrity Level
sil_typestringSIL interpretation (perhour / persample)
gvaintGeometric Vertical Accuracy
sdaintSystem Design Assurance
typestringMessage/data source type (adsb_icao, mlat, tisb, etc.)
flagsintBitmask flags (e.g. stale position, new flight leg, etc.)
rssi_dbfsfloatSignal strength (dBFS, negative values)
sourcestringData source/origin (e.g. ADSB, MLAT, TIS-B)
no_reg_databooleanTrue if no registration data is available
piabooleanPrivacy ICAO Address flag
laddbooleanFAA LADD (blocked aircraft) flag
militarybooleanMilitary aircraft flag
interestingbooleanFlag for notable/interesting aircraft
ownerstringAircraft owner (external enrichment)
aircraft_descriptionstringHuman-readable aircraft description
categorystringADS-B emitter category (A0–D7)
wind_direction_degfloatEstimated wind direction (degrees)
wind_speed_ktfloatEstimated wind speed (knots)
outside_air_temp_cfloatOutside air temperature (°C)
total_air_temp_cfloatTotal air temperature (°C)
mlatarray<string>Fields derived from MLAT calculations
tisbarray<string>Fields derived from TIS-B data
flights: 15 columns; partitioned by day(takeoff_time)

"takeoff_airport_ident" and "landing_airport_ident" use airport identifiers from the "ident" column in "airports.csv", sourced from OurAirports.com. Flights are derived from ADS-B data and may contain errors in areas with poor ADS-B coverage.

ColumnType
icaostring
callsignstring
registrationstring
takeoff_timetimestamp
takeoff_airport_identstring
landing_timetimestamp
landing_airport_identstring
piaboolean
laddboolean
militaryboolean
interestingboolean
aircraft_typestring
ownerstring
aircraft_descriptionstring
categorystring

Get Database Access and MCP Access

Premium subscribers can access the data directly from their preferred environment, such as Python, and through the PlaneQuery MCP server in their preferred interface, including Codex and Claude. Questions? Send email to contact@planequery.com

Python Quickstart

import boto3
import awswrangler as wr

session = boto3.Session(
    aws_access_key_id="key_id",
    aws_secret_access_key="secret_key",
    region_name="us-east-2",
)

sql = """
    SELECT *
    FROM adsb_messages
    WHERE time >= TIMESTAMP '2025-04-01 07:00:00'
      AND time <  TIMESTAMP '2025-04-01 08:00:00'
"""

df = wr.athena.read_sql_query(
    sql=sql,
    database='planequery_lake_prod',
    workgroup='workgroup',
    boto3_session=session,
    ctas_approach=False,
)

MCP Quickstart

# Codex
codex mcp add planequery -- npx -y mcp-remote "https://planequery.com/api/mcp" 3334

# Claude Desktop
claude_desktop_config.json:

{
  "mcpServers": {
    "planequery": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://planequery.com/api/mcp", "3334"]
    }
  }
}

Comparison to other sites

ProviderSQL interfaceHigh Quality Flight DataUncensoredClick to Buy
FlightAwareNoYesNoYes
Flightradar24NoYesNoYes
ADSB ExchangeNoNoYesNo. Pricing unknown.
OpenSkyYesNoYesNo. Access granted to academia. Commercial access and pricing unknown or unavailable.
PlaneQuery.comYesYesYesYes