TransPennine Express 321P95

View line TransPennine Express

Daily TransPennine Express

โœ“ Todayโ€™s run finished

Today, last fix heading to โ€” at 07:07 โˆ’2 min

The mini-map returns when the train runs
On-time ยท 30 days
90%
26/29 runs under 3 min
RT coverage: 29 full ยท 0 partial ยท 0 no data
On-time ยท 90 days
80%
56/70 runs under 3 min
RT coverage: 70 full ยท 0 partial ยท 0 no data
Typical delay
โˆ’1min
Median at arrival, 90 days
30 days: โˆ’2 min
P90
+11min
9 in 10 runs arrive with less than this
30 days: +2 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 28 Sept Max en route +92 min ยท last fix heading to 16491 +86 min
  • Sun 27 Sept Max en route +57 min ยท last fix heading to 18469 +57 min
  • Mon 17 Aug Max en route +68 min ยท last fix heading to 18469 +56 min
  • Sun 25 Oct Max en route +54 min ยท last fix heading to Morley +52 min
  • Tue 13 Oct Max en route +38 min ยท last fix heading to Todmorden +36 min

Distribution ยท 90 days

70 runs with a known final delay. On time = under 3 min, the same cut the map uses.

  • Early 47% ยท 33
  • On time 33% ยท 23
  • 3โ€“10 min 9% ยท 6
  • 10โ€“30 min 4% ยท 3
  • 30+ min 7% ยท 5

On-time by weekday

  • 83% M n=12
  • 73% T n=11
  • 100% W n=10
  • 91% T n=11
  • 82% F n=11
  • 43% S n=7
  • 75% S n=8

Recent runs

DateLast stopFinalMax
Tue 3 Novโ€” 07:07โˆ’2 minโ€”
Mon 2 NovTodmorden 01:38โˆ’7 min+7 min
Sun 1 NovMorley 00:09โˆ’1 min+2 min
Sat 31 OctMorley 00:05+4 min+7 min
Fri 30 OctDeansgate 23:10+1 min+2 min
Thu 29 OctHuddersfield 01:02โˆ’3 min+2 min
Wed 28 OctHuddersfield 01:05+1 min+4 min
Tue 27 OctHuddersfield 01:00โˆ’5 min+14 min
Mon 26 OctHuddersfield 00:58โˆ’6 min+16 min
Sun 25 OctMorley 01:12+52 min+54 min
Sat 24 OctMorley 00:020 min+2 min
Fri 23 OctMorley 00:25โˆ’2 min+1 min
Thu 22 OctMorley 01:15โˆ’10 min+9 min
Wed 21 OctMorley 01:19โˆ’6 min+9 min
Tue 20 OctMorley 01:17โˆ’8 min+5 min
Mon 19 OctMorley 01:20โˆ’5 min+4 min
Sun 18 OctMorley 01:00+1 min+2 min
Sat 17 OctMorley 00:10โˆ’2 min+2 min
Fri 16 OctMorley 01:07โˆ’2 min+2 min
Thu 15 OctTodmorden 01:32โˆ’15 min+1 min
Wed 14 OctTodmorden 01:40โˆ’7 min+10 min
Tue 13 OctTodmorden 02:13+36 min+38 min
Mon 12 OctTodmorden 01:39+2 min+9 min
Sun 11 OctMorley 00:14โˆ’5 min+1 min
Fri 9 OctMorley 00:26โˆ’1 min+5 min
Thu 8 OctMicklefield 01:16โˆ’6 min+5 min
Wed 7 OctMicklefield 01:16โˆ’6 min+3 min
Tue 6 OctChurch Fenton 01:23โˆ’1 min+2 min
Mon 5 OctChurch Fenton 01:18โˆ’6 min+6 min
Sun 4 Oct16491 00:46โˆ’3 min+9 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.