Data sources and accuracy
Updated automatically on every backtest
Algorithm accuracy
We regularly check the accuracy of our algorithm by comparing predictions against the real delays of flights. Results are based on reconstructed historical data (weather, punctuality, fuel, ATC delays).
The higher the score, the higher the real average delay. In tests on US flights, flights scoring 30+ had an average delay of 128 minutes versus 12 minutes for low-scoring flights.
10 risk factors
The risk score (0-100) is calculated by combining 10 factors with weights calibrated on real historical correlations (without data leakage).
| Factor | Weight | Source | Update |
|---|---|---|---|
| Flight trend | 18% | FlightAware flight history | Continuous |
| Route history | 18% | Internal computation | Continuous |
| Time of day and weekday | 15% | Departure time (internal) | Per flight |
| Airline punctuality | 14% | FlightStats + flight history | Daily |
| ATC delays | 10% | EUROCONTROL | Every 6 hours |
| Strikes | 10% | GDELT + Google News | Every 30 minutes |
| Weather | 9% | OpenMeteo + METAR (NOAA) | Every 30 minutes |
| NOTAM | 2% | notaminfo.com | Every 30 minutes |
| Fuel | 2% | IATA + FRED (NOAA) | Every 6 hours |
| Geopolitical risk | 2% | GDELT | Every 15 minutes |
Data sources
| Source | Data | Type |
|---|---|---|
| OpenMeteo | 16-day weather forecasts for EU airports | Free API |
| NOAA / aviationweather.gov | Real-time METAR (current conditions) | Free API |
| EUROCONTROL | ATFM delays by country/airport | Public data |
| FlightAware | Routes, delay history, cancellations | Public data |
| FlightStats | Airline on-time performance (OTP) | Public data |
| IATA | Global fuel prices | Public data |
| FRED (Federal Reserve) | Historical jet fuel price (daily) | Free API |
| EIA (US Energy) | EU kerosene consumption (YoY%) | Free API |
| GDELT Project | Geopolitical events and strikes | Free API |
| Google News RSS | Flight disruption news (IT/EN/ES) | Free RSS |
| notaminfo.com | Active NOTAMs for EU airports | Public data |
| OpenFlights | Airline routes and carriers | Public dataset |
| OurAirports | Airport database with coordinates | Public dataset |
Limitations
- The risk score is an indicative estimate based on public data. It does not replace official airline communications.
- The correlation between score and real delay is positive but moderate: many delay causes (technical faults, internal operational issues) are not predictable from public data.
- Weights are calibrated on European flights. Accuracy may vary for non-European routes or carriers with little historical data.
- Strikes and NOTAMs are detected from public sources and may include false positives or update delays.
How we verify accuracy
For every European airport and every day of the last 14 months, the real conditions were retrieved and the score the algorithm would have assigned was recomputed. The predicted score was then compared against the actual delays recorded by EUROCONTROL.
- Real weather — actual weather conditions of the day (wind, precipitation)
- ATC delays — pre-departure delay recorded at the airport (EUROCONTROL data)
- Congestion — daily traffic volume at the airport
- Slot adherence — percentage of flights departing in their assigned slot
- Fuel price — daily jet fuel price and year-on-year change
Validation runs automatically every day and results are compared over time to ensure model quality.