LD 2104 Madrid-Puerta de Atocha-Almudena Grandes – Cádiz
Alerts for train 2104
Alerts are saved per line, not per trip id, so they keep working when the operator changes the timetable. This train runs on line LD.
✓ Today’s run finished
Today it reached Cádiz at 15:07 +17 min
- Madrid-Puerta de Atocha-Almudena Grandes10:05
- Sevilla-Santa Justa13:06
- Jerez de la Frontera14:03
- Puerto de Santa María14:16
- San Fernando-Bahía Sur14:33
- Cádiz14:50
Next service: tomorrow 10:05 from Madrid-Puerta de Atocha-Almudena Grandes · Fri 9 Oct
Last 30 days
Arrival delay at Cádiz, in minutes. One bar per run.
- On time (<3 min)
- 3–10 min
- 10–30 min
- 30+ min
- Partial coverage
- No data
Worst days
- Sun 13 Sept Max en route +118 min · last fix heading to Cádiz +113 min
- Wed 2 Sept Max en route +96 min · last fix heading to San Fernando-Bahía Sur +96 min
- Thu 30 Jul Max en route +77 min · last fix heading to Cádiz +77 min
- Sun 6 Sept Max en route +74 min · last fix heading to Cádiz +74 min
- Mon 5 Oct Max en route +81 min · last fix heading to Cádiz +70 min
Distribution · 90 days
76 runs with a known final delay. On time = under 3 min, the same cut the map uses.
- Early 1% · 1
- On time 5% · 4
- 3–10 min 28% · 21
- 10–30 min 42% · 32
- 30+ min 24% · 18
On-time by weekday
- 0% M n=13
- 0% T n=8
- 0% W n=8
- 15% T n=13
- 8% F n=12
- 0% S n=9
- 15% S n=13
Stops and timetable
Timetable of the latest run from the operator’s GTFS (6 stops).
| Stop | Sched. |
|---|---|
| 10:05 | |
| 13:06 / 13:12 | |
| 14:03 / 14:05 | |
| 14:16 / 14:18 | |
| 14:33 / 14:35 | |
| 14:50 |
Each run is closed into train_runs (country, train number, service day) from the live positions. Final delay = last delay seen. Partial coverage: the feed stopped before the final stop (last value used, hatched in the chart). No data: a run without any valid delay; counts as neither on time nor late. Data collected since 11 July 2026.
Recent runs
| Date | Last stop | Final | Max |
|---|---|---|---|
| Thu 8 Oct | Cádiz 15:06 | +17 min | +25 min |
| Mon 5 Oct | Cádiz 15:58 | +70 min | +81 min |
| Sun 4 Oct | Cádiz 14:54 | +5 min | +20 min |
| Fri 2 Oct | Cádiz 14:54 | +4 min | +23 min |
| Thu 1 Oct | Cádiz 14:54 | +3 min | +23 min |
| Mon 28 Sept | Cádiz 14:55 | +6 min | +16 min |
| Sun 27 Sept | Cádiz 14:48 | −2 min | +9 min |
| Fri 25 Sept | Cádiz 14:51 | 0 min | +17 min |
| Thu 24 Sept | Cádiz 14:53 | −1 min | +24 min |
| Mon 21 Sept | Cádiz 14:58 | +9 min | +34 min |
| Sun 20 Sept | Cádiz 14:49 | −1 min | +6 min |
| Fri 18 Sept | Cádiz 15:12 | +22 min | +35 min |
| Thu 17 Sept | Cádiz 14:53 | +1 min | +15 min |
| Mon 14 Sept | Cádiz 14:56 | +8 min | +28 min |
| Sun 13 Sept | Cádiz 16:43 | +113 min | +118 min |
| Fri 11 Sept | Cádiz 15:04 | +14 min | +25 min |
| Thu 10 Sept | Cádiz 14:54 | +5 min | +14 min |
| Mon 7 Sept | Cádiz 14:53 | +5 min | +12 min |
| Sun 6 Sept | Cádiz 16:04 | +74 min | +74 min |
| Sat 5 Sept | Cádiz 14:56 | +7 min | +9 min |
| Fri 4 Sept | Cádiz 14:55 | +6 min | +19 min |
| Thu 3 Sept | Cádiz 15:12 | +21 min | +21 min |
| Wed 2 Sept | San Fernando-Bahía Sur 16:34Partial coverage | +96 min | +96 min |
| Tue 1 Sept | Cádiz 15:05 | +16 min | +19 min |
| Mon 31 Aug | Cádiz 15:31 | +41 min | +41 min |
| Sun 30 Aug | Cádiz 15:03 | +13 min | +16 min |
| Sat 29 Aug | Cádiz 15:26 | +36 min | +37 min |
| Fri 28 Aug | Cádiz 15:45 | +53 min | +63 min |
| Thu 27 Aug | Cádiz 15:03 | +14 min | +16 min |
| Wed 26 Aug | Cádiz 15:01 | +11 min | +18 min |