{
 "meta": {
  "title": "UK rail reliability: punctuality and cancellations",
  "standfirst": "Britain's rail network runs around 1.9 million train services a quarter. In the latest quarter (Jan to Mar 2026), 68.79% of recorded station stops arrived within 59 seconds of schedule and 86.41% arrived within 3 minutes. The Public Performance Measure, which counts trains reaching their final destination on time, stood at 87.09%. Cancellations ran at 3.2% of trains planned. This page maps what the numbers say, where they are worst, and how the network has changed since 2019.",
  "basis": "Punctuality and cancellation figures are published quarterly by the Office of Rail and Road (ORR), using data provided by Network Rail. The on time measure counts whether each recorded station stop is reached within 59 seconds of the scheduled time. The Public Performance Measure (PPM) counts whether a train reaches its final destination within 5 minutes (commuter and regional) or 10 minutes (long distance) of schedule. The cancellations figure combines full cancellations and half weight part cancellations. Data cover Great Britain; Northern Ireland's railways are not included.",
  "sourceNote": "Computed from ORR Table 3133 (punctuality by operator, quarterly, April 2014 to March 2026), Table 3123 (cancellations by operator and cause, quarterly, April 2019 to March 2026), and Table 3113 (PPM by operator, quarterly, April 2019 to March 2026). All published 28 May 2026 under Open Government Licence v3.0. Latest quarter data are provisional.",
  "latestPeriod": "Jan to Mar 2026",
  "nationalOnTimePct": 68.79,
  "national3minPct": 86.41,
  "nationalPpmPct": 87.09,
  "nationalCancPct": 3.2,
  "onTimeDeltaYearAgo": 0.7,
  "cancDeltaYearAgo": -0.23,
  "peakCancFy": "2024/25",
  "peakCancPct": 4.07,
  "dataFromFy": "2014/15",
  "dataToFy": "2025/26",
  "publishedDate": "28 May 2026"
 },
 "nationalPunctualityTrend": {
  "eyebrow": "National trend",
  "heading": "How punctuality has moved since 2019",
  "intro": "Before the pandemic, around 9 in 10 trains were meeting the Public Performance Measure. Punctuality deteriorated sharply in 2021 to 2022 as services recovered unevenly and the network faced a combination of staff shortages, infrastructure faults, and industrial action. In the latest quarter, 86.41% of station stops were reached within 3 minutes of schedule and the PPM stood at 87.09%. The strict on time measure (within 59 seconds) gives a harder read: 68.79%.",
  "seriesOnTime": [
   {
    "period": "Apr to Jun 2014",
    "onTimePct": 67.82,
    "threeminPct": 87.64
   },
   {
    "period": "Jul to Sep 2014",
    "onTimePct": 65.61,
    "threeminPct": 85.92
   },
   {
    "period": "Oct to Dec 2014",
    "onTimePct": 58.65,
    "threeminPct": 80.56
   },
   {
    "period": "Jan to Mar 2015",
    "onTimePct": 65.63,
    "threeminPct": 85.68
   },
   {
    "period": "Apr to Jun 2015",
    "onTimePct": 67.51,
    "threeminPct": 87.27
   },
   {
    "period": "Jul to Sep 2015",
    "onTimePct": 65.14,
    "threeminPct": 85.8
   },
   {
    "period": "Oct to Dec 2015",
    "onTimePct": 57.04,
    "threeminPct": 79.43
   },
   {
    "period": "Jan to Mar 2016",
    "onTimePct": 63.24,
    "threeminPct": 84.38
   },
   {
    "period": "Apr to Jun 2016",
    "onTimePct": 65.27,
    "threeminPct": 85.63
   },
   {
    "period": "Jul to Sep 2016",
    "onTimePct": 62.28,
    "threeminPct": 83.55
   },
   {
    "period": "Oct to Dec 2016",
    "onTimePct": 56.11,
    "threeminPct": 78.52
   },
   {
    "period": "Jan to Mar 2017",
    "onTimePct": 64.21,
    "threeminPct": 84.79
   },
   {
    "period": "Apr to Jun 2017",
    "onTimePct": 67.05,
    "threeminPct": 86.8
   },
   {
    "period": "Jul to Sep 2017",
    "onTimePct": 64.56,
    "threeminPct": 85.19
   },
   {
    "period": "Oct to Dec 2017",
    "onTimePct": 57.25,
    "threeminPct": 79.18
   },
   {
    "period": "Jan to Mar 2018",
    "onTimePct": 62.33,
    "threeminPct": 82.97
   },
   {
    "period": "Apr to Jun 2018",
    "onTimePct": 64.87,
    "threeminPct": 84.21
   },
   {
    "period": "Jul to Sep 2018",
    "onTimePct": 63.18,
    "threeminPct": 82.72
   },
   {
    "period": "Oct to Dec 2018",
    "onTimePct": 58.96,
    "threeminPct": 79.57
   },
   {
    "period": "Jan to Mar 2019",
    "onTimePct": 66.95,
    "threeminPct": 85.94
   },
   {
    "period": "Apr to Jun 2019",
    "onTimePct": 69.5,
    "threeminPct": 87.54
   },
   {
    "period": "Jul to Sep 2019",
    "onTimePct": 65.12,
    "threeminPct": 84.23
   },
   {
    "period": "Oct to Dec 2019",
    "onTimePct": 59.39,
    "threeminPct": 79.67
   },
   {
    "period": "Jan to Mar 2020",
    "onTimePct": 65.71,
    "threeminPct": 84.24
   },
   {
    "period": "Apr to Jun 2020",
    "onTimePct": 86.49,
    "threeminPct": 95.8
   },
   {
    "period": "Jul to Sep 2020",
    "onTimePct": 79.36,
    "threeminPct": 92.82
   },
   {
    "period": "Oct to Dec 2020",
    "onTimePct": 74.75,
    "threeminPct": 90.68
   },
   {
    "period": "Jan to Mar 2021",
    "onTimePct": 80.46,
    "threeminPct": 93.12
   },
   {
    "period": "Apr to Jun 2021",
    "onTimePct": 78.1,
    "threeminPct": 92.23
   },
   {
    "period": "Jul to Sep 2021",
    "onTimePct": 74.44,
    "threeminPct": 90.1
   },
   {
    "period": "Oct to Dec 2021",
    "onTimePct": 67.67,
    "threeminPct": 85.87
   },
   {
    "period": "Jan to Mar 2022",
    "onTimePct": 72.5,
    "threeminPct": 88.99
   },
   {
    "period": "Apr to Jun 2022",
    "onTimePct": 72.58,
    "threeminPct": 88.75
   },
   {
    "period": "Jul to Sep 2022",
    "onTimePct": 67.73,
    "threeminPct": 85.39
   },
   {
    "period": "Oct to Dec 2022",
    "onTimePct": 62.28,
    "threeminPct": 81.6
   },
   {
    "period": "Jan to Mar 2023",
    "onTimePct": 68.2,
    "threeminPct": 85.77
   },
   {
    "period": "Apr to Jun 2023",
    "onTimePct": 70.73,
    "threeminPct": 87.12
   },
   {
    "period": "Jul to Sep 2023",
    "onTimePct": 69.22,
    "threeminPct": 86.35
   },
   {
    "period": "Oct to Dec 2023",
    "onTimePct": 62.15,
    "threeminPct": 81.15
   },
   {
    "period": "Jan to Mar 2024",
    "onTimePct": 68.26,
    "threeminPct": 85.92
   },
   {
    "period": "Apr to Jun 2024",
    "onTimePct": 70.11,
    "threeminPct": 86.91
   },
   {
    "period": "Jul to Sep 2024",
    "onTimePct": 67.66,
    "threeminPct": 85.1
   },
   {
    "period": "Oct to Dec 2024",
    "onTimePct": 62.11,
    "threeminPct": 81.08
   },
   {
    "period": "Jan to Mar 2025",
    "onTimePct": 68.09,
    "threeminPct": 85.95
   },
   {
    "period": "Apr to Jun 2025",
    "onTimePct": 68.99,
    "threeminPct": 86.27
   },
   {
    "period": "Jul to Sep 2025",
    "onTimePct": 66.79,
    "threeminPct": 84.77
   },
   {
    "period": "Oct to Dec 2025",
    "onTimePct": 62.17,
    "threeminPct": 81.54
   },
   {
    "period": "Jan to Mar 2026 [p]",
    "onTimePct": 68.79,
    "threeminPct": 86.41
   }
  ],
  "annualPpmTrend": [
   {
    "fy": "2019/20",
    "ppmPct": 86.14,
    "quarters": 4
   },
   {
    "fy": "2020/21",
    "ppmPct": 93.57,
    "quarters": 4
   },
   {
    "fy": "2021/22",
    "ppmPct": 89.78,
    "quarters": 4
   },
   {
    "fy": "2022/23",
    "ppmPct": 86.27,
    "quarters": 4
   },
   {
    "fy": "2023/24",
    "ppmPct": 85.66,
    "quarters": 4
   },
   {
    "fy": "2024/25",
    "ppmPct": 85.19,
    "quarters": 4
   },
   {
    "fy": "2025/26",
    "ppmPct": 85.55,
    "quarters": 4
   }
  ],
  "annualOnTimeTrend": [
   {
    "fy": "2014/15",
    "onTimePct": 64.43,
    "threeminPct": 84.95,
    "quarters": 4
   },
   {
    "fy": "2015/16",
    "onTimePct": 63.23,
    "threeminPct": 84.22,
    "quarters": 4
   },
   {
    "fy": "2016/17",
    "onTimePct": 61.97,
    "threeminPct": 83.12,
    "quarters": 4
   },
   {
    "fy": "2017/18",
    "onTimePct": 62.8,
    "threeminPct": 83.53,
    "quarters": 4
   },
   {
    "fy": "2018/19",
    "onTimePct": 63.49,
    "threeminPct": 83.11,
    "quarters": 4
   },
   {
    "fy": "2019/20",
    "onTimePct": 64.93,
    "threeminPct": 83.92,
    "quarters": 4
   },
   {
    "fy": "2020/21",
    "onTimePct": 80.27,
    "threeminPct": 93.11,
    "quarters": 4
   },
   {
    "fy": "2021/22",
    "onTimePct": 73.18,
    "threeminPct": 89.3,
    "quarters": 4
   },
   {
    "fy": "2022/23",
    "onTimePct": 67.7,
    "threeminPct": 85.38,
    "quarters": 4
   },
   {
    "fy": "2023/24",
    "onTimePct": 67.59,
    "threeminPct": 85.14,
    "quarters": 4
   },
   {
    "fy": "2024/25",
    "onTimePct": 66.99,
    "threeminPct": 84.76,
    "quarters": 4
   },
   {
    "fy": "2025/26",
    "onTimePct": 66.69,
    "threeminPct": 84.75,
    "quarters": 4
   }
  ]
 },
 "cancellationsTrend": {
  "eyebrow": "Cancellations",
  "heading": "The rise in cancelled trains",
  "intro": "Cancellations have risen substantially since 2019. In the first quarter of 2019/20, 2.42% of trains were cancelled. The rate peaked at 4.07% in 2024/25 (annual average). In the latest quarter, the national rate was 3.2%.",
  "seriesCancellations": [
   {
    "period": "Apr to Jun 2019",
    "cancPct": 2.42,
    "cancMaaPct": null
   },
   {
    "period": "Jul to Sep 2019",
    "cancPct": 3.38,
    "cancMaaPct": null
   },
   {
    "period": "Oct to Dec 2019",
    "cancPct": 4.09,
    "cancMaaPct": null
   },
   {
    "period": "Jan to Mar 2020",
    "cancPct": 3.76,
    "cancMaaPct": 3.41
   },
   {
    "period": "Apr to Jun 2020",
    "cancPct": 1.24,
    "cancMaaPct": 3.3
   },
   {
    "period": "Jul to Sep 2020",
    "cancPct": 2.12,
    "cancMaaPct": 2.99
   },
   {
    "period": "Oct to Dec 2020",
    "cancPct": 2.36,
    "cancMaaPct": 2.49
   },
   {
    "period": "Jan to Mar 2021",
    "cancPct": 2.38,
    "cancMaaPct": 2.07
   },
   {
    "period": "Apr to Jun 2021",
    "cancPct": 2.29,
    "cancMaaPct": 2.29
   },
   {
    "period": "Jul to Sep 2021",
    "cancPct": 3.36,
    "cancMaaPct": 2.61
   },
   {
    "period": "Oct to Dec 2021",
    "cancPct": 3.71,
    "cancMaaPct": 2.96
   },
   {
    "period": "Jan to Mar 2022",
    "cancPct": 3.87,
    "cancMaaPct": 3.31
   },
   {
    "period": "Apr to Jun 2022",
    "cancPct": 3.12,
    "cancMaaPct": 3.51
   },
   {
    "period": "Jul to Sep 2022",
    "cancPct": 4.08,
    "cancMaaPct": 3.7
   },
   {
    "period": "Oct to Dec 2022",
    "cancPct": 4.44,
    "cancMaaPct": 3.87
   },
   {
    "period": "Jan to Mar 2023",
    "cancPct": 3.38,
    "cancMaaPct": 3.74
   },
   {
    "period": "Apr to Jun 2023",
    "cancPct": 3.28,
    "cancMaaPct": 3.78
   },
   {
    "period": "Jul to Sep 2023",
    "cancPct": 3.51,
    "cancMaaPct": 3.63
   },
   {
    "period": "Oct to Dec 2023",
    "cancPct": 4.86,
    "cancMaaPct": 3.76
   },
   {
    "period": "Jan to Mar 2024",
    "cancPct": 3.32,
    "cancMaaPct": 3.74
   },
   {
    "period": "Apr to Jun 2024",
    "cancPct": 3.49,
    "cancMaaPct": 3.79
   },
   {
    "period": "Jul to Sep 2024",
    "cancPct": 4.23,
    "cancMaaPct": 3.97
   },
   {
    "period": "Oct to Dec 2024",
    "cancPct": 5.11,
    "cancMaaPct": 4.04
   },
   {
    "period": "Jan to Mar 2025",
    "cancPct": 3.43,
    "cancMaaPct": 4.07
   },
   {
    "period": "Apr to Jun 2025",
    "cancPct": 3.18,
    "cancMaaPct": 3.98
   },
   {
    "period": "Jul to Sep 2025",
    "cancPct": 3.75,
    "cancMaaPct": 3.86
   },
   {
    "period": "Oct to Dec 2025",
    "cancPct": 3.97,
    "cancMaaPct": 3.58
   },
   {
    "period": "Jan to Mar 2026 [p]",
    "cancPct": 3.2,
    "cancMaaPct": 3.53
   }
  ],
  "annualCancTrend": [
   {
    "fy": "2019/20",
    "cancPct": 3.41,
    "quarters": 4
   },
   {
    "fy": "2020/21",
    "cancPct": 2.02,
    "quarters": 4
   },
   {
    "fy": "2021/22",
    "cancPct": 3.31,
    "quarters": 4
   },
   {
    "fy": "2022/23",
    "cancPct": 3.75,
    "quarters": 4
   },
   {
    "fy": "2023/24",
    "cancPct": 3.74,
    "quarters": 4
   },
   {
    "fy": "2024/25",
    "cancPct": 4.07,
    "quarters": 4
   },
   {
    "fy": "2025/26",
    "cancPct": 3.53,
    "quarters": 4
   }
  ]
 },
 "operatorLeague": {
  "eyebrow": "By operator",
  "heading": "Which train companies are most and least reliable",
  "intro": "Performance varies considerably across train operating companies. In the latest quarter (Jan to Mar 2026), Greater Anglia had the highest on time rate at 82.18%, while Avanti West Coast had the lowest at 42.2%. On cancellations, Hull Trains had the fewest at 1.32% and CrossCountry had the most at 6.97%. Operators differ in type of service: commuter, long distance, and freight mix all affect scores.",
  "latestPeriod": "Jan to Mar 2026",
  "rankByOnTime": [
   {
    "operator": "Greater Anglia",
    "onTimePct": 82.18,
    "threeminPct": 92.53,
    "ppmPct": 93.46,
    "cancPct": 1.62
   },
   {
    "operator": "Chiltern Railways",
    "onTimePct": 80.38,
    "threeminPct": 91.2,
    "ppmPct": 92.19,
    "cancPct": 1.47
   },
   {
    "operator": "Elizabeth line",
    "onTimePct": 78.66,
    "threeminPct": 90.86,
    "ppmPct": 91.01,
    "cancPct": 3.03
   },
   {
    "operator": "c2c",
    "onTimePct": 78.37,
    "threeminPct": 93.21,
    "ppmPct": 92.17,
    "cancPct": 1.58
   },
   {
    "operator": "Heathrow Express",
    "onTimePct": 77.61,
    "threeminPct": 92.0,
    "ppmPct": 91.72,
    "cancPct": 2.81
   },
   {
    "operator": "TfW Rail",
    "onTimePct": 74.92,
    "threeminPct": 89.08,
    "ppmPct": 89.7,
    "cancPct": 3.27
   },
   {
    "operator": "London Overground",
    "onTimePct": 70.34,
    "threeminPct": 91.04,
    "ppmPct": 91.29,
    "cancPct": 4.02
   },
   {
    "operator": "ScotRail",
    "onTimePct": 69.67,
    "threeminPct": 89.24,
    "ppmPct": 91.01,
    "cancPct": 1.61
   },
   {
    "operator": "West Midlands Trains",
    "onTimePct": 69.47,
    "threeminPct": 85.37,
    "ppmPct": 85.24,
    "cancPct": 4.2
   },
   {
    "operator": "Merseyrail",
    "onTimePct": 69.14,
    "threeminPct": 90.94,
    "ppmPct": 92.39,
    "cancPct": 2.46
   },
   {
    "operator": "Govia Thameslink Railway",
    "onTimePct": 69.01,
    "threeminPct": 85.84,
    "ppmPct": 84.18,
    "cancPct": 4.4
   },
   {
    "operator": "Southeastern",
    "onTimePct": 68.5,
    "threeminPct": 86.96,
    "ppmPct": 87.77,
    "cancPct": 1.82
   },
   {
    "operator": "South Western Railway",
    "onTimePct": 68.0,
    "threeminPct": 85.55,
    "ppmPct": 83.47,
    "cancPct": 3.62
   },
   {
    "operator": "Great Western Railway",
    "onTimePct": 65.46,
    "threeminPct": 82.11,
    "ppmPct": 86.63,
    "cancPct": 3.44
   },
   {
    "operator": "Northern Trains",
    "onTimePct": 61.44,
    "threeminPct": 81.41,
    "ppmPct": 84.3,
    "cancPct": 2.77
   },
   {
    "operator": "East Midlands Railway",
    "onTimePct": 60.69,
    "threeminPct": 78.97,
    "ppmPct": 81.36,
    "cancPct": 4.82
   },
   {
    "operator": "Caledonian Sleeper",
    "onTimePct": 59.65,
    "threeminPct": 70.78,
    "ppmPct": 85.12,
    "cancPct": 3.22
   },
   {
    "operator": "Lumo (East Coast) [note 5]",
    "onTimePct": 56.1,
    "threeminPct": 71.91,
    "ppmPct": 79.56,
    "cancPct": 3.3
   },
   {
    "operator": "London North Eastern Railway",
    "onTimePct": 53.0,
    "threeminPct": 70.97,
    "ppmPct": 80.7,
    "cancPct": 3.56
   },
   {
    "operator": "TransPennine Express",
    "onTimePct": 51.48,
    "threeminPct": 72.92,
    "ppmPct": 85.25,
    "cancPct": 3.94
   },
   {
    "operator": "CrossCountry",
    "onTimePct": 51.03,
    "threeminPct": 71.95,
    "ppmPct": 78.47,
    "cancPct": 6.97
   },
   {
    "operator": "Hull Trains",
    "onTimePct": 47.8,
    "threeminPct": 72.21,
    "ppmPct": 83.8,
    "cancPct": 1.32
   },
   {
    "operator": "Grand Central",
    "onTimePct": 47.36,
    "threeminPct": 68.47,
    "ppmPct": 78.38,
    "cancPct": 2.87
   },
   {
    "operator": "Avanti West Coast",
    "onTimePct": 42.2,
    "threeminPct": 62.4,
    "ppmPct": 69.69,
    "cancPct": 6.4
   }
  ],
  "rankByCancellations": [
   {
    "operator": "Hull Trains",
    "cancPct": 1.32,
    "onTimePct": 47.8
   },
   {
    "operator": "Chiltern Railways",
    "cancPct": 1.47,
    "onTimePct": 80.38
   },
   {
    "operator": "c2c",
    "cancPct": 1.58,
    "onTimePct": 78.37
   },
   {
    "operator": "ScotRail",
    "cancPct": 1.61,
    "onTimePct": 69.67
   },
   {
    "operator": "Greater Anglia",
    "cancPct": 1.62,
    "onTimePct": 82.18
   },
   {
    "operator": "Southeastern",
    "cancPct": 1.82,
    "onTimePct": 68.5
   },
   {
    "operator": "Merseyrail",
    "cancPct": 2.46,
    "onTimePct": 69.14
   },
   {
    "operator": "Northern Trains",
    "cancPct": 2.77,
    "onTimePct": 61.44
   },
   {
    "operator": "Heathrow Express",
    "cancPct": 2.81,
    "onTimePct": 77.61
   },
   {
    "operator": "Grand Central",
    "cancPct": 2.87,
    "onTimePct": 47.36
   },
   {
    "operator": "Elizabeth line",
    "cancPct": 3.03,
    "onTimePct": 78.66
   },
   {
    "operator": "Caledonian Sleeper",
    "cancPct": 3.22,
    "onTimePct": 59.65
   },
   {
    "operator": "TfW Rail",
    "cancPct": 3.27,
    "onTimePct": 74.92
   },
   {
    "operator": "Lumo (East Coast) [note 5]",
    "cancPct": 3.3,
    "onTimePct": 56.1
   },
   {
    "operator": "Great Western Railway",
    "cancPct": 3.44,
    "onTimePct": 65.46
   },
   {
    "operator": "London North Eastern Railway",
    "cancPct": 3.56,
    "onTimePct": 53.0
   },
   {
    "operator": "South Western Railway",
    "cancPct": 3.62,
    "onTimePct": 68.0
   },
   {
    "operator": "TransPennine Express",
    "cancPct": 3.94,
    "onTimePct": 51.48
   },
   {
    "operator": "London Overground",
    "cancPct": 4.02,
    "onTimePct": 70.34
   },
   {
    "operator": "West Midlands Trains",
    "cancPct": 4.2,
    "onTimePct": 69.47
   },
   {
    "operator": "Govia Thameslink Railway",
    "cancPct": 4.4,
    "onTimePct": 69.01
   },
   {
    "operator": "East Midlands Railway",
    "cancPct": 4.82,
    "onTimePct": 60.69
   },
   {
    "operator": "Avanti West Coast",
    "cancPct": 6.4,
    "onTimePct": 42.2
   },
   {
    "operator": "CrossCountry",
    "cancPct": 6.97,
    "onTimePct": 51.03
   }
  ]
 },
 "questions": {
  "eyebrow": "Questions this raises",
  "heading": "For passengers and policy",
  "items": [
   "Cancellations are higher now than in 2019, even after emergency timetabling was introduced to improve reliability. What structural changes would bring the rate down?",
   "The gap between the best and worst operators is large. How much of that reflects network infrastructure and route type rather than operator performance?",
   "The on time (59 second) measure is far stricter than PPM. Should passengers be told more clearly which clock the industry uses to report reliability?",
   "Strike action and infrastructure faults have both driven cancellations. How should the two be reported separately so passengers can distinguish systemic from industrial causes?"
  ]
 },
 "sources": [
  {
   "name": "Table 3133: Train punctuality at recorded station stops by operator (ORR)",
   "licence": "Open Government Licence v3.0",
   "url": "https://dataportal.orr.gov.uk/media/1425/table-3133-train-punctuality-at-recorded-station-stops-by-operator.ods",
   "period": "April 2014 to March 2026",
   "publishedDate": "2026-05-28"
  },
  {
   "name": "Table 3123: Trains planned and cancellations by operator and cause (ORR)",
   "licence": "Open Government Licence v3.0",
   "url": "https://dataportal.orr.gov.uk/media/2177/table-3123-trains-planned-and-cancellations-by-operator-and-cause.ods",
   "period": "April 2019 to March 2026",
   "publishedDate": "2026-05-28"
  },
  {
   "name": "Table 3113: Public Performance Measure by operator and sector (ORR)",
   "licence": "Open Government Licence v3.0",
   "url": "https://dataportal.orr.gov.uk/media/1428/table-3113-public-performance-measure-by-operator-and-sector.ods",
   "period": "April 2019 to March 2026",
   "publishedDate": "2026-05-28"
  },
  {
   "name": "Table 3103: Historic trains planned, PPM, and CaSL by operator (ORR)",
   "licence": "Open Government Licence v3.0",
   "url": "https://dataportal.orr.gov.uk/media/1811/table-3103-historic-passenger-trains-planned-ppm-and-casl-quarterly-by-operator.ods",
   "period": "April 1997 to March 2026",
   "publishedDate": "2026-05-28"
  }
 ],
 "caveats": [
  "Data for the latest quarter (January to March 2026) are provisional and may be revised in future releases.",
  "The on time measure (trains arriving within 59 seconds) is stricter than PPM (5 or 10 minutes to final destination). They measure different things and should not be compared directly.",
  "PPM thresholds differ by service type: 5 minutes for London and South East, Regional, and Scotland operators; 10 minutes for long distance operators. This affects cross operator comparisons.",
  "Cancellations figures combine full cancellations and half weight part cancellations. A train that runs half its route counts as 0.5 of a cancellation.",
  "Data cover Great Britain. Northern Ireland Railways is not included.",
  "Some operators have suspended services or changed franchise during the period (notably during the pandemic). Rows marked [z] indicate data not applicable for that period.",
  "Punctuality data are sourced from Network Rail and refreshed every four weeks. Small revisions between quarters are normal.",
  "Contains public sector information licensed under the Open Government Licence v3.0."
 ]
}