30 US hubs / Sep 2023 to Aug 2026

Missed connections, built from flight records

A 45-minute connection was missed about one time in six

Across the 30 busiest US airports, 17% of 45-minute connections failed between September 2023 and August 2026, counting cancellations. At Atlanta it was 14%, and a 95% chance took 130 minutes. Judging the risk from the inbound flight alone overstated it by 2.8 points at 45 minutes, because the outbound flight is often late too, and more often on the days the inbound is. The numbers come from 23.0 million domestic flights recorded by the US Bureau of Transportation Statistics, paired into 90.0 million connections.

17% / 8%

missed at 45 and at 90 minutes, all 30 hubs together. At 30 minutes it was 31%.

155 min

for a 95% chance across all hubs. 3.0% of pairs fail on a cancellation or diversion that no layover fixes; if both flights operate, 95 minutes is enough.

+2.8 points

by which the inbound-only shortcut overstated the miss rate at 45 minutes (20.0% against 17.2%). From 120 minutes on, it understates, because it ignores outbound cancellations.

60 vs 120

minutes needed for 95% (if both fly) at the median hub, arriving at 8 am against 7 pm. Delay builds through the day.

At a glance

Question
How often is a US domestic connection missed, and how long a layover gives a 95% chance?
Data
22,957,747 BTS flights at the 30 busiest US airports, September 2023 to August 2026, paired into 89,980,442 same-airline connections on 196 hub and airline combinations.
Method
Each pair scored against what both flights actually did; a logistic model (hub and airline, layover, hour, month, weekday) for the lookup tool.
Holdout
Fitted on September 2023 to February 2026, tested on 2,000,000 pairs from March to August 2026, against a cell average and the inbound-delay-only shortcut.
Main limit
Pairs are constructed from schedules, not real bookings; airline minimum connection times and held departures are not modeled.

Result

17.2%

of 45-minute connections missed, against 20.0% from the inbound flight alone.

Calibration error on the holdout: model 0.86 points, cell average 0.93, shortcut 2.05.

Method

Every connection is built from two recorded flights

The BTS on-time table lists flights, not passengers. Every connection here is constructed. At each hub, an arriving flight is paired with every departure on the same marketing airline (the name on the ticket, so a SkyWest-operated United Express leg counts as United) that leaves 30 to 180 minutes later on the schedule and goes somewhere other than where the arrival came from. Pairs flown by the same aircraft are dropped, since that plane cannot leave without its own passengers; that removed 1.5% of 567 million candidates, up to 8.6% at TPA. To keep every arrival equally represented, one departure is drawn at random for each arrival in each 15-minute layover band, leaving 90.0 million pairs on 196 hub and airline combinations. Results by layover use 5-minute bins labeled by their lower edge, so "45 minutes" means a scheduled layover of 45 to 49 minutes.

A pair is missed if the inbound was cancelled or diverted, if the outbound was cancelled, or if the inbound reached the gate too late: actual arrival plus a walk of W minutes later than actual departure minus D minutes, where D is when the door closes. The defaults are W = 20 and D = 10, so a connection needs 30 minutes between gate arrival and pushback. The lookup tool lets you change W.

Curves

The first half hour of extra layover does most of the work

The miss rate falls from 31% at 30 minutes to 12% at an hour and 6% at two hours, then flattens toward the cancellation floor. The worst hub at 45 minutes was Washington National at 23%; the best was Baltimore at 12%.

Ten busiest hubs5-minute layover bins
this hub, with 95% intervalall 30 hubs
0%10%20%30%306090120150180ATL Atlanta45 min: 14% 0%10%20%30%306090120150180ORD Chicago O'Hare45 min: 20% 0%10%20%30%306090120150180DEN Denver45 min: 15% 0%10%20%30%306090120150180DFW Dallas/Fort Worth45 min: 20% 0%10%20%30%306090120150180CLT Charlotte45 min: 17% 0%10%20%30%306090120150180PHX Phoenix45 min: 15% 0%10%20%30%306090120150180LAX Los Angeles45 min: 16% 0%10%20%30%306090120150180LAS Las Vegas45 min: 15% 0%10%20%30%306090120150180SEA Seattle45 min: 17% 0%10%20%30%306090120150180IAH Houston Intercontinental45 min: 15%
Share of constructed connections missed, by scheduled layover, September 2023 to August 2026, all airlines at each hub pooled. Wilson 95% intervals treat pairs as independent and are too narrow. Drawn by scripts/make_figures.py from tables/curves_hub.csv.

The 95% layover

Evening arrivals need longer layovers

Departures leaving 15 or more minutes late rise from 7% in the 5 am hour to 32% in the 7 pm hour. Counting cancellations, only 22 of the 30 hubs reach a 95% chance within 180 minutes at all, so the map below takes cancellations out and asks a narrower question: if both flights operate, how much layover does a 95% chance need? At the median hub it is 60 minutes for an 8 am arrival and 120 for a 7 pm one.

