Skip to main content
Tomo

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.

AirportReadings per dayLatency (upper bound, hours)Measured coverageMeasured settled share
Schiphol AMS53100%78%
Brussels Airport BRU21092.9%100%
Athens ATH12471.4%48.8%
Barcelona-El Prat BCN12471.4%40%
Berlin Brandenburg BER12471.4%42.2%
Brussels Charleroi CRL12471.4%42.1%
Bucharest Otopeni OTP12471.4%49.8%
Budapest BUD12471.4%42.6%
Copenhagen CPH12471.4%38.5%
Dublin DUB12471.4%41.1%
Düsseldorf DUS12471.4%45.8%
Eindhoven Airport EIN12485.7%39.7%
Frankfurt FRA12471.4%37.6%
Geneva GVA12471.4%45.9%
Helsinki HEL12471.4%47.6%
Krakow KRK12471.4%41.2%
Lisbon LIS12471.4%34.2%
Luxembourg LUX12471.4%48.3%
Madrid-Barajas MAD12471.4%41.2%
Málaga AGP12471.4%37.9%
Malta MLA12471.4%29.9%
Milan Malpensa MXP12471.4%40%
Munich MUC12471.4%41.9%
Naples NAP12471.4%41.1%
Nice NCE12471.4%34%
Oslo OSL12471.4%39.5%
Palma de Mallorca PMI12471.4%38%
Paris Charles de Gaulle CDG12471.4%37.8%
Paris Orly ORY12471.4%39.5%
Porto OPO12471.4%35.5%
Prague PRG12471.4%47.5%
Rome Fiumicino FCO12471.4%37.4%
Stockholm Arlanda ARN12471.4%40%
Vienna VIE12471.4%39.4%
Warsaw Chopin WAW12471.4%41.7%
Zagreb ZAG12471.4%42.2%
Zurich ZRH12471.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

  1. index-v1 2026-10-05

    First published methodology: mild observation rule, coverage threshold 0.8, sample threshold 50 observed departures, three latency tiers.