NTSB finding · Environmental issues › Operating environment › Airport facilities/design

Cases
34
In the probable cause
21 (62%)
Fatal cases
1
NTSB code
03017037

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 Runway/landing area length per year: 34 cases
200813
20092
20105
20123
20131
20142
20152
20171
20222
20231
20241
20251
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\", '03017037') 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\", '03017037'))
  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\", '03017037') 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 · 34

NTSB CEN25LA267Accident · Minor injuriesClass 4 · LimitedFinal reportAir Tractor AT-402B · Wyoming, ILThe pilot’s failure to attain a positive climb rate due to airplane’s improper takeoff configuration.Jul 15, 2025 · N647RA · Substantial damageNTSB CEN24LA180Accident · No injuriesClass 4 · LimitedFinal reportCessna 182 · Davis, OKThe pilot’s failure to maintain proper airspeed on approach which resulted in an extended touchdown, bounced landing, and runway overrun.May 10, 2024 · N37TJ · Substantial damageNTSB WPR24LA011Accident · Serious injuriesClass 4 · LimitedFinal reportCameron Balloons US A-105 · Albuquerque, NMA hard landing to a short field, due to windy conditions and a lack of suitable alternate landing areas, which resulted in a passenger sustaining a broken ankle.Oct 8, 2023 · N105BM · No damageNTSB CEN22LA411Accident · No injuriesClass 4 · LimitedFinal reportCessna T210L · Atoka, OKThe pilot's failure to land the airplane within the desired touchdown zone, which resulted in a long landing and collision with a fence.Aug 24, 2022 · N2317G · Substantial damageNTSB CEN22LA293Accident · No injuriesClass 4 · LimitedFinal reportCessna 172G · Bynum, TXThe pilot was not able to stop the airplane on the remaining runway after an aborted takeoff, which resulted in a runway excursion and the airplane impacting a fence.Jun 17, 2022 · N2975U · Substantial damageNTSB WPR17LA096Accident · Minor injuriesLimited investigationFinal reportPiper PA 32-260 · Mukilteo, WAThe improper maintenance of the carburetor, which resulted in a stuck float and a partial loss of engine power during takeoff.May 2, 2017 · N3457W · Substantial damageNTSB CEN15LA418Accident · Minor injuriesLimited investigationFinal reportCessna 421B · Platteville, WIThe partial loss of right engine power for undetermined reasons with insufficient runway remaining for the aborted takeoff.Sep 21, 2015 · N813CA · Substantial damageNTSB ERA15CA152Accident · No injuriesData collectionFinal reportCessna 182L · Waycross, GAThe pilot's failure to use any airport guidance while taxiing, which resulted in geographic disorientation and a takeoff attempt from an inadequate length and unsuitable surface.Mar 10, 2015 · N42667 · Substantial damageNTSB ANC14CA037Accident · No injuriesData collectionFinal reportCessna 170B · Fairbanks, AKThe airplane's encounter with a tailwind during takeoff from a short, narrow airstrip, which resulted in a loss of lift and collision with brush and small trees.Jun 4, 2014 · N3442D · Substantial damageNTSB CEN14CA330Accident · No injuriesData collectionFinal reportSilvaire Luscombe 8E · Douglass, KSThe pilot's excessive use of wheel brakes during landing, which resulted in a nose-over. Contributing to the accident were high winds and a short, downhill sloped runway.May 19, 2014 · N2649K · Substantial damage
See all 34 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\", '03017037'))
  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.