Layover for 95%, if both flights operate15-minute steps
Arrival hour (local)04567891011121314151617181920212223ATL120757560757575607575759090105105105105105+ORD7590120909090909090105105120120135135150135++DEN12075606060757575757590105105105120105120135+DFW105105105909090909090105105105120120135135150135+CLT7575757575757575909090105105105135120+PHX60606060757575757590909090105120120120120+LAX+75756060607575757590909090105120120120120120LAS+4545456060606075757590909090105120120120135SEA75606060607575757575757590909090105105105IAH1357590757590759075907590105120120120++LGA75756075759075909090105105120120++MCO10590606060757575909090105105120120135150+DCA909090907575105105105105105120150135+++SFO60609090909010590105120120105120135150135135+BOS1501201057575606075759090105105105135120135105EWR1059090756060607590909090120135150150++DTW901057560757575909090105105105120135120++MSP7590757575756075909090105105105105120++JFK165135909090757575909010590105120135135120++PHL1207590909075909090105105120135165150++SLC120606060606075607575759090909090105120MIA10510575756075759090105105120120120135135++BNA9045454560606060607590105105105105105+SAN906060606090757575909090105120120+BWI75454545454545606060607575909090105FLL1051059060607575909090105105120120135120++AUS10545456060606075757590105105105120105IAD7590759075120757590105120+135++TPA907560606060607575909090105120120135+MDW754545606060456060757575909090120105Minutes of layover for a 95% chance; + means not reached by 180; blank means under 2,000 pairs
Shortest scheduled layover (15-minute buckets) at which the miss rate among pairs where both flights operated stays at or below 5% for every longer bucket, by hub and arrival hour. Darker is longer. The version counting cancellations is mostly "+" and is in tables/layover_needed_hub_hour.csv.

The shortcut

The outbound flight is often late too

The obvious way to judge a connection is to ask how often the inbound flight lands more than the spare time late. That ignores the outbound. When the inbound was 30 or more minutes late, the outbound left 15 or more minutes late 40% of the time, against 24% of all pairs: the same storm and the same congested airport hold up both. Part of the gap does not depend on that link: outbound flights leave late on average, so even unrelated delays would shrink the shortcut's estimate. The correlation between the two delays is 0.15 overall, from 0.05 at SLC to 0.21 at EWR.

At 45 minutes the shortcut gives 20.0% against a paired 17.2%. The delay part alone overstates by 3.4 points (17.6% against 14.2%), offset a little by the 1.1 points of outbound cancellations the shortcut never sees. The gap closes at about 120 minutes and reverses after it, when cancellations make up most of the remaining risk. By hub it runs from -0.3 points at SLC to 5.7 at BWI.

All 30 hubspaired against inbound only
0%10%20%30%30456090120150180inbound delay onlyboth flightsScheduled layover, minutes
Miss rate by 5-minute layover bin computed two ways on the same pairs: from both flights' actual times and cancellations (green), and from the inbound flight alone (amber). From tables/shortcut_all.csv.

Evaluation

Three estimators, tested on six months they never saw

Each estimator was fitted on September 2023 to February 2026 and scored on 2,000,000 pairs from March to August 2026, where 11.1% were missed. The inbound-only shortcut uses the same cells and backoff as the cell average, so the two differ only in what they average. The logistic model has terms for hub and airline, layover, arrival hour, month and weekday, with layover, month and hour allowed to vary by hub; it was fitted on 3,000,000 training pairs.

EstimatorMean predictionCalibration error (points)Brier scoreBrier skillLog loss
Inbound delay only11.6%2.050.09414.3%0.3269
Cell average10.4%0.930.09275.8%0.3230
Logistic model10.5%0.860.09265.9%0.3217

The model calibrated best by a small margin over the cell average, and the tool ships it. Both predicted fewer misses than happened in the test months (10.5% and 10.4% against 11.1%): March to August 2026 was worse than the same months before it (11.0% missed, against 10.4% in 2024 and 10.5% in 2025), and pairs lost to a cancelled or diverted flight rose to 3.8% from about 3.1%. The shortcut was the worst calibrated; in its top tenth it predicted 37% and saw 28%. Brier skill against always predicting the test average is small for all three, about 5.9% at best: most of what decides a single connection, such as a thunderstorm that afternoon, is not in the inputs.

Calibration, March to August 2026deciles of prediction
0%10%20%30%40%0%10%20%30%40%cell averagelogistic modelinbound delay onlyPredicted miss rate (decile mean)Observed
Mean predicted against observed miss rate in each tenth of the test pairs, sorted by prediction. The dotted diagonal is perfect calibration. From tables/calibration.csv.

