Wind sock

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

Cases
12
In the probable cause
3 (25%)
Fatal cases
0
NTSB code
03022030

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 Wind sock per year: 12 cases
20081
20091
20133
20161
20183
20192
20241
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\", '03022030') 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\", '03022030'))
  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\", '03022030') 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 · 12

NTSB WPR25LA068Accident · No injuriesClass 4 · LimitedFinal reportRemos Remos G-3/600 · Brawley, CAThe flight instructor’s lack of remedial action to the student pilot’s inadequate landing flare, which resulted in a hard landing and a loss of directional control.Dec 22, 2024 · N191DY · Substantial damageNTSB GAA19CA178Accident · No injuriesData collectionFinal reportPiper PA 12 · Mecosta, MIThe pilot's failure to maintain directional control during the landing roll, which resulted in impact with a windsock pole.Mar 23, 2019 · N2733M · Substantial damageNTSB GAA19CA122Accident · No injuriesData collectionFinal reportCessna 172 · Miami, FLThe student pilot's failure to control the airplane's speed and direction during the approach, which resulted in landing long, a runway excursion, and impact with a windsock.Jan 19, 2019 · N734AY · Substantial damageNTSB CEN18LA382Accident · Minor injuriesLimited investigationFinal reportCessna 206 · Sugar Land, TXFatigue failure of the No. 1 cylinder intake valve, which resulted in the loss of engine power.Sep 19, 2018 · N247F · Substantial damageNTSB GAA18CA367Accident · No injuriesData collectionFinal reportPiper PA 18 · Wasilla, AKThe pilot’s failure to maintain directional control during landing in gusting tailwind conditions.Jun 15, 2018 · N3764Z · Substantial damageNTSB GAA18CA146Accident · Minor injuriesData collectionFinal reportCessna 172 · Gatesvile, TXThe pilot’s failure to maintain directional control during initial climb in a gusty condition.Feb 28, 2018 · N1118F · Substantial damageNTSB GAA16CA415Accident · No injuriesData collectionFinal reportCessna 172 · Kissimmee, FLThe student pilot's failure to maintain directional control during takeoff.Jul 30, 2016 · N1688C · Substantial damageNTSB WPR13CA371Accident · No injuriesData collectionFinal reportCessna 172H · Metaline Falls, WAThe pilot's failure to maintain clearance from a windsock pole while taxiing.Aug 14, 2013 · N8160L · Substantial damageNTSB WPR13CA164Accident · No injuriesData collectionFinal reportPiper PA-30 · Fullerton, CAThe pilot receiving instruction’s failure to maintain airplane control during takeoff and the flight instructor’s delayed remedial action.Mar 23, 2013 · N7497Y · Substantial damageNTSB WPR13LA135Accident · Serious injuriesLimited investigationFinal reportSummit II · Quartzsite, AZThe noncertificated pilot’s failure to maintain aircraft control after encountering shifting wind, which resulted in collision with a windsock.Feb 25, 2013 · N8028X · Substantial damage
See all 12 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\", '03022030'))
  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.