claritystorm/dot-airline-ontime
DOT Airline On-Time Performance 2018–2024 45,968,068 reported flight records across all 84 months, with all 109 BTS source fields, exact delay values and separate cancellation/diversion outcomes. This repository contains the 1,000-row public sample, covering all 84 months. The full package is a one-time $99 snapshot, with monthly CSV and Parquet files. It has 111 Parquet columns: 109 BTS fields plus source_month and source_row. The deterministic sample uses 12 evenly spaced rows… See the full description on the dataset page: https://huggingface.co/datasets/claritystorm/dot-airline-ontime.
DOT Airline On-Time Performance 2018–2024
45,968,068 reported flight records across all 84 months, with all 109 BTS source fields, exact delay values and separate cancellation/diversion outcomes.
This repository contains the 1,000-row public sample, covering all 84 months. The full package is a one-time $99 snapshot, with monthly CSV and Parquet files. It has 111 Parquet columns: 109 BTS fields plus source_month and source_row.
The deterministic sample uses 12 evenly spaced rows per month through April 2024, then 11 per month for May–December 2024. It is not statistically representative. Public and packaged samples are identical.
Inspect the sample without losing code formatting
import pandas as pd
df = pd.read_csv("sample_1000.csv", dtype=str, keep_default_na=False)
print(df.shape)
print(df["source_month"].nunique())Expected shape: (1000, 111) and 84 months. This example keeps values as strings; use the typed Parquet files for numerical analysis of the full release.
Known limitations
- Dated snapshot of all 84 official monthly files for January 2018–December 2024, retrieved September 19, 2026. Future updates are not included. BTS can revise historical records.
- BTS Reporting Carrier data covers reported nonstop domestic flights, including required and voluntary reporting carriers. It is not every US flight, international service, passenger totals or the separate Marketing Carrier network table. Carrier participation can change across years.
- Breaking schema repair: all 109 native BTS fields replace the former 47-column reduced table. Parquet adds sourcemonth and sourcerow. The original monthly CSVs retain agency spelling, formatting, blanks and an empty trailing delimiter column. No rows were deduplicated or dropped. Former route, cancellationreason and isdelayed fields are removed.
- There are 1,001,102 cancelled records, 108,460 diverted records and 1,109,916 missing ArrDelay values. Missing arrival delay does not mean on time. Use separate Cancelled, Diverted and ArrDel15 fields, and state the denominator. Diverted arrival outcomes use DivReachedDest and DivArrDelay.
- The candidate key FlightDate + ReportingAirline + FlightNumberReportingAirline + Origin + Dest has 2 excess duplicate rows, all retained. sourcemonth + sourcerow is unique only within this release and is not a stable flight identity across agency revisions.
- Local HHMM times are strings, preserving leading zeros and the source 2400 convention. They are not UTC timestamps; do not subtract HHMM integers or infer elapsed time without dates/time zones. Negative departure/arrival delays mean early movement and are retained. Delay measures use exact decimal types; blank source values become null in Parquet.
- Delay-cause minutes are conditional reported outcomes, not universal weather observations. Blank causes are not automatically zero. Post-flight fields are not available when making pre-departure predictions. No airport/weather joins, exposure adjustment, predictive model or risk score is supplied.
- Airport and airline codes can be reused. Prefer the supplied DOT/airport identifiers for longitudinal analysis and distinguish airport IDs from time-specific airport sequence IDs. Identifiers and code fields remain strings.
- Every source field and monthly count reconciles to the persisted Parquet with an independent CSV parser. This does not independently certify agency accuracy or flights outside the reporting universe. The 1,000-row sample covers every month but is not statistically representative.
- Source exceptions retained: 354 records marked neither cancelled nor diverted have missing arrival delay; 1 record has at least one missing flight identifier. See the monthly reconciliation for period counts. No missing values were inferred.
Availability and source
Full dataset and field schema. No future updates are included. Annual and bundle purchases remain paused. Official BTS monthly downloads and field definitions. US federal agency source data is public domain; BTS does not endorse this product.
