NTSB finding section · Environmental issues › Task environment

Cases
36
In the probable cause
23 (64%)
Fatal cases
19
NTSB code
030420

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 Pressures/demands per year: 36 cases
20082
20093
20111
20131
20142
20154
20162
20174
20182
20193
20202
20211
20223
20231
20242
20263
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\", '030420') 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.

Subsections · 7

Query with SQL
duckdb -csv -c "SELECT left(f.\"findingCode\", 8) AS code, max(f.\"tier4Name\") AS name,
    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
  WHERE starts_with(f.\"findingCode\", '030420') AND f.\"findingCode\" GLOB '[0-9][0-9]*'
  GROUP BY 1
  ORDER BY cases DESC, code"

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\", '030420'))
  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\", '030420') 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 · 36

NTSB CEN26LA249Accident · No injuriesClass 4 · LimitedFinal reportCessna 150 · Ellsworth, KSThe pilot’s inadequate preflight fuel planning which resulted in a total loss of engine power due to fuel exhaustion. Contributing to the accident was the pilot’s self-induced pressure to complete the flight.Jul 10, 2026 · N3773J · Substantial damageNTSB CEN26LA145Accident · No injuriesClass 4 · LimitedFinal reportClassic Waco YMF · Galveston, TXThe biplane pilot’s failure to maintain an adequate visual lookout while taxiing, which included the failure to perform S-turns to compensate for limited forward visibility.Mar 24, 2026 · N43000 · 2 aircraft · Substantial damageNTSB WPR26LA083Accident · No injuriesClass 4 · LimitedFinal reportRobinson R44 · Parkman, WYThe pilots’ failure to maintain separation while conducting air work in a common operational area. Contributing to the accident was the pilots’ divided attention associated with the mission activity and unreliable radio communications.Jan 19, 2026 · N996NR · 2 aircraft · Substantial damageNTSB WPR24LA265Accident · Minor injuriesClass 3 · LimitedFinal reportBell 407 · Raft River, IDThe pilot’s misdiagnosis of an erroneous engine instrument indication and his subsequent decision to enter an autorotation, which resulted in a hard landing due to degraded visual cues and low ambient light conditions. Contributing to the accident were the…Aug 3, 2024 · N20BH · Substantial damageNTSB WPR24FA156Accident · 1 fatalClass 3 · FieldFinal reportExtra Flugzeugbau EA 300/L · Bandera, WAThe pilot’s decision to continue flight into icing conditions and inclement weather, which likely led to spatial disorientation when he attempted to divert from the planned course to the destination airport.May 19, 2024 · N22MW · Substantial damageNTSB DCA24FA017Accident · No injuriesClass 2 · FieldFinal reportTextron 510 · Houston, TXThe takeoff by the flight crew of N269AA, without a takeoff clearance, which resulted in a collision with N510HM that was landing on an intersecting runway. Contributing to the accident was the N269AA crew’s expectation bias and distraction.Oct 24, 2023 · N510HM · 2 aircraft · Substantial damageNTSB CEN23MA034Accident · 6 fatalClass 1 · MajorFinal reportBoeing B17 · Dallas, TXthe air boss’s and air show event organizer’s lack of an adequate, prebriefed aircraft separation plan for the air show performance, relying instead on the air boss’s real-time deconfliction directives and the see-and-avoid strategy for collision avoidance,…Nov 12, 2022 · N7227C · 2 aircraft · DestroyedNTSB ERA23FA048Accident · 1 fatalClass 3 · FieldFinal reportBeech A36 · Harlan, KYThe pilot’s visual flight rules flight into instrument meteorological conditions during an approach to land at an airport in mountainous terrain, which resulted in controlled flight into terrain. Contributing to the accident was the pilot’s hazardous…Nov 3, 2022 · N84R · DestroyedNTSB ERA22FA233Accident · 1 fatalClass 3 · FieldFinal reportCessna 140 · Wayne, NEThe pilot’s exceedance of the airplane’s critical angle of attack on final approach while conducting traditional short takeoff and landing operations in gusting wind conditions, which resulted in an aerodynamic stall and spin from which the pilot could not…May 20, 2022 · N76075 · DestroyedNTSB CEN21LA336Accident · No injuriesClass 3 · LimitedFinal reportDriver RV-7 · Oshkosh, WIThe RV-8 pilot’s failure to account for the position of the RV-7 behind him during the landing roll in a staggered landing formation, which resulted in a ground collision of the two airplanes. Contributing to the accident was the self-induced pressure created…Jul 23, 2021 · N977RV · 2 aircraft · Substantial damage
See all 36 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\", '030420'))
  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.