Transport for Wales
90% of Transport for Wales's 36,190 recorded arrivals from 6 Aug 2026 to 23 Sept 2026 were within five minutes, putting it 2.7 points clear of the network average for the same dates.
Over 49 archived days that is 1,239 services a day, 5.0% of the national timetable. Of 36,190 recorded arrivals, 32,595 were within five minutes and 304 were more than half an hour down.
Its week is strongly peaked: 1,586 services on Friday, 7 August 2026 against 786 on Sunday, 16 August 2026, a swing of 2.0 times.
The average delay at destination was 0.5 minutes. The worst single arrival recorded was 3h 08m behind schedule, Wrexham Central to Bidston on Thursday, 17 September 2026.
Between Saturday, 8 August 2026 at 79% and Thursday, 10 September 2026 at 95% there are 16 points.
1,782 services were cancelled, 2.9% of everything booked — close to the 2.4% the network cancelled over the same dates. The worst single day was Wednesday, 23 September 2026, at 8% of that day's timetable.
Counting those cancellations as failures, the way the industry's own measure does, takes the on-time share from 90% of recorded arrivals to 86% of everything booked whose outcome is known — 4.2 points.
Ranked on on-time share of recorded arrivals against the 30 operators with enough of them to compare, Transport for Wales comes 11th.
Transport for Wales in numbers
| Archived days covered | 49 | 6 Aug 2026 to 23 Sept 2026 |
|---|---|---|
| Passenger trains recorded | 60,726 | |
| Share of the national timetable | 5.0% | of 1,203,226 over the same dates |
| Cancelled | 1,782 | 2.9% · network 2.4% |
| Arrival time recorded | 36,190 | 61.4% of those that ran |
| …arrived within 5 minutes | 32,595 | 90.1% |
| …arrived 5 to 30 minutes late | 3,291 | 9.1% |
| …arrived more than 30 minutes late | 304 | 0.8% |
| Average delay at destination | 0.5 min | |
| On time, counting cancellations | 85.8% | of the 37,972 booked services whose outcome is known · network 84% |
| Network, same dates | 87% | on time, against this operator's 90% |
Every percentage among the bands is of the 36,190 services whose arrival reached the archive, not of all 60,726, and the bands are exclusive. 22,754 ran without an arrival being recorded, and nothing is claimed about those. The row counting cancellations is those same 32,595 on-time arrivals over a denominator that also holds the 1,782 trains that did not run at all. Delay is judged at the destination, a stricter test than the industry's own measure and not comparable with it. The on-time share and the average delay answer different questions.
Day by day
49 archived days, 6 Aug 2026 to 23 Sept 2026, widest bar the busiest, filled to the share that arrived within five minutes. The same days across every operator.
| Date | Runs | Cancelled | Arrivals | On time | Incl. cancelled | Avg delay |
|---|---|---|---|---|---|---|
| Wednesday, 23 September 2026 | 1,259 | 8% | 803 | 92% | 81% | 0.1 min early |
| Tuesday, 22 September 2026 | 1,215 | 4% | 971 | 90% | 85% | 0.4 min |
| Monday, 21 September 2026 | 1,233 | 7% | 945 | 90% | 82% | 0.2 min |
| Sunday, 20 September 2026 | 818 | 3% | 647 | 90% | 87% | 0.5 min |
| Saturday, 19 September 2026 | 1,357 | 7% | 834 | 82% | 74% | 1.8 min |
| Friday, 18 September 2026 | 1,249 | 3% | 1,006 | 92% | 88% | 0 min |
| Thursday, 17 September 2026 | 1,235 | 3% | 714 | 94% | 90% | 0.2 min early |
| Wednesday, 16 September 2026 | 1,250 | 2% | 847 | 93% | 89% | 0.1 min early |
| Tuesday, 15 September 2026 | 1,202 | 4% | 897 | 92% | 88% | 0.2 min early |
| Monday, 14 September 2026 | 1,173 | 6% | 908 | 92% | 86% | 0.1 min early |
| Sunday, 13 September 2026 | 806 | 2% | 590 | 92% | 90% | 0.2 min early |
| Saturday, 12 September 2026 | 1,261 | 2% | 832 | 89% | 86% | 0.4 min |
| Friday, 11 September 2026 | 1,213 | 2% | 993 | 92% | 90% | 0.5 min |
| Thursday, 10 September 2026 | 1,222 | 3% | 958 | 95% | 91% | 0.8 min early |
| Wednesday, 9 September 2026 | 1,275 | 1% | 957 | 94% | 93% | 0.4 min early |
| Tuesday, 8 September 2026 | 1,230 | 3% | 972 | 92% | 89% | 0.1 min |
| Monday, 7 September 2026 | 1,212 | 1% | 970 | 94% | 93% | 0.3 min early |
| Sunday, 6 September 2026 | 802 | 0% | 643 | 92% | 92% | 0.3 min early |
| Saturday, 5 September 2026 | 1,294 | 2% | 979 | 88% | 86% | 1 min |
| Friday, 4 September 2026 | 1,254 | 2% | 1,047 | 91% | 90% | 0.5 min |
| Thursday, 3 September 2026 | 1,242 | 3% | 914 | 94% | 91% | 0.2 min early |
| Wednesday, 2 September 2026 | 1,241 | 2% | 952 | 94% | 91% | 0.3 min early |
| Tuesday, 1 September 2026 | 1,302 | 5% | 996 | 90% | 85% | 0.5 min |
| Monday, 31 August 2026 | 1,201 | 5% | 929 | 86% | 81% | 1.3 min |
| Sunday, 30 August 2026 | 843 | 1% | 651 | 89% | 88% | 0.8 min |
| Saturday, 29 August 2026 | 1,298 | 3% | 983 | 92% | 89% | 0.1 min early |
| Friday, 28 August 2026 | 1,303 | 3% | 972 | 87% | 84% | 1.5 min |
| Thursday, 27 August 2026 | 1,303 | 1% | 1,012 | 88% | 86% | 1.4 min |
| Wednesday, 26 August 2026 | 1,307 | 3% | 955 | 87% | 83% | 1.3 min |
| Tuesday, 25 August 2026 | 1,308 | 2% | 969 | 89% | 86% | 0.8 min |
| Monday, 24 August 2026 | 1,303 | 3% | 959 | 87% | 84% | 1.2 min |
| Sunday, 23 August 2026 | 821 | 1% | 650 | 86% | 85% | 1.7 min |
| Saturday, 22 August 2026 | 1,266 | 2% | 913 | 86% | 83% | 0.8 min |
| Friday, 21 August 2026 | 1,253 | 4% | 906 | 89% | 85% | 0.4 min |
| Thursday, 20 August 2026 | 1,236 | 3% | 857 | 91% | 88% | 0.2 min |
| Wednesday, 19 August 2026 | 1,267 | 2% | 947 | 91% | 89% | 0.2 min |
| Tuesday, 18 August 2026 | 1,256 | 1% | 878 | 94% | 92% | 0.2 min early |
| Monday, 17 August 2026 | 1,304 | 2% | 861 | 90% | 87% | 0.2 min |
| Sunday, 16 August 2026 | 786 | 2% | 577 | 87% | 84% | 0.8 min |
| Saturday, 15 August 2026 | 1,485 | 1% | 682 | 85% | 84% | 1.3 min |
| Friday, 14 August 2026 | 1,532 | 0% | 134 | 84% | 84% | 3.4 min |
| Thursday, 13 August 2026 | 1,505 | 4% | 36 | 69% | 24% | 6.4 min |
| Wednesday, 12 August 2026 | 1,553 | 5% | 12 | 75% | 9% | 2.8 min |
| Tuesday, 11 August 2026 | 1,442 | 3% | 128 | 86% | 66% | 1.6 min |
| Monday, 10 August 2026 | 1,383 | 0% | 186 | 91% | 89% | 0 min |
| Sunday, 9 August 2026 | 932 | 0% | 59 | 88% | 88% | 2.9 min |
| Saturday, 8 August 2026 | 1,531 | 0% | 512 | 79% | 78% | 5 min |
| Friday, 7 August 2026 | 1,586 | 5% | 42 | 76% | 25% | 1.3 min |
| Thursday, 6 August 2026 | 1,377 | 6% | 5 | 60% | 3% | 6 min |
In the daily longest-delay league
Transport for Wales appears 24 times across 49 archived days, on 10 separate dates in the ten shown. These are appearances in the daily league, not this operator's own worst delays.
| Date | Service | Late by |
|---|---|---|
| 17 Sept 2026 | Wrexham Central to Bidston 09:16 · 2F56 | 3h 08m |
| 30 Aug 2026 | Milford Haven to Manchester Piccadilly 13:41 · 1W61 | 2h 30m |
| 7 Sept 2026 | Manchester Piccadilly to Cardiff Central 20:30 · 1V66 | 2h 00m |
| 15 Aug 2026 | Aberystwyth to Machynlleth 23:37 · 2J53 | 1h 53m |
| 31 Aug 2026 | Manchester Airport to Holyhead 10:25 · 1D35 | 1h 49m |
| 16 Sept 2026 | Aberdare to Merthyr Tydfil 14:22 · 1M40 | 1h 35m |
| 13 Aug 2026 | Manchester Piccadilly to Cardiff Central 18:30 · 1V62 | 1h 33m |
| 20 Sept 2026 | Swansea to Pembroke Dock 16:50 · 2E22 | 1h 32m |
| 8 Aug 2026 | Milford Haven to Manchester Piccadilly 14:59 · 1W24 | 1h 24m |
| 19 Sept 2026 | Cardiff Central to Swansea 11:55 · 1B42 | 1h 21m |
Recorded live from the Darwin and TRUST feeds on each of the 49 days above,
and aggregated here. AW is this operator's ATOC code. How these figures are measured · All operators · Sources and licences