Datadory notebook

Bts Airline On Time Performance Data: Dataset Structure and Field Coverage

Datadory delivers bts airline on time performance data covering comprehensive field definitions, entity mappings, and historical time series — structured for direct analytics and delivered on demand.

1,744 datasets. Pick your catch.

What counts as BTS airline on-time performance data?

BTS's TranStats portal indexes 21 aviation databases, and the Airline On-Time Performance collection is the one built for reliability questions. Every record is one flight: the tables log a row per departure for certificated U.S. carriers across the United States domestic network, refreshed monthly and reaching back to October 1987. At roughly 5-7 million flight rows per year, a single decade of history means tens of millions of rows to work with.

Two properties separate this record from every mirror of it. It is the reporting source: carriers file to BTS under Form 234, so downstream copies inherit whatever the official tables say rather than correcting them. And it is the only version that keeps growing - a mirror captures one year and stops, while this archive adds another few million rows every month.

Can you get a whole year in one file?

Yes. The Kaggle mirror 2015 Flight Delays and Cancellations (5.8M U.S. Flights), published by the USDOT organization under commercial delivery terms, compresses calendar year 2015 into three files totalling about 200 MB zipped: flights.csv with 5,819,079 rows (about 586 MB uncompressed), airlines.csv holding all 14 reporting carriers in 359 bytes, and airports.csv listing 322 airports with coordinates in roughly 24 KB. The underlying records originate from BTS Form 234 on-time reporting, so the mirror is the official stream in a friendlier wrapper rather than a different dataset.

Each flights.csv row carries what delay modellers reach for: airline, flight number, origin and destination, scheduled and actual times, delay minutes, and cancellation and diversion flags. With a carrier table measured in bytes and airports joined on coordinates, feature engineering starts immediately - group by airline, airport pair or hour and the labelled benchmark is ready without touching the portal. The trade-off is temporal: one calendar year, frozen at its February 2017 publication, so no post-2015 aircraft, route or schedule changes appear anywhere in it. Prototype on it, then extend back through the official archive when a model needs more than one year of seasonal patterns.

How do you assemble a working delay-analysis stack?

A repeatable build, using only sources named above:

Pick up where this leaves off

Every one of these ships with sample rows before you commit to anything.

Passenger Airlines United States domestic routes across the 50 states and…

2015 Flight Delays and Cancellations (5.8M U.S. Flights)

AIRLINE · FLIGHT_NUMBER · TAIL_NUMBER …+4 more

Want rows instead of a pitch? Name the datasets.

API, files, or your warehouse. Daily, weekly, or hourly.

Get a sample

Questions worth asking

What is the difference between the BTS on-time tables and T-100?

They measure different things on the same portal. The on-time tables log one row per flight for punctuality work, monthly from October 1987. T-100 is a census of traffic logging one row per carrier, aircraft, service class, segment and month, carrying passengers, seats, available seat-miles and load factors from 1990.