Fatal NTSB investigations, Outside the U.S.
78 cases where the phase of flight was Landing.
Cases per year
| 1965 | 1 |
|---|---|
| 1967 | 1 |
| 1968 | 3 |
| 1969 | 1 |
| 1972 | 1 |
| 1973 | 1 |
| 1974 | 1 |
| 1978 | 1 |
| 1994 | 1 |
| 2009 | 1 |
| 2010 | 3 |
| 2011 | 1 |
| 2012 | 1 |
| 2013 | 1 |
| 2014 | 2 |
| 2015 | 2 |
| 2016 | 3 |
| 2017 | 7 |
| 2018 | 4 |
| 2019 | 5 |
| 2020 | 7 |
| 2021 | 5 |
| 2022 | 8 |
| 2023 | 6 |
| 2024 | 7 |
| 2025 | 4 |
Latest cases
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.\"eventCountry\" <> 'USA'
AND c.\"highestInjuryLevel\" = 'Fatal'
AND 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."eventCountry" <> 'USA'
AND c."highestInjuryLevel" = 'Fatal'
AND 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 GAA26WA034Accident · 1 fatalClass 5 · ForeignVans RV7 · New South Wales, AustraliaNTSB DCA26WA017Accident · 2 fatalClass 3 · ForeignBoeing 747 · Hong Kong, Hong Kong SAR ChinaNTSB GAA25WA265Accident · 1 fatalClass 5 · ForeignPiper PA18 · Cham, SwitzerlandNTSB GAA25WA056Accident · 1 fatalClass 4 · ForeignCessna 525 · Ubatuba, BrazilNTSB DCA25WA072Accident · 173 fatalClass 2 · ForeignBoeing 737 · Muan County, South KoreaNTSB GAA25WA044Accident · 2 fatalClass 5 · ForeignBombardier BD100 · San Fernando, ArgentinaNTSB DCA25WA046Accident · 1 fatalClass 3 · ForeignBoeing 737 · Vilnius, LithuaniaNTSB GAA24WA274Accident · 1 fatalClass 5 · ForeignPiper 38 · Córdoba, SpainNTSB GAA24WA246Accident · 1 fatalClass 5 · ForeignZodiac CH601XL · Tambon Khok Kham, ThailandNTSB GAA24WA238Accident · 1 fatalClass 5 · ForeignSupermarine Spitfire MK26 · West Oxfordshire, United KingdomNTSB GAA24WA072Accident · 4 fatalClass 5 · ForeignPiper PA 46-350P · Ramos Arizpe, Coahuila,, MexicoNTSB GAA24WA014Accident · 1 fatalClass 4 · ForeignCessna 172 · Barrancabermeja, ColombiaNTSB GAA24WA015Accident · 2 fatalClass 5 · ForeignCessna 172N · Merriton, AustraliaNTSB GAA23WA188Accident · 2 fatalClass 5 · ForeignCessna 206 · Gracias A Dios, HondurasNTSB GAA23WA148Accident · 2 fatalClass 5 · ForeignCessna 185 · Sao Paulo, BrazilNTSB GAA23WA131Accident · 1 fatalClass 5 · ForeignCirrus SR22 · Bankstown, AustraliaNTSB GAA23WA095Accident · 1 fatalClass 4 · ForeignCessna 182 · Belo Horizonte, BrazilNTSB GAA23WA084Accident · 1 fatalClass 5 · ForeignSocata TB21 · Saint-Pons, FranceNTSB GAA23WA017Accident · 2 fatalClass 5 · ForeignCessna T206G · Guayaquil, EcuadorNTSB GAA23WA015Accident · 1 fatalClass 3 · ForeignCessna 172 · Ulsan, South KoreaNTSB GAA22WA242Accident · 1 fatalClass 5 · ForeignPiper PA28 · Sungai Pinji, MalaysiaNTSB GAA22WA138Accident · 1 fatalClass 5 · ForeignSachse Stephan Aventura II · Klekot, PolandNTSB GAA22WA123Accident · 1 fatalClass 5 · ForeignSikorsky S76 · Baía de Camamu, BA, BrazilNTSB GAA22WA083Accident · 1 fatalClass 5 · ForeignCessna 172 · Coburg, GermanyNTSB GAA22WA075Accident · 1 fatalClass 5 · ForeignPiper PA-25-260 · Uchoa, BrazilNTSB GAA22WA002Accident · 1 fatalClass 5 · ForeignCessna 172 · St-Mathieu-de-Laprairie, CanadaNTSB GAA21WA230Accident · 1 fatalClass 5 · ForeignBell 206 · Hope Bay, Canada, CanadaNTSB ENG21WA048Accident · 1 fatalClass 5 · ForeignFK-Aircraft FK14 Polaris · Val Vibrata, ItalyNTSB GAA21WA176Accident · 1 fatalClass 5 · ForeignBeech C90 · Durango, MexicoNTSB GAA21WA082Accident · 1 fatalClass 5 · ForeignLearjet 35 · Belo Horizonte, BrazilNTSB WPR20WA292Accident · 1 fatalForeign investigationCessna 172 · Springs, South AfricaThe government of South Africa has notified the National Transportation Safety Board (NTSB) of an accident involving a Cessna 172 airplane that occurred on August 26, 2020. The NTSB has appointed a U.S. Accredited Representative to assist the government of…NTSB WPR20WA186Accident · 2 fatalForeign investigationBell 206 · Gauteng, South AfricaNTSB ERA20WA167Accident · 2 fatalForeign investigationGrumman AA5 · Dnipropetrovsk, UkraineThe government of Ukraine has notified the NTSB of an accident involving a GRUMMAN AA5 airplane that occurred on May 01, 2020. The NTSB has appointed a U.S. Accredited Representative to assist the government of Ukraine's investigation under the provisions of…NTSB ERA20WA173Accident · 1 fatalForeign investigationPiper PA25 · Matoes do Norte, BrazilThe government of Brazil has notified the NTSB of an accident involving a PIPER PA25 airplane that occurred on April 18, 2020. The NTSB has appointed a U.S. Accredited Representative to assist the government of Brazil's investigation under the provisions of…NTSB ERA20WA193Accident · 2 fatalClass 3 · ForeignCessna 525 · El Yaque, VenezuelaNTSB WPR20WA107Accident · 5 fatalForeign investigationCessna 404 · Lockhart River, AustraliaThe government of Australia has notified the NTSB of an accident involving a Cessna 404 airplane that occurred on March 11, 2020. The NTSB has appointed a U.S. Accredited Representative to assist the government of Australia's investigation under the…NTSB DCA20RA069Accident · 3 fatalForeign investigationBoeing 737 · Istanbul, TürkiyeThe government of Turkey has notified the NTSB of an accident involving a BOEING 737 airplane that occurred on February 05, 2020. The NTSB has appointed a U.S. Accredited Representative to assist the government of Turkey's investigation under the provisions…NTSB GAA19WA561Accident · 1 fatalForeign investigationMooney M20K · Orio al Serio, ItalyThe government of Italy has notified the NTSB of an accident involving a MOONEY M20K airplane that occurred on September 21, 2019. The NTSB has appointed a U.S. Accredited Representative to assist the government of Italy's investigation under the provisions…NTSB WPR19WA210Accident · 1 fatalForeign investigationLiberty Aerospace XL-2 · Braidwood, AustraliaOn August 6, 2019, at 0138 coordinated universal time, a Liberty Aerospace XL-2, registration VH-XLK, collided with terrain during a landing attempt near Braidwood, New South Wales, Australia. The pilot and sole occupant was fatally injured, and the airplane…NTSB CEN19WA256Accident · 1 fatalForeign investigationCessna A185 · Upper Raft Lake, CanadaNTSB GAA19WA341Accident · 2 fatalForeign investigationCessna 172 · Sailagouse, France, FranceThe government of France has notified the NTSB of an accident involving a CESSNA 172 airplane that occurred on June 13, 2019. The NTSB has appointed a U.S. Accredited Representative to assist the government of France's investigation under the provisions of…NTSB ERA19WA099Accident · 3 fatalForeign investigationBell 206 · Barueri County, BrazilThe government of Brazil has notified the NTSB of an accident involving a Bell 206 helicopter that occurred on February 11, 2019. The NTSB has appointed a U.S. Accredited Representative to assist the government of Brazil's investigation under the provisions…NTSB GAA22WA262Accident · 1 fatalClass 5 · ForeignThrush S2R · Bataan, Costa RicaNTSB CEN19WA010Accident · 3 fatalForeign investigationCessna F172 · Wasserkuppe, GermanyOn October 14, 2018, about 1345 coordinated universal time, a Cessna F172N, D-EFJX, experienced a runway excursion during landing which resulted in 3 ground fatalities.This investigation is under the jurisdiction and control of the German Federal Bureau of…NTSB CEN18WA366Accident · 1 fatalForeign investigationCirrus SR22 · Balchik, BulgariaOn August 24, 2018, at 1608 coordinated universal time, a Cirrus SR22, LZ-SEV, impacted terrain at the Balchik Airfield (LBWB), Balchik, Bulgaria. The airplane was destroyed. The pilot was fatally injured. The flight originated from Lesnovo Airport (LBLS),…NTSB ANC18WA077Accident · 3 fatalForeign investigationCessna U206 · Fort Simpson, CanadaOn August 17, 2018, about 0035 Coordinated Universal Time, an amphibious float-equipped Cessna U206G airplane, C-FNEQ, nosed over while landing at Little Doctor Lake near Fort Simpson, Northwest Territories, Canada. Of the five souls onboard, the pilot and…NTSB ERA18WA013Accident · 1 fatalForeign investigationCessna 208 · Novo Airao, BrazilOn October 17, 2017, about 1540 universal coordinated time, an amphibious Cessna 208, Brazilian registration PR-MPE, was substantially damaged after it came to rest inverted while attempting to land on a river in Novo Airao county, State of Amazonas, Brazil.…NTSB ERA17WA323Accident · 1 fatalForeign investigationBritten Norman BN2A · San Salvador de Paul, VenezuelaOn September 11, 2017 about 1400 coordinated universal time, a Britten Norman BN2-A, Venezuelan registration YV1441, was landing at San Salvador de Paul, Ciudad Bolivar, Venezuela, when it struck and fatally injured a child who was on the runway. The pilot…NTSB CEN17WA279Accident · 1 fatalForeign investigationPiper Piper J3C-65 · Laukaa, FinlandOn July 19, 2017, about 0903 coordinated universal time, a Piper J3C-65 airplane, Finnish registration OH-PAD, was destroyed when it collided with the trees and terrain near Laukaa, Finland. The pilot was fatally injured. The airplane departed a private…NTSB CEN17WA349Accident · 1 fatalForeign investigationPiper PA31 · Caernarfon, Gwynedd, United KingdomOn June 9, 2017, at 1705 coordinated universal time, a Piper PA31, N250AC, impacted terrain during landing at Caernarfon Airport (EGCK), Caernarfon, Gwynedd, Wales. The airplane was destroyed by impact forces and fire. The pilot, who was the sole occupant,…