To rank what drives risk, each factor was dropped from the model in turn and the test log loss compared. The layover itself mattered most, then the hour of arrival and the hub and airline. Dropping the day of the week made the test score slightly better, so it adds nothing out of sample. Taking out the month and the day of the week changed the test log loss by less than 0.001.

Pre-pandemic

2019 looked much the same

The same 30 hubs and airlines in calendar 2019 (32.0 million pairs) missed 17% of 45-minute and 12% of 60-minute connections, against 17% and 12% in the main window. Cancellations and diversions were higher, 3.7% against 3.0%, so 95% was not reached within 180 minutes; if both flights flew, it took 90 minutes. Hub by hub at 45 minutes, 18 of 30 are worse now. DCA rose most (4.8 points) and EWR fell most (7.2 points).

Every hub

The table behind the tool

HubPairs (m)Missed at 4590% at95% at95% if both flyCancel or divertSame tailDelay corr.Shortcut gap
ATLAtlanta8.314%65130852.4%0.8%0.17+1.8
ORDChicago O'Hare7.520%95>1801103.8%1.1%0.18+3.1
DENDenver6.515%65120902.1%1.3%0.19+5.3
DFWDallas/Fort Worth7.520%100>1801104.4%0.7%0.14+3.4
CLTCharlotte5.717%751651002.9%0.9%0.11+2.1
PHXPhoenix3.915%60105901.4%2.4%0.07+2.9
LAXLos Angeles3.316%65115851.6%4.6%0.05+0.6
LASLas Vegas3.115%6095801.5%3.4%0.18+5.5
SEASeattle3.917%65105802.0%2.3%0.07+1.3
IAHHouston Intercontinental2.815%70175902.9%1.1%0.17+2.4
LGANew York LaGuardia3.021%105>180956.1%2.9%0.21+1.7
MCOOrlando2.217%70145903.0%5.3%0.19+4.8
DCAWashington National2.423%115>1801105.9%2.5%0.13+1.5
SFOSan Francisco2.122%801401052.1%2.8%0.14+3.8
BOSBoston2.120%80175953.6%4.6%0.20+3.4
EWRNewark2.620%100>1801005.1%1.8%0.21+1.3
DTWDetroit2.416%701501052.2%1.7%0.10+1.4
MSPMinneapolis2.515%65120901.7%1.6%0.10+1.3
JFKNew York JFK2.321%105>1801005.2%3.3%0.16+1.7
PHLPhiladelphia2.120%95>1801104.1%2.0%0.11+0.8
SLCSalt Lake City1.812%5590801.1%2.2%0.05-0.3
MIAMiami1.918%751651002.7%2.1%0.11+2.8
BNANashville1.615%60100752.1%4.1%0.16+5.1
SANSan Diego1.319%70115852.2%6.8%0.17+5.5
BWIBaltimore1.712%5590702.4%3.1%0.19+5.7
FLLFort Lauderdale0.820%85>1801003.7%7.3%0.17+5.5
AUSAustin1.115%6095801.6%6.4%0.14+5.6
IADWashington Dulles1.116%70165952.8%1.5%0.11+0.8
TPATampa0.718%70130853.0%8.6%0.19+3.9
MDWChicago Midway1.614%5595752.4%3.0%0.19+5.5

Layovers in minutes from 5-minute bins with at least 200 pairs; ">180" means not reached within 180 minutes. Cancel or divert is the share of pairs lost to a cancelled or diverted flight. Same tail is the share of candidate pairs dropped because one aircraft flew both legs. The shortcut gap is the inbound-only estimate minus the paired one at 45 minutes, in points.

Limits

What this cannot tell you

  • Constructed pairs are not real bookings. Airlines do not sell every pair, and each sets a minimum connection time per airport. No public table of those minimums was found, so the tool grays out layovers under 35 minutes rather than using each airline's figure.
  • One walking time per connection is a simplification. A gate change across a big airport can take much longer than 20 minutes, which is why W is a slider.
  • Only US domestic flights by the carriers that report to BTS. No international legs, no customs, no partner-airline connections.
  • Airlines sometimes hold a departure for connecting passengers. That appears here as outbound delay and cannot be told apart from ordinary delay.
  • A miss here means rebooking. How many hours it cost is not measured.
  • Pairs share arrivals and days, so the intervals shown are too narrow.

Sources

Data and code

Flights
US Bureau of Transportation Statistics, Marketing Carrier On-Time Performance (Beginning January 2018), monthly files September 2023 to August 2026 and January to December 2019: 22,957,747 flights in the main window. Public domain.
Code
github.com/lyhjeremy/connection-odds: fetcher, pair builder with unit tests, analysis, the tool's data export and every table quoted here. Method decisions are in docs/decisions.md.
Tool
The lookup tool runs in the browser from a 1,564 KB data file; nothing you choose leaves the page.