Disruption Index
How we measure the Disruption Index
Every week we publish cancellations and long delays per airport. This page sets out exactly how those figures are produced, what they do not say, and where the limits of our observation lie.
What we observe
We read the departure boards of the airports we follow at fixed moments each day. Every reading is a snapshot of that day’s scheduled departures and their state. We measure departures, not arrivals.
The observation rule for this report is mild. Under the mild rule a flight that appeared on the board counts as observed, regardless of whether its scheduled departure time had already passed. That makes coverage an honest measure of the measurement process — not of whether we saw the flight play out. We measure that separately, as the settled share.
The two formulas
Coverage: coverage = clamp01(observed / scheduled × min(1, runsObserved / runsPlanned)). Under the mild rule observed equals scheduled, so the formula reduces to min(1, runsObserved / runsPlanned): coverage measures whether the planned readings succeeded.
Settled share: settledShare = clamp01(settled / scheduled) — the share of departures whose final state we saw after the scheduled departure time.
The difference matters. In week 41 Eindhoven reached a coverage of 1.00 with a settled share of 0.45: every planned reading succeeded, but for more than half of its departures we did not see the outcome. Amsterdam came out at 0.98 and 0.91 that same week, because its board is read six times a day.
When an airport enters the ranking
An airport is ranked when coverage is at least 0.8 and at least 50 departures were observed in the period. The threshold applies across all airports we follow; there is no separate scope for the ranking.
The settled share is explicitly not a gate. It is a published figure with a footnote: a low value does not disqualify an airport, it tells the reader how certain that figure is.
Cadence and latency per airport
How often we read a board determines how quickly we see a change. The planned runs and the latency upper bound below come from the run plan itself; the measured columns come from the most recent report.
| Airport | Readings per day | Latency (upper bound, hours) | Measured coverage | Measured settled share |
|---|---|---|---|---|
| Schiphol AMS | 5 | 3 | 100% | 78% |
| Brussels Airport BRU | 2 | 10 | 92.9% | 100% |
| Athens ATH | 1 | 24 | 71.4% | 48.8% |
| Barcelona-El Prat BCN | 1 | 24 | 71.4% | 40% |
| Berlin Brandenburg BER | 1 | 24 | 71.4% | 42.2% |
| Brussels Charleroi CRL | 1 | 24 | 71.4% | 42.1% |
| Bucharest Otopeni OTP | 1 | 24 | 71.4% | 49.8% |
| Budapest BUD | 1 | 24 | 71.4% | 42.6% |
| Copenhagen CPH | 1 | 24 | 71.4% | 38.5% |
| Dublin DUB | 1 | 24 | 71.4% | 41.1% |
| Düsseldorf DUS | 1 | 24 | 71.4% | 45.8% |
| Eindhoven Airport EIN | 1 | 24 | 85.7% | 39.7% |
| Frankfurt FRA | 1 | 24 | 71.4% | 37.6% |
| Geneva GVA | 1 | 24 | 71.4% | 45.9% |
| Helsinki HEL | 1 | 24 | 71.4% | 47.6% |
| Krakow KRK | 1 | 24 | 71.4% | 41.2% |
| Lisbon LIS | 1 | 24 | 71.4% | 34.2% |
| Luxembourg LUX | 1 | 24 | 71.4% | 48.3% |
| Madrid-Barajas MAD | 1 | 24 | 71.4% | 41.2% |
| Málaga AGP | 1 | 24 | 71.4% | 37.9% |
| Malta MLA | 1 | 24 | 71.4% | 29.9% |
| Milan Malpensa MXP | 1 | 24 | 71.4% | 40% |
| Munich MUC | 1 | 24 | 71.4% | 41.9% |
| Naples NAP | 1 | 24 | 71.4% | 41.1% |
| Nice NCE | 1 | 24 | 71.4% | 34% |
| Oslo OSL | 1 | 24 | 71.4% | 39.5% |
| Palma de Mallorca PMI | 1 | 24 | 71.4% | 38% |
| Paris Charles de Gaulle CDG | 1 | 24 | 71.4% | 37.8% |
| Paris Orly ORY | 1 | 24 | 71.4% | 39.5% |
| Porto OPO | 1 | 24 | 71.4% | 35.5% |
| Prague PRG | 1 | 24 | 71.4% | 47.5% |
| Rome Fiumicino FCO | 1 | 24 | 71.4% | 37.4% |
| Stockholm Arlanda ARN | 1 | 24 | 71.4% | 40% |
| Vienna VIE | 1 | 24 | 71.4% | 39.4% |
| Warsaw Chopin WAW | 1 | 24 | 71.4% | 41.7% |
| Zagreb ZAG | 1 | 24 | 71.4% | 42.2% |
| Zurich ZRH | 1 | 24 | 71.4% | 41.6% |
Definitions
- scheduledDepartures
- The number of departures scheduled on the board during the period.
- observedDepartures
- The number of scheduled departures we actually saw on a reading.
- settledDepartures
- The number of departures whose final state we saw after the scheduled departure time.
- coverage
- Coverage: the extent to which the planned readings for the period succeeded. A value below 1 means readings failed, not that flights were missing.
- settledShare
- The settled share: settledDepartures divided by scheduledDepartures. This is the honesty measure alongside coverage.
- detectionLatencyHours
- The published upper bound in hours within which a change of state is detected: the largest gap between two planned readings on the same day.
- observationRule
- The observation rule under which the period was measured. Under "mild" a flight on the board counts as observed; under "strict" only once its scheduled departure time has passed.
- thresholdMet
- The number of departures that meet the cancellation or delay threshold of EU 261/2004. Meets the threshold, not an established claim: the cause has not been assessed.
- maxArt7ExposureEur
- The maximum exposure under Art. 7 of EU 261/2004 in whole euros, as an upper bound. Not an established claim, and not a prediction of payouts.
- recovered
- The number of departures that, after an earlier disruption, still departed within the threshold.
- minObservedDepartures
- An airport only enters the ranking from 50 observed departures in the period. Below that line a single cancellation is worth several percent, and a small airport would top the list by chance. The line belongs to methodology version index-v1; it will be reassessed against the actual distribution of observed departures after the first four weekly reports (by 09-11-2026 at the latest), and any change appears as a new methodology version in the changelog below.
What these figures do not say
- Anything announced after the last reading of a flight day is invisible to us that day — and coverage conceals that. The settled share measures exactly that gap.
- An airport read once a day never reaches a settled share of 1.0. That is a property of the measurement, not of the airport.
- We measure departures, not arrivals. A traveller with a disrupted arrival does not appear in these figures.
- The cause of a cancellation or delay is not assessed. Whether an airline rightly invokes extraordinary circumstances is something we test per claim, not in this report.
- A ranking is not a verdict on an airport. A high cancellation rate in a single week can be one bad day.
Reuse
The figures on these pages may be quoted with attribution. We will publish a reusable dataset once the licence of our data source allows it; until then there is deliberately no download file.
Versions
index-v1 2026-10-05
First published methodology: mild observation rule, coverage threshold 0.8, sample threshold 50 observed departures, three latency tiers.
