From 2026-10-19 to 2026-11-02 · computed 2026-11-02 20:16 UTC
How accurate Trenalia and its sources are, measured against what happened afterwards: every night, what the site showed is compared with the real arrival, measured by Trenalia from station boards and from the GPS position recorded throughout the journey. It is fully automatic: nothing is entered by hand.
Trenalia measures on its own when each train arrived: from the destination station's arrivals board (ADIF or RadarDeTrenes) when available, otherwise from the continuously recorded GPS position (entering within 700 m of the station, or an estimate from the last position and speed if it vanishes within 3 km). That arrival is compared here with Renfe's last published delay. Positive bias = Renfe reports more delay than observed.
| Samples | Mean difference (min) | Agree within ±2 min | Renfe bias (min) | p90 | |
|---|---|---|---|---|---|
| All observed arrivals | 33 | 4.8 | 45.5 % | 3.1 | 14 |
| Destination arrivals board | 27 | 5.5 | 40.7 % | 4.2 | 15.4 |
| GPS: entering the station | 4 | 2 | 75 % | -2 | 5.2 |
| GPS: estimated when signal lost nearby | 2 | 2 | 50 % | -2 | 2.8 |
| Boards as the train passes each station | 2,078 | 2.8 | 70.8 % | -0.3 | 6 |
The toughest test: what the site showed at each moment is compared with the arrival measured by Trenalia (board or GPS), not with Renfe's figure. “Official” is Renfe's published delay; “Trenalia” the projected one. Gain = how much Trenalia reduces the official error.
| Samples | Official error (min) | Trenalia error (min) | ±3 min official | ±3 min Trenalia | Bias (min) | Gain | |
|---|---|---|---|---|---|---|---|
| Total | 3,499 | 7.9 | 8.7 | 47.2 % | 38 % | 0.7 | -9.9 % |
| 0–15 min before arrival | 426 | 5.3 | 6 | 50.5 % | 42.7 % | 5.1 | -13.6 % |
| 15–30 min before arrival | 448 | 5.1 | 6.2 | 48.4 % | 42.2 % | 5.4 | -22.3 % |
| 30–60 min before arrival | 761 | 4.6 | 5.9 | 53.2 % | 43 % | 4.3 | -27.4 % |
| 60–120 min before arrival | 1,011 | 5.5 | 6.9 | 45 % | 32.2 % | 2.5 | -25.4 % |
| 2–4 h before arrival | 853 | 16.5 | 16 | 42.1 % | 36 % | -9.1 | +3.2 % |
| Samples | Official error (min) | Trenalia error (min) | ±3 min official | ±3 min Trenalia | Bias (min) | Gain | |
|---|---|---|---|---|---|---|---|
| Media Distancia and regional | 1,484 | 12.5 | 12.9 | 38.6 % | 27.4 % | -3.9 | -2.7 % |
| Euromed and Intercity | 863 | 4 | 4.2 | 47.9 % | 43.5 % | 2 | -6.9 % |
| AVE | 608 | 2.3 | 4.2 | 74.3 % | 62.3 % | 3.6 | -86.3 % |
| Alvia | 227 | 12.3 | 13.6 | 0 % | 0 % | 13.6 | -10.8 % |
| Avant | 200 | 2.5 | 2.6 | 86.5 % | 82.5 % | -0.5 | -2.2 % |
| Avlo | 117 | 7.9 | 12.2 | 34.2 % | 5.1 % | 12.2 | -53.7 % |
| Samples | Official error (min) | Trenalia error (min) | ±3 min official | ±3 min Trenalia | Bias (min) | Gain | |
|---|---|---|---|---|---|---|---|
| 2026-11-01 | 128 | 10.4 | 12.1 | 10.2 % | 3.1 % | 12.1 | -16.3 % |
| 2026-11-02 | 3,371 | 7.8 | 8.5 | 48.6 % | 39.4 % | 0.3 | -9.6 % |
The same, taking as final the last delay Renfe published at the end of the journey (available for almost every journey, but not an independent measure). It shows whether Trenalia anticipates what Renfe will end up reporting.
| Samples | Official error (min) | Trenalia error (min) | ±3 min official | ±3 min Trenalia | Bias (min) | Gain | |
|---|---|---|---|---|---|---|---|
| Total | 9,376 | 7.1 | 8.2 | 50.9 % | 45.6 % | 0.2 | -16.2 % |
| 0–15 min before arrival | 1,004 | 1.1 | 4.2 | 89.7 % | 72.4 % | 3.8 | -284.8 % |
| 15–30 min before arrival | 1,086 | 2.5 | 4.7 | 74.5 % | 62.1 % | 3.4 | -83.2 % |
| 30–60 min before arrival | 1,927 | 3.7 | 5.3 | 54 % | 46.4 % | 3 | -43.3 % |
| 60–120 min before arrival | 2,826 | 7.4 | 7.3 | 40.4 % | 39.1 % | 1 | +0.7 % |
| 2–4 h before arrival | 2,533 | 13.6 | 14.6 | 34.9 % | 34.6 % | -5.6 | -7 % |
| Samples | Official error (min) | Trenalia error (min) | ±3 min official | ±3 min Trenalia | Bias (min) | Gain | |
|---|---|---|---|---|---|---|---|
| Media Distancia and regional | 5,424 | 9 | 11 | 46.8 % | 38.4 % | 0.1 | -22.6 % |
| AVE | 2,155 | 3.6 | 3.6 | 65.6 % | 65.6 % | 0.5 | -1 % |
| Euromed and Intercity | 863 | 4.4 | 4.4 | 55.2 % | 52.5 % | -1.3 | +0.8 % |
| Alvia | 548 | 7.7 | 7.9 | 26.6 % | 27.6 % | 3.7 | -2.1 % |
| Avant | 251 | 3.1 | 3.6 | 68.1 % | 54.2 % | 2.7 | -14.6 % |
| Avlo | 135 | 9.7 | 6 | 24.4 % | 29.6 % | -6 | +37.7 % |
| Samples | Official error (min) | Trenalia error (min) | ±3 min official | ±3 min Trenalia | Bias (min) | Gain | |
|---|---|---|---|---|---|---|---|
| 2026-10-31 | 578 | 11.3 | 12.7 | 55.9 % | 44.6 % | 1 | -12.2 % |
| 2026-11-01 | 4,480 | 5.8 | 6.8 | 47.8 % | 46.7 % | 1.4 | -18.5 % |
| 2026-11-02 | 4,318 | 7.9 | 9.1 | 53.6 % | 44.6 % | -1.1 | -15.2 % |
Trained every night on the history and evaluated on the last week, which is held out from training. They are only switched on if they clearly beat the baseline.
needs more data faltan datos · trained 2026-11-01 04:28 UTC · — of — needed
needs more data faltan alertas etiquetadas · trained 2026-11-01 04:28 UTC · — of — needed
There is no official data to compare them with, so we label what happened afterwards. If the gap kept closing, the alert was consistent with the data; if the train ahead was stopped at a station, it was probably a false alarm (normal operations).
| Candidates evaluated | 949 |
|---|---|
| Alerts shown | 880 |
| Still closing 2 min later | 11.8 % |
| Likely false alarm (train ahead at a station) | 0.9 % |
Automatic check 3 h after each alert shown: whether both trains finished their journey normally, whether Renfe or Adif published an incident in the area, and whether there were network alerts nearby. “No signs” is not official confirmation: official accident data is published by the CIAF.
| No signs | 327 |
|---|---|
| Incident in the area | 215 |
| Mentioning collision or derailment | 0 |
| Signs to review | 170 |
| No data | 38 |
| Reviewed by hand | 0 |
A segment or stopped-train alert counts as confirmed if any train involved gained 3 min or more of delay 10 to 30 min later; a sudden delay jump, if it did not revert (it was not a data glitch).
| Alerts | Checked | Confirmed | |
|---|---|---|---|
| Segment with several trains losing time | 9 | 9 | 77.8 % |
| Train stopped outside a station | 213 | 193 | 62.2 % |
| Sudden delay jump | 39 | 38 | 100 % |
| Total | 261 | 240 | 68.8 % |
| Days with trajectories | 3 |
|---|---|
| Position samples per day | 75,720 |
| Positions snapped to the track | 99.1 % |
| Estimated precision (median) | 144 m · p90 748 m |