Train regional 31M02
The mini-map returns when the train runs
On-time · 30 days
27%
6/22 runs under 3 min
RT coverage: 22 full · 0 partial · 0 no data
On-time · 90 days
17%
12/72 runs under 3 min
RT coverage: 72 full · 0 partial · 1 no data
Typical delay
+8min
Median at arrival, 90 days
30 days: +5 min
P90
+33min
9 in 10 runs arrive with less than this
30 days: +14 min
Last 30 days
Delay at the end of each run, in minutes. One bar per run.
- On time (<3 min)
- 3–10 min
- 10–30 min
- 30+ min
- Partial coverage
- No data
Worst days
- Mon 27 Jul Max en route +83 min · last fix heading to 72268 +81 min
- Sun 30 Aug Max en route +82 min · last fix heading to 72268 +71 min
- Fri 7 Aug Max en route +68 min · last fix heading to 72268 +57 min
- Mon 3 Aug Max en route +59 min · last fix heading to 72268 +57 min
- Wed 15 Jul Max en route +58 min · last fix heading to 72268 +57 min
Distribution · 90 days
72 runs with a known final delay. On time = under 3 min, the same cut the map uses.
- Early 6% · 4
- On time 11% · 8
- 3–10 min 44% · 32
- 10–30 min 26% · 19
- 30+ min 13% · 9
On-time by weekday
- 10% M n=10
- 18% T n=11
- 9% W n=11
- 17% T n=12
- 0% F n=11
- 50% S n=10
- 14% S n=7
Recent runs
| Date | Last stop | Final | Max |
|---|---|---|---|
| Fri 9 Oct | Harrow & Wealdstone 18:16 | +9 min | +9 min |
| Thu 8 Oct | Harrow & Wealdstone 18:15 | +6 min | +8 min |
| Wed 7 Oct | Harrow & Wealdstone 18:10 | +3 min | +5 min |
| Tue 6 Oct | Wembley Central 18:07 | 0 min | +3 min |
| Mon 5 Oct | Harrow & Wealdstone 18:24 | +16 min | +24 min |
| Sat 3 Oct | 42128 17:50 | +4 min | +4 min |
| Fri 2 Oct | 72268 18:11 | +3 min | +5 min |
| Thu 1 Oct | 72268 18:10 | +2 min | +3 min |
| Wed 30 Sept | 72268 18:14 | +6 min | +6 min |
| Tue 29 Sept | 72268 18:09 | +2 min | +3 min |
| Mon 28 Sept | 72268 18:10 | +2 min | +7 min |
| Sat 26 Sept | 42128 17:48 | +3 min | +4 min |
| Fri 25 Sept | 72268 18:12 | +4 min | +9 min |
| Sun 20 Sept | 72268 23:11 | +8 min | +17 min |
| Sat 19 Sept | 42128 17:45 | −1 min | +7 min |
| Fri 18 Sept | 72268 18:17 | +9 min | +30 min |
| Thu 17 Sept | 72268 18:17 | +9 min | +12 min |
| Wed 16 Sept | 72268 18:25 | +16 min | +28 min |
| Tue 15 Sept | 72268 18:16 | +8 min | +8 min |
| Mon 14 Sept | 72268 18:18 | +10 min | +10 min |
| Sun 13 Sept | 72268 23:16 | +14 min | +15 min |
| Sat 12 Sept | 42128 17:44 | −2 min | +5 min |
| Fri 11 Sept | 72268 18:13 | +5 min | +6 min |
| Thu 10 Sept | 72268 18:24 | +17 min | +17 min |
| Wed 9 Sept | 72268 18:21 | +13 min | +21 min |
| Tue 8 Sept | 72268 18:27 | +19 min | +19 min |
| Mon 7 Sept | 72268 18:27 | +19 min | +19 min |
| Sun 6 Sept | 72268 22:57 | −6 min | +3 min |
| Thu 3 Sept | 72268 18:35 | +27 min | +27 min |
| Wed 2 Sept | 72268 18:14 | +6 min | +6 min |
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.