Data sources & provenance
AeroScope operates no receivers and holds no private feed. Every data point traces back to a public source, all of them listed here so results can be independently checked.
Where every data point comes from
AeroScope holds no private feed and operates no receivers of its own. Everything it shows is derived from public sources, listed here so any result can be traced back to its origin and independently checked.
Aircraft positions
| Source | Provides | Nature | Status |
|---|---|---|---|
| adsb.fi | Live ADS-B positions and velocity | Volunteer receiver network, open data | Active |
| adsb.lol | Live ADS-B positions, including unfiltered traffic | Volunteer receiver network, open data | Active |
| OpenSky Network | ADS-B state vectors, used when the community feeds rate-limit us | Research network, OAuth2 client | Active |
| airplanes.live | Live ADS-B positions | Volunteer receiver network | Disabled pending their permission |
| ADS-B Exchange (RapidAPI) | Unfiltered traffic, satellite-fed positions | Commercial API | Not enabled, needs a paid key |
Aircraft identity and messages
| Source | Provides | Nature | Status |
|---|---|---|---|
| hexdb.io | ICAO 24-bit address to registration, type and operator | Registry lookup | Active |
| adsbdb | Registration, operator and route lookups | Open registry API | Active |
| airframes.io | ACARS and VDL message feed | Volunteer network | Active |
| Planespotters.net | Aircraft photographs, credited to the photographer | Public API | Active |
| OurAirports | 11,635 airports with runway geometry and elevation | Public domain dataset | Active |
Weather, hazards and the world around the aircraft
| Source | Provides | Nature | Status |
|---|---|---|---|
| aviationweather.gov (NOAA AWC) | METAR, TAF and international SIGMETs | Government open data | Active |
| RainViewer | Worldwide precipitation radar composite | Aggregated national radar networks | Active |
| NASA GIBS | Infrared cloud imagery from GOES East, GOES West and Himawari | Government open data | Active, no Meteosat coverage |
| NASA FIRMS | Active fire detections from VIIRS, refreshed every 30 minutes | Government open data | Active |
| USGS | Earthquakes of magnitude 2.5 and above | Government open data | Active |
| NOAA SWPC | Space weather storm scales, read alongside GNSS accuracy drops | Government open data | Active |
| CelesTrak | Orbital elements for GNSS constellations and crewed stations | Public catalogue | Active |
Ships
| Source | Provides | Nature | Status |
|---|---|---|---|
| aisstream.io | Live AIS vessel positions near coasts worldwide | Community AIS network | Active |
| Kystdatahuset | AIS around Norway | Norwegian open data (NLOD) | Active |
| Fintraffic Digitraffic | AIS in the Baltic | Finnish open data (CC BY 4.0) | Active |
Maps
| Source | Provides | Nature | Status |
|---|---|---|---|
| OpenFreeMap and OpenMapTiles | Standard, light and dark basemaps | Open tiles from OpenStreetMap data | Active |
| Esri | Satellite imagery and place labels | Commercial tiles, free tier | Active |
| OpenTopoMap | Terrain basemap | Open tiles from OpenStreetMap data | Active |
Measured here, not fetched
| Layer | How it is derived |
|---|---|
| GNSS interference map | The share of aircraft in each hexagon reporting degraded navigation accuracy (NIC below 7 or NACp below 8), aggregated into H3 resolution-4 cells (roughly 22 km per edge) and counted from the same ADS-B messages shown on the map. A hexagon needs at least 8 distinct aircraft in that hour before it is shown, and completed hourly counts are kept for 7 days. ADS-B version 0 transmitters, MLAT/TIS-B/ADS-R positions, gliders and UAVs, and SIL 0 installations are excluded, since those read as "degraded" without any interference. |
How raw feeds become one picture
| De-duplication | The same airframe reported by several networks is merged on its ICAO 24-bit address, so one aircraft is one track, not three dots. |
|---|---|
| Position refresh | Positions refresh on a fast loop of roughly 7 seconds; the client dead-reckons between fixes so motion is continuous rather than jumping. |
| Enrichment cadence | The heavier enrichment-and-detection pipeline runs on its own cycle of about 12 seconds, so analysis never blocks the map. |
| Registry enrichment | Type, operator and wake category are attached by hex lookup where the registry has a record; fields are left blank rather than guessed when it does not. |
| Conflict handling | Where feeds disagree, the most recent well-formed message wins, and self-inconsistent messages are flagged by the integrity checks rather than silently averaged. |
| Polling courtesy | Each upstream is throttled independently: at least 1.1 seconds between requests to adsb.fi (which documents a 1 request/second limit), 3 seconds to adsb.lol, and 5 seconds to OpenSky, so no single source ever gets hammered. |
Credit where it is due
AeroScope exists because thousands of volunteers run ADS-B receivers and publish the results openly. Each upstream network sets its own terms of use; we consume public endpoints at a modest polling rate and cache aggressively to limit load on them. If you operate one of these networks and want your attribution changed or your feed removed, contact us and we will act on it.
Our own derived work, the AeroScope ADS-B Anomaly Benchmark, is published under CC-BY 4.0 so it can be reused and cited freely.