Every figure here is now measured from the real record - the NTSB investigation database, its coded bulk file, and official flight-hours from the FAA and NTSB. This page documents where each number comes from.
Source
The authoritative record is the NTSB aviation investigation database, searchable through CAROL (Case Analysis and Reporting Online), with individual accident reports published at the same site. It reaches back to 1962 and holds tens of thousands of investigated accidents. The cohort cadences on this page are counted straight from CAROL's query API (exact accident and fatal tallies per operating rule); the individual case files - the Hall and the airline timeline - are hand-assembled from published NTSB reports.
What is real
The Hall of Investigations and the airline-fatal-accident timeline are real. Every case - date, aircraft, location, fatality and survivor counts, and the probable cause - is drawn from the published NTSB report for that accident. Probable-cause text is paraphrased for length, not quoted verbatim. The cohort cadences in "Two Industries" and the compare tool - accidents per year and fatal-accident cadence for Part 121, 91, and 135 - are exact counts from CAROL over the most recent full decade (2014-2023), which is the honest "current" rate: U.S. aviation accidents have fallen so sharply since the 1970s-80s that an all-time average would badly overstate today. The record bears out the contrast: scheduled airlines logged just four fatal Part 121 accidents across that decade - years apart - while general aviation ran to roughly 1,100 accidents a year.
The phase-of-flight profile is now real too, counted from CAROL's EventSequence phase groups over the same 2014-2023 window. One caveat governs how to read it: a single accident's sequence can touch several phases, so the counts are phase involvement, not a mutually-exclusive split - the shares overlap and add to more than 100%. Each bar is the share of accidents that involved that phase, and a phase is tagged "fatal-heavy" when accidents involving it were fatal at a disproportionately high rate - at least 1.25 times the overall average. Landing is involved in nearly half of all accidents and is among the least fatal; the deaths concentrate in maneuvering, takeoff, and the uncontrolled phases.
Probable cause, now real
The probable-cause shares were the site's last estimate; they are now Real. CAROL's query API carries no countable cause category, but the NTSB bulk accident database does: every accident's sequence of events is coded, and one occurrence is flagged as defining. We count that defining occurrence - a CICTT category, not free text - for each fatal Part 91 accident over 2014-2023 and crosswalk the categories into the seven families shown. The same coding fills the Part 135 cause chart in the compare tool (its fatal record); the airline cause chart there stays the landmark-case corpus. A family is flagged high fatality when its accidents turn fatal at more than 1.25 times the general-aviation average - itself a real figure, computed from the coded record (fatal versus all Part 91 accidents in that family).
Probable cause vs contributing factor
The NTSB names a single probable cause for each accident, and codes a full sequence of events with one occurrence marked defining. The categories here collapse that nuance into one bucket per accident. A stall that followed an engine failure that followed fuel starvation is one story with several honest labels; this page counts the single occurrence the NTSB coded as defining.
Rates, and two ways to count Part 121
A rate needs flight-hours exposure. The general-aviation and Part 135 rates use the FAA's General Aviation and Part 135 Activity Survey (official survey-based hour estimates): about 5.2 accidents per 100,000 hours in GA (0.9 fatal), 1.1 in Part 135. The Part 121 (airline) rate - about 0.16 per 100,000 hours, 0.0023 fatal - uses the NTSB's Aviation Accident Statistics air-carrier file, whose flight-hours are FAA-compiled.
One honest wrinkle there: the NTSB's air-carrier file counts 282 Part 121 accidents over 2014-2023, because it includes U.S. carriers' international operations, while the accident count shown in the cards (257) is the CAROL query's U.S.-only tally. For the rate we deliberately pair the NTSB file's own numerator and denominator (282 accidents against its 176.6 million flight hours) so that top and bottom share the same "14 CFR 121, all operations" scope. Dividing the U.S.-only 257 by the all-operations hours would understate the rate. The fatal count is 4 either way.
What you are not seeing
Incidents that never rose to a reportable accident. The near-misses. The maintenance discrepancy caught on the ground. What ships here is the investigated-accident record, its causes, and the rates that record produces against real activity.
How the real data is assembled
Feeding scripts/build-data.ts: fetch-carol.mjs counts the cohort and phase figures off CAROL's public query API; fetch-avall.mjs reads the probable-cause coding from the NTSB bulk database (avall.mdb, the Events_Sequence defining occurrence); fetch-faa.mjs parses the FAA activity survey for general-aviation and Part 135 flight hours; and a committed file (data/part121_activity.json) carries the NTSB air-carrier hours - hand-downloaded, because the NTSB and BTS hosts block automated fetches, but real and cited. The swap-points are documented at src/lib/source.ts, and the full recipe in HANDOFF.md.
Generated 2026-07-11 15:46 UTC
Source: NTSB Aviation Investigation Search (CAROL) + bulk Aviation database (avall); FAA GA & Part 135 Activity Survey + NTSB air-carrier statistics for flight-hours exposure
↑ Top · kvlak / limn - all dashboards →