You look up a tail number on a flight tracker and it isn't there. Or a private jet takes off and simply never appears on the map. Aircraft don't vanish by accident — there's a specific set of reasons a plane can be flying perfectly normally and still be invisible to the public. Some are technical, and some are deliberate privacy programs with names like LADD and PIA. Here's why some planes don't show up on flight trackers.
First, the boring reason: coverage
Before the privacy stuff, the most common reason a plane isn't on a tracker is simply that no receiver can hear it. ADS-B tracking depends on a ground (or satellite) receiver being in radio range, so aircraft over oceans, deserts, and sparsely covered regions can drop off the map with no intent to hide. If a plane disappears mid-ocean, that's usually coverage, not secrecy. The deliberate cases are more interesting.
![]()
LADD: asking to be left off the feed
LADD stands for Limiting Aircraft Data Displayed — an FAA program (the successor to the older BARR) that lets an aircraft's owner or operator request that their flights be withheld from the public data the FAA distributes. Trackers that source that FAA feed honor the request, so a LADD-listed aircraft won't show up on them even though it's flying normally and talking to ATC. It's an opt-out for the operator's displayed data, not a change to how the aircraft flies.
The important nuance: LADD suppresses display through FAA-derived data. It doesn't stop the aircraft's transponder from transmitting, which is why a LADD aircraft can still be picked up by independent ADS-B receivers that don't rely on the FAA feed.
PIA: flying under a pseudonym
PIA — Privacy ICAO Address — is the cleverer one. Every aircraft broadcasts a permanent ICAO 24-bit hex address on ADS-B, and that hex is normally traceable straight back to the registration and owner. PIA lets eligible US operators broadcast a temporary, alternate hex address that isn't linked to them in public registries. The aircraft still transmits its position (so it's just as safe and visible to ATC and collision-avoidance systems) — it's simply pseudonymous. You can see the plane; you just can't tie the hex to a name.
For anyone doing lookups, PIA is why an active, visible aircraft can return "unknown": the temporary address isn't in the registry. In SkyLink API terms, an ICAO24 lookup on a PIA address comes back with found: false — not a bug, just an aircraft flying under a privacy address.
![]()
Blocklists (and why "blocked" is relative)
Separately from the FAA programs, the big consumer trackers maintain their own blocklists: an owner can ask Flightradar24 or FlightAware directly not to display their aircraft, and those companies comply as a matter of policy. Military and sensitive-mission aircraft are frequently filtered too, or simply fly with the transponder off.
But here's the catch that surprises people: "blocked" only means blocked on trackers that choose to comply. The aircraft is still broadcasting ADS-B (unless the transponder is off entirely), so unfiltered feeds — services like ADSB Exchange and adsb.fi that deliberately don't honor blocklists — will still show it. Blocking hides the display, not the transmission. Only two things truly remove a plane from the picture: turning the transponder off (rare, and a safety trade-off), or PIA changing the identity the broadcast carries.
The developer's takeaway
If you build on flight data, three of these behave very differently in your code:
- Coverage gaps → the aircraft is simply absent from the feed; expect and handle sparse data.
- LADD / tracker blocks → absent from compliant sources, present on unfiltered ones. Which you see depends on where your data comes from.
- PIA → present and broadcasting, but the hex won't resolve to an owner — your aircraft lookup returns
found: false, and that's the correct, expected answer.
None of this is a data-quality problem to "fix" — it's the privacy layer of a public broadcast system working as designed. For the mechanics underneath, see how Flightradar24 actually works and what free flight-tracking APIs really give you.
SkyLink API gives you a free tier of 1,000 requests/month across ADS-B tracking and aircraft lookup, with paid plans from $19/mo for production. It's available through the free trial — sign up, grab a key, and build on an honest view of what's in the sky.