Guide
How to read this site: grades, sample sizes, and honest caveats
Every page carries a letter grade, a flight count and a data period. Here is what each one means, where the numbers stop being trustworthy, and what this site deliberately does not do.

Every data page on this site opens with a letter stamped in a circle. It is the site's one editorial judgement, and it is built from exactly two numbers so that you can check it yourself.
The grade
The letter comes from the on-time rate:
- A is 85% or better
- B is 75% to 84.9%
- C is 65% to 74.9%
- D is 55% to 64.9%
- F is under 55%
The modifier comes from the cancellation rate. Under 1% earns a plus. Over 3% earns a minus. Between the two, no modifier.
So a B+ is a solidly punctual operation that rarely cancels. A B− is the same punctuality with a cancellation problem sitting underneath it, and for a trip with no slack those two are not equivalent. The thresholds are printed verbatim on the methodology page and have not changed since the site launched.
An em dash in place of a grade means there were not enough completed flights to compute a rate at all.
Sample size, and why it appears everywhere
Next to every percentage on this site is a flight count. It is there because a rate without a denominator is not a fact.
An operation with 400 flights over twelve months can move three points on one bad week. One with 40,000 flights does not. When you see a two-point gap between two rows in a table, check whether the smaller row has the sample to support it before treating the gap as real.
Two rules follow from this and are applied throughout:
The 365-flight floor. An entity averaging fewer than one flight a day over the twelve-month window gets no page of its own. It still appears as a row inside a parent page, with its flight count visible and a "thin sample" marker attached, because hiding it would be its own kind of dishonesty.
The 30-flight breakdown floor. Inside a page, any sub-group with fewer than 30 flights shows a dash rather than a percentage. That is why some hour blocks and some months are blank on thinner routes.
The period, and the lag
Every page states the twelve months it covers. BTS publishes with roughly a two-month lag, so the most recent month available is usually two months behind today. This is a property of the source, not a shortcoming of the site, and it is stated on every page rather than hidden.
Twelve months is used deliberately. A shorter window would make the seasonal charts unreadable and would let one bad month dominate a grade. A longer one would bury a genuine change in an operation under old data.
What the numbers cannot tell you
Being clear about this is more useful than another chart.
Nothing about your specific flight. These are historical rates. A route at 85% on time will still deliver a four-hour delay to somebody today.
Nothing about the passenger experience. The data records what the aircraft did. It has no record of whether a delay was announced in advance, whether rebooking was handled well, or whether anyone was compensated.
Nothing about missed connections. A flight arriving 90 minutes late is one row in the database whether every passenger made their onward flight or none did.
Nothing about who actually flew you. The data distinguishes the operating carrier from the brand on the ticket. A flight sold as a mainline product and flown by a regional partner is reported under the regional's code, which is why regional carriers appear in these tables at all.
Nothing about seats, fees, or service. Reliability is one axis of a decision that has several.
What this site is not
It is not a flight tracker and will not become one. There is one live page, showing what the FAA reports about airports right now: ground stops, ground delay programmes, closures. That is the state of an airport, never the state of a flight. For your own departure, use your airline's app.
It does not handle compensation claims, and it has no relationship with any company that does. The US has no EU-style cash compensation scheme for delays, a point covered in the rights guide.
It does not sell leads, and it is not affiliated with any airline. It is funded by display advertising, which is stated on the about page rather than buried.
Getting the most out of a page
Read the grade, then immediately read the flight count under it.
Look at the carrier comparison table before the charts. On most routes the choice of operator and the choice of departure hour are the two decisions available to you, and the table plus the hour-block chart cover both.
Check the cause breakdown to work out whether the problem is the airline or the airspace. If it is the airspace, changing carriers will not help and changing airports might.
And read the cancellation rate next to the on-time rate rather than after it.
Routes are directional, and that is not pedantry
JFK to LAX and LAX to JFK are separate pages with separate grades, and the gap between them is frequently several points.
They are separate operations. Different aircraft fly them, at different times of day, out of different departure banks, into airports with different congestion profiles at the hour of arrival. A morning departure eastbound lands into an afternoon arrival bank; the same city pair westbound does not.
Averaging the two would produce a figure describing neither direction, and would hide exactly the asymmetry a traveller can act on. Where the two directions differ, each page says so and names the other one's figure.
The same logic applies to the airline-at-airport pages. A carrier's national average blends its hub operation with its outstations, and those are different products. Where the comparison is available, prefer the narrower page.
Try it on a real page: Los Angeles (LAX) delay statistics · Southwest's on-time record · Full methodology