NTSB finding · Environmental issues › Physical environment › Object/animal/substance

Cases
101
In the probable cause
59 (58%)
Fatal cases
3
NTSB code
03022055

NTSB has coded findings and defining events since 2008. Earlier cases used its older occurrence and cause codes, so they aren’t counted here.

When and where

In green, cases where NTSB made it part of the probable cause; in gray, a factor or other finding. Findings are coded with the final report, often a year or more after the event, so the latest years are incomplete.

Cases per year

2008In the probable causeFactor only2026
Cases with Debris/dirt/foreign object per year: 101 cases
20084
20095
20103
20114
20124
20135
201416
201510
20165
20179
20184
20194
20206
20216
20225
20231
20246
20253
20261
Query with SQL
duckdb -csv -c "SELECT year(c.\"eventDate\") AS year, count(DISTINCT f.case_mkey) AS cases,
    count(DISTINCT f.case_mkey) FILTER (WHERE f.\"inProbableCause\") AS in_probable_cause
  FROM 'https://openairdocs.org/data/latest/ntsb_findings.parquet' f JOIN 'https://openairdocs.org/data/latest/ntsb_case_detail.parquet' c ON c.\"mKey\" = f.case_mkey
  WHERE starts_with(f.\"findingCode\", '03022055') AND c.\"eventDate\" >= DATE '2000-01-01'
  GROUP BY 1
  ORDER BY 1"

Prints the counts as CSV. It reads the release’s Parquet files over HTTPS, so there’s nothing to download first. Install DuckDB to run it.

In the same cases

Query with SQL
duckdb -csv -c "WITH matched AS (SELECT DISTINCT case_mkey, aircrafts_position FROM 'https://openairdocs.org/data/latest/ntsb_findings.parquet' WHERE starts_with(\"findingCode\", '03022055'))
  SELECT * FROM (
  SELECT 'Defining event' AS kind, e.\"tier2Number\" AS code, max(e.\"eventTier2Name\") AS name, count(DISTINCT f.case_mkey) AS cases
  FROM matched f JOIN 'https://openairdocs.org/data/latest/ntsb_events.parquet' e ON e.case_mkey = f.case_mkey AND e.aircrafts_position = f.aircrafts_position AND e.\"isDefiningEvent\"
  WHERE e.\"tier2Number\" <> ''
  GROUP BY ALL
  UNION ALL
  SELECT 'Aircraft model', a.aircraft_model_code, any_value(concat_ws(' ', m.manufacturer, m.model)), count(DISTINCT f.case_mkey)
  FROM matched f JOIN 'https://openairdocs.org/data/latest/ntsb_aircrafts.parquet' a ON a.case_mkey = f.case_mkey AND a.position = f.aircrafts_position
  LEFT JOIN 'https://openairdocs.org/data/latest/faa_aircraft_model.parquet' m ON m.code = a.aircraft_model_code
  WHERE a.aircraft_model_code IS NOT NULL
  GROUP BY ALL
  UNION ALL
  SELECT 'Other finding', left(g.\"findingCode\", 8), max(g.\"tier4Name\"), count(DISTINCT g.case_mkey)
  FROM 'https://openairdocs.org/data/latest/ntsb_findings.parquet' g
  WHERE g.case_mkey IN (SELECT case_mkey FROM matched) AND NOT starts_with(g.\"findingCode\", '03022055') AND g.\"findingCode\" GLOB '[0-9][0-9]*'
  GROUP BY ALL
  )
  QUALIFY row_number() OVER (PARTITION BY kind ORDER BY cases DESC) <= 10
  ORDER BY kind, cases DESC"

Prints the counts as CSV. It reads the release’s Parquet files over HTTPS, so there’s nothing to download first. Install DuckDB to run it.

Newest cases · 101

NTSB WPR26LA187Accident · No injuriesClass 4 · LimitedFinal reportCirrus Design SR20 · Sedona, AZThe pilot’s inability to maintain directional control due to a plastic foreign object jammed in the rudder pedals, while landing with a gusting left crosswind.May 12, 2026 · N806DM · Substantial damageNTSB WPR26LA015Accident · No injuriesClass 4 · LimitedFinal reportCessna 172S · Lathrop, CAAn inflight collision with a bird.Oct 4, 2025 · N103VK · Substantial damageNTSB WPR25LA231Accident · No injuriesClass 4 · LimitedFinal reportGary Weaver CCK-1865 · Wahsatch, UTThe pilot’s inability to maintain directional control following a collision with a boulder during an off airport precautionary landing.Jul 11, 2025 · N817GD · Substantial damageNTSB WPR25LA093Accident · No injuriesClass 4 · LimitedFinal reportAirbus Helicopters EC 130 T2 · Moab, UTThe inflight collision with debris during takeoff.Feb 13, 2025 · N3WL · Substantial damageNTSB CEN25LA054Accident · No injuriesClass 3 · LimitedFinal reportAmerican AA-1B · Brenham, TXA partial loss of engine power due to an obstructed induction system from a mud dauber nest.Dec 1, 2024 · N6242L · Substantial damageNTSB WPR25LA047Accident · No injuriesClass 4 · LimitedFinal reportCessna A185F · Lewistown, MTThe pilot’s inadvertent impact with a rock during a landing on a grass strip.Nov 23, 2024 · N9533H · Substantial damageNTSB CEN25LA020Accident · No injuriesClass 4 · LimitedFinal reportStarship Enterprise · Addison, TXForeign object debris damage to the ventral stabilizer.Oct 17, 2024 · N903SC · Substantial damageNTSB CEN24LA239Accident · No injuriesClass 3 · LimitedFinal reportThrush S2R · Hebron, NDForeign object debris in the Negative Torque Sensing (NTS) system check valve, which impeded the flow of oil to the NTS system and the propeller governor (PG) reset piston, resulting in a total loss of engine power and an off-airport forced landing.…Jun 17, 2024 · N529KC · Substantial damageNTSB CEN24LA227Accident · Minor injuriesClass 4 · LimitedFinal reportBeech D55 · Colorado Springs, COThe deflated right main landing gear tire due to a sidewall puncture made by an unknown object, which led to the pilot’s loss of directional control and the landing gear collapse during landing roll.Jun 11, 2024 · N321N · Substantial damageNTSB ANC24LA040Accident · No injuriesClass 4 · LimitedFinal reportCessna 180H · Soldotna, AKThe pilot’s failure to recognize and avoid an obstacle on the runway environment during takeoff roll. Contributing was flat light conditions.Jun 1, 2024 · N91224 · Substantial damage
See all 101 cases
Query with SQL
duckdb -csv -c "SELECT c.\"ntsbNumber\", c.\"eventDate\", c.\"eventType\", c.\"eventCity\", c.\"eventStateOrRegion\", a.n_number, a.\"aircraftMake\", a.\"aircraftModel\", c.\"highestInjuryLevel\", c.\"totalFatal\", c.\"completionStatus\", c.report_url
  FROM 'https://openairdocs.org/data/latest/ntsb_case_detail.parquet' c LEFT JOIN 'https://openairdocs.org/data/latest/ntsb_aircrafts.parquet' a ON a.case_mkey = c.\"mKey\" AND a.position = 1
  WHERE c.\"mKey\" IN (SELECT f.case_mkey FROM 'https://openairdocs.org/data/latest/ntsb_findings.parquet' f WHERE starts_with(f.\"findingCode\", '03022055'))
  ORDER BY c.\"eventDate\" DESC, c.\"ntsbNumber\" DESC"

Prints the whole list as CSV. It reads the release’s Parquet files over HTTPS, so there’s nothing to download first. Install DuckDB to run it.