NTSB investigations
53,700 cases where the phase of flight was Landing.
Cases, newest first
Query with SQL
duckdb -csv -c "WITH phase_names(main, name) AS (VALUES (100, 'Prior to flight'), (150, 'Standing'), (200, 'Pushback/towing'), (250, 'Taxi'), (300, 'Takeoff'), (350, 'Initial climb'), (400, 'Enroute'), (450, 'Maneuvering'), (500, 'Approach'), (550, 'Landing'), (600, 'Emergency descent'), (650, 'Uncontrolled descent'), (700, 'Post-impact'), (750, 'After landing'), (800, 'Other'), (990, 'Unknown')),
crosswalk(code, main, name) AS (VALUES (500, 150, 'Standing'), (501, 150, 'Standing - pre-flight'), (502, 150, 'Standing - starting engine(s)'), (503, 150, 'Standing - engine(s) operating'), (504, 150, 'Standing - engine(s) not operating'), (505, 150, 'Standing - idling rotors'), (510, 250, 'Taxi'), (511, 200, 'Taxi - pushback/tow'), (512, 250, 'Taxi - to takeoff'), (513, 250, 'Taxi - from landing'), (514, 250, 'Taxi - aerial'), (520, 300, 'Takeoff'), (521, 300, 'Takeoff - roll/run'), (522, 350, 'Takeoff - initial climb'), (523, 300, 'Takeoff - aborted'), (530, 400, 'Climb'), (531, 400, 'Climb - to cruise'), (540, 400, 'Cruise'), (541, 400, 'Cruise - normal'), (542, 400, 'Maneuvering - holding (IFR)'), (550, 400, 'Descent'), (551, 400, 'Descent - normal'), (552, 600, 'Descent - emergency'), (553, 650, 'Descent - uncontrolled'), (560, 500, 'Approach'), (561, 500, 'Approach - VFR pattern - downwind'), (562, 500, 'Approach - VFR pattern - base turn'), (563, 500, 'Approach - VFR pattern - base leg/base to final'), (564, 500, 'Approach - VFR pattern - final approach'), (565, 500, 'Go-around (VFR)'), (566, 500, 'Approach - IAF to FAF/outer marker (IFR)'), (567, 500, 'Approach - FAF/outer marker to threshold (IFR)'), (568, 500, 'Circling (IFR)'), (569, 500, 'Missed approach (IFR)'), (570, 550, 'Landing'), (571, 550, 'Landing - flare/touchdown'), (572, 550, 'Landing - roll'), (573, 550, 'Landing - aborted'), (574, 550, 'Emergency landing'), (575, 550, 'Emergency landing after takeoff'), (576, 600, 'Emergency descent/landing'), (580, 450, 'Maneuvering'), (581, 450, 'Maneuvering - aerial application'), (582, 450, 'Maneuvering - turn to reverse direction'), (583, 450, 'Maneuvering - turn to landing area (emergency)'), (590, 450, 'Hover'), (591, 450, 'Hover - in ground effect'), (592, 450, 'Hover - out of ground effect'), (600, 800, 'Other'), (610, 990, 'Unknown')),
current_codes AS (
SELECT e.case_mkey, TRY_CAST(e.\"tier1Number\" AS INTEGER) AS code,
row_number() OVER (PARTITION BY e.case_mkey ORDER BY coalesce(e.\"isDefiningEvent\", false) DESC, e.position) AS n
FROM 'https://openairdocs.org/data/latest/ntsb_events.parquet' e
WHERE e.aircrafts_position = 1 AND e.\"tier1Number\" GLOB '[1-9][0-9]*'
AND (e.\"isDefiningEvent\" OR e.case_mkey IN (SELECT \"mKey\" FROM 'https://openairdocs.org/data/latest/ntsb_case_detail.parquet' WHERE \"isPre1982\"))
),
phases AS (
SELECT case_mkey, 'current' AS scheme, code, CASE WHEN code >= 990 THEN 990 ELSE code // 50 * 50 END AS main
FROM current_codes WHERE n = 1
UNION ALL
SELECT o.case_mkey, 'older', o.\"phaseOfFlightCode\", w.main
FROM 'https://openairdocs.org/data/latest/ntsb_occurrences.parquet' o JOIN crosswalk w ON w.code = o.\"phaseOfFlightCode\"
WHERE o.aircrafts_position = 1 AND o.\"occurrenceNumber\" = 1 AND o.case_mkey NOT IN (SELECT case_mkey FROM current_codes)
),
case_phases AS (
SELECT p.*, c.\"eventDate\", c.\"highestInjuryLevel\" = 'Fatal' AS fatal, a.aircraft_model_code
FROM phases p JOIN 'https://openairdocs.org/data/latest/ntsb_case_detail.parquet' c ON c.\"mKey\" = p.case_mkey
LEFT JOIN 'https://openairdocs.org/data/latest/ntsb_aircrafts.parquet' a ON a.case_mkey = p.case_mkey AND a.position = 1
WHERE c.\"eventDate\" >= DATE '1962-01-01' AND p.main IN (SELECT main FROM phase_names)
)
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 case_mkey FROM case_phases WHERE main = 550)
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.
WITH phase_names(main, name) AS (VALUES (100, 'Prior to flight'), (150, 'Standing'), (200, 'Pushback/towing'), (250, 'Taxi'), (300, 'Takeoff'), (350, 'Initial climb'), (400, 'Enroute'), (450, 'Maneuvering'), (500, 'Approach'), (550, 'Landing'), (600, 'Emergency descent'), (650, 'Uncontrolled descent'), (700, 'Post-impact'), (750, 'After landing'), (800, 'Other'), (990, 'Unknown')),
crosswalk(code, main, name) AS (VALUES (500, 150, 'Standing'), (501, 150, 'Standing - pre-flight'), (502, 150, 'Standing - starting engine(s)'), (503, 150, 'Standing - engine(s) operating'), (504, 150, 'Standing - engine(s) not operating'), (505, 150, 'Standing - idling rotors'), (510, 250, 'Taxi'), (511, 200, 'Taxi - pushback/tow'), (512, 250, 'Taxi - to takeoff'), (513, 250, 'Taxi - from landing'), (514, 250, 'Taxi - aerial'), (520, 300, 'Takeoff'), (521, 300, 'Takeoff - roll/run'), (522, 350, 'Takeoff - initial climb'), (523, 300, 'Takeoff - aborted'), (530, 400, 'Climb'), (531, 400, 'Climb - to cruise'), (540, 400, 'Cruise'), (541, 400, 'Cruise - normal'), (542, 400, 'Maneuvering - holding (IFR)'), (550, 400, 'Descent'), (551, 400, 'Descent - normal'), (552, 600, 'Descent - emergency'), (553, 650, 'Descent - uncontrolled'), (560, 500, 'Approach'), (561, 500, 'Approach - VFR pattern - downwind'), (562, 500, 'Approach - VFR pattern - base turn'), (563, 500, 'Approach - VFR pattern - base leg/base to final'), (564, 500, 'Approach - VFR pattern - final approach'), (565, 500, 'Go-around (VFR)'), (566, 500, 'Approach - IAF to FAF/outer marker (IFR)'), (567, 500, 'Approach - FAF/outer marker to threshold (IFR)'), (568, 500, 'Circling (IFR)'), (569, 500, 'Missed approach (IFR)'), (570, 550, 'Landing'), (571, 550, 'Landing - flare/touchdown'), (572, 550, 'Landing - roll'), (573, 550, 'Landing - aborted'), (574, 550, 'Emergency landing'), (575, 550, 'Emergency landing after takeoff'), (576, 600, 'Emergency descent/landing'), (580, 450, 'Maneuvering'), (581, 450, 'Maneuvering - aerial application'), (582, 450, 'Maneuvering - turn to reverse direction'), (583, 450, 'Maneuvering - turn to landing area (emergency)'), (590, 450, 'Hover'), (591, 450, 'Hover - in ground effect'), (592, 450, 'Hover - out of ground effect'), (600, 800, 'Other'), (610, 990, 'Unknown')),
current_codes AS (
SELECT e.case_mkey, TRY_CAST(e."tier1Number" AS INTEGER) AS code,
row_number() OVER (PARTITION BY e.case_mkey ORDER BY coalesce(e."isDefiningEvent", false) DESC, e.position) AS n
FROM 'https://openairdocs.org/data/latest/ntsb_events.parquet' e
WHERE e.aircrafts_position = 1 AND e."tier1Number" GLOB '[1-9][0-9]*'
AND (e."isDefiningEvent" OR e.case_mkey IN (SELECT "mKey" FROM 'https://openairdocs.org/data/latest/ntsb_case_detail.parquet' WHERE "isPre1982"))
),
phases AS (
SELECT case_mkey, 'current' AS scheme, code, CASE WHEN code >= 990 THEN 990 ELSE code // 50 * 50 END AS main
FROM current_codes WHERE n = 1
UNION ALL
SELECT o.case_mkey, 'older', o."phaseOfFlightCode", w.main
FROM 'https://openairdocs.org/data/latest/ntsb_occurrences.parquet' o JOIN crosswalk w ON w.code = o."phaseOfFlightCode"
WHERE o.aircrafts_position = 1 AND o."occurrenceNumber" = 1 AND o.case_mkey NOT IN (SELECT case_mkey FROM current_codes)
),
case_phases AS (
SELECT p.*, c."eventDate", c."highestInjuryLevel" = 'Fatal' AS fatal, a.aircraft_model_code
FROM phases p JOIN 'https://openairdocs.org/data/latest/ntsb_case_detail.parquet' c ON c."mKey" = p.case_mkey
LEFT JOIN 'https://openairdocs.org/data/latest/ntsb_aircrafts.parquet' a ON a.case_mkey = p.case_mkey AND a.position = 1
WHERE c."eventDate" >= DATE '1962-01-01' AND p.main IN (SELECT main FROM phase_names)
)
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 case_mkey FROM case_phases WHERE main = 550)
ORDER BY c."eventDate" DESC, c."ntsbNumber" DESCRun it at the DuckDB prompt, or in any tool that reads Parquet over HTTPS. More ways to query the release are on Use the data.
NTSB WPR25LA098Accident · No injuriesClass 4 · LimitedFinal reportCessna 172 · Oxnard, CAThe student pilot’s failure to maintain directional control during landing roll.NTSB DCA25WA127AccidentClass 5 · ForeignBombardier CL-600-2D24 · Toronto, CanadaNTSB ERA25LA116Accident · No injuriesClass 3 · LimitedPreliminary reportMackey Property Holdings Sparker · Asheboro, NCOn February 11, 2025, about 0635 eastern standard time, an experimental amateur-built Sparker, N769DM, was substantially damaged when it was involved in an accident near Asheboro, North Carolina. The pilot was not injured. The airplane was operated as a Title…NTSB WPR25FA088Accident · 1 fatalClass 2 · FieldPreliminary reportGates Learjet 35A · Scottsdale, AZOn February 10, 2025, about 1438 mountain standard time, a Gates Learjet 35A, was substantially damaged when it was involved in an accident near Scottsdale, Arizona. The captain was fatally injured, the first officer (FO) and one passenger were seriously…NTSB GAA25WA093AccidentClass 5 · ForeignCessna 172 · Eichstaff, GermanyNTSB ERA25LA112Accident · No injuriesClass 4 · LimitedFinal reportCessna 172 · Rock Hill, SCThe student pilot’s failure to maintain control of the airplane during an aborded crosswind landing.NTSB CEN25LA095Accident · No injuriesClass 4 · LimitedFinal reportCessna 172S · Waco, TXThe student pilot’s inadequate landing flare that led to a bounced landing, and her improper pitch control during the attempted recovery that resulted in a nose down pitch attitude upon the second touchdown.NTSB CEN25LA092Accident · No injuriesClass 4 · LimitedFinal reportCessna 140 · Llano, TXThe flight instructor’s failure to maintain directional control during the landing roll, that resulted in a ground loop, and a susbquent runway excursion.NTSB ERA25LA109Accident · Serious injuriesClass 4 · LimitedFinal reportNear William J RV-7A · Weirsdale, FLThe pilot’s improper landing flare, which resulted in a hard, bounced landing and subsequent nose over.NTSB ERA25LA118Accident · No injuriesClass 4 · LimitedFinal reportCessna 172 · Kennesaw, GAThe student pilot’s failure to maintain an appropriate glide path and the flight instructor’s inadequate monitoring of the landing approach, which resulted in the airplane contacting the ground short of the runway.NTSB DCA25WA125OccurrenceClass 5 · ForeignBoeing 737 · Kano, NigeriaNTSB CEN25LA089Accident · Minor injuriesClass 4 · LimitedFinal reportLuscombe 8E · Brush, COThe failure of the left main landing gear forward strut.NTSB WPR25LA083Accident · No injuriesClass 4 · LimitedFinal reportCharles E Spencer CCK-1865 · Vacaville, CAThe pilot’s failure to maintain directional control during the landing roll.NTSB CEN25LA087Accident · No injuriesClass 4 · LimitedFinal reportEpic E1000 · Arcola, TXThe pilot’s failure to extend the airplane’s landing gear before landing.NTSB GAA25WA166IncidentClass 5 · ForeignCessna 402 · Rosario, ArgentinaNTSB CEN25LA085Accident · No injuriesClass 4 · LimitedFinal reportPiper PA-28-235 · Mount Vernon, ILThe pilot's improper landing flare and subsequent improper recovery from a bounced landing, which resulted in a collision with terrain.NTSB ERA25LA099Accident · No injuriesClass 4 · LimitedFinal reportSocata TBM 700 · Wilmington, NCThe pilot’s improper landing flare, which resulted in a wing strike.NTSB GAA25WA065Accident · No injuriesClass 5 · ForeignCessna 425 · Höxter, GermanyNTSB ERA25LA105Accident · No injuriesClass 4 · LimitedFinal reportPiper PA44 · Fairfield, NJThe pilot’s failure to extend the landing gear prior to landing, which resulted in a gear up landing. Contributing to the accident was the flight instructor’s inadequate supervision of the pilot receiving instruction.NTSB GAA25WA184Accident · No injuriesClass 5 · ForeignCessna 510 · Bankstown Aerodrome, AustraliaNTSB GAA25WA145Accident · Minor injuriesClass 5 · ForeignSikorsky S-61N · Sédjè, BeninNTSB ERA25LA095Accident · No injuriesClass 4 · LimitedFinal reportPiper PA-28-161 · Newburyport, MAThe flight instructor’s delayed decision to initiate a go-around, which resulted in the airplane colliding with an obstacle during approach.NTSB DCA25LA085Accident · No injuriesClass 4 · LimitedFinal reportBoeing 767 · San Bernardino, CAEncounter with windshear during landing which resulted in a tailstrike.NTSB GAA25WA056Accident · 1 fatalClass 4 · ForeignCessna 525 · Ubatuba, BrazilNTSB ERA25LA101Accident · No injuriesClass 4 · LimitedFinal reportCessna 172N · Mayfield, KYThe student pilot’s improper landing flare, which resulted in a hard landing and nose landing gear collapse.NTSB ERA25LA091Accident · No injuriesClass 3 · LimitedFinal reportHelio HT-295 · Marion, OHThe failure of the right main landing gear spring due to intergranular stress-corrosion cracking that progressed into fatigue. Contributing to the accident was the improper rework of the spring at an undetermined time.NTSB ERA25LA090Accident · No injuriesClass 4 · LimitedFinal reportHinson Melvin J Velocity · Norfolk, VAA landing gear collapse during landing in gusty crosswind conditions.NTSB CEN25LA071Accident · No injuriesClass 4 · LimitedFinal reportCessna 150F · McKinney, TXThe flight instructor’s inadequate supervision and delayed remedial action and the student pilot’s failure to maintain a proper landing flare, which resulted in a nose down impact with the runway.NTSB CEN25LA069Accident · No injuriesClass 3 · LimitedFinal reportCirrus Design SF50 · Spearfish, SDThe pilot’s failure to land on the centerline of the snow-covered runway at night, which resulted in the left wing impacting a snowbank, a subsequent loss of directional control, and runway excursion.NTSB GAA25WA055Accident · Serious injuriesClass 5 · ForeignPiper PA18 · Fassberg, GermanyNTSB WPR25LA076Accident · No injuriesClass 4 · LimitedFinal reportCessna 182M · Los Alamos, NMThe pilot’s failure to maintain airplane control while landing in gusty crosswind conditions.NTSB DCA25WA072Accident · 173 fatalClass 2 · ForeignBoeing 737 · Muan County, South KoreaNTSB DCA25WA073Accident · No injuriesClass 4 · ForeignBoeing 737 · Oslo, NorwayNTSB CEN25LA066Accident · No injuriesClass 4 · LimitedFinal reportDiamond Aircraft Ind DA 40 NG · Monticello, IAThe on-ground collision with a deer on the runway during the landing roll.NTSB GAA25WA050Accident · No injuriesClass 5 · ForeignBeechcraft E90 · Pucallpa, PeruNTSB ERA25LA094Accident · No injuriesClass 4 · LimitedFinal reportBeech 58 · Florence, SCThe pilot’s failure to follow the emergency procedures and extend the landing gear manually after the landing gear did not initially extend normally.NTSB ANC25LA012Accident · No injuriesClass 4 · LimitedFinal reportPiper PA-18-150 · Palmer, AKThe pilot’s improper airspeed management which resulted in a bounced landing and insufficient airspeed to perform a go around procedure.NTSB WPR25LA066Accident · No injuriesClass 4 · LimitedFinal reportPiper PA-28RT-201T · Placerville, CAThe pilot’s failure to maintain an adequate descent rate during the landing approach, which resulted in an impact with terrain short of the runway threshold.NTSB ERA25LA083Accident · No injuriesClass 4 · LimitedFinal reportBeech B95A · Murray, KYThe pilot’s failure to lower the landing gear before touchdown, which resulted in a gear-up landing. Contributing was the designated pilot examiner’s inadequate monitoring and lack of remedial action.NTSB DCA25WA063Incident · No injuriesClass 5 · ForeignBoeing 737 · Molde, NorwayNTSB GAA25WA044Accident · 2 fatalClass 5 · ForeignBombardier BD100 · San Fernando, ArgentinaNTSB DCA25WA064IncidentClass 5 · ForeignBoeing 737 · Crawley, United KingdomNTSB WPR25LA064Accident · No injuriesClass 4 · LimitedFinal reportAmazon.Com Services MK30 · Pendleton, ORThe incorrect altitude indication by test software during landing.NTSB WPR25LA063Accident · No injuriesClass 4 · LimitedFinal reportAmazon.Com Services MK30 · Pendleton, ORAn improper altitude indication from a recent software update, which resulted in a loss of engine power in flight.NTSB WPR25LA061Accident · No injuriesClass 4 · LimitedFinal reportCessna 172M · Gig Harbor, WAThe student pilot’s failure to maintain directional control during a touch-and-go.NTSB WPR25LA060Accident · Minor injuriesClass 3 · LimitedFinal reportZall Jihlavan Airplanes S R O JA-600 Skyleader · Reedley, CAThe student pilot’s failure to maintain directional control during the landing roll, which resulted in a runway excursion.NTSB ERA25LA078Accident · No injuriesClass 4 · LimitedFinal reportCessna 172 · Jefferson, GAThe airplane’s collision with a deer on the runway during landing.NTSB CEN25LA061Accident · No injuriesClass 4 · LimitedFinal reportPiper PA-28R-200 · Crystal, MNThe malfunction of the landing gear system which resulted in a collapse of the main landing gear during the landing roll.NTSB DCA25WA058AccidentClass 3 · ForeignBoeing 737 · Abuja, NigeriaNTSB CEN25LA059Accident · No injuriesClass 3 · LimitedFinal reportCessna 182T · Pearland, TXThe AA-5 pilot’s failure to maintain separation from the 182T during approach and landing, which resulted in a ground collision during the landing roll. Contributing to the accident was the failure of the AA-5’s electrical system, which prevented the AA-5…