Open data

The tables behind the reports

We build the Index reports from public records that are published but not usefully published: locked in appendices, split across releases, or named inconsistently between one dataset and the next. The reconciled tables are more useful than our charts, so they are here as spreadsheets rather than as screenshots.

Free to reuse, including commercially, under CC BY 4.0. Credit Untap and link back, and you need not ask us anything.

October 2024 to September 2025 · 31 rows

Untap Parking Index 2026: private parking appeal outcomes by operator

Appeal outcomes for 31 UK private parking operators, combining the independent appeals service’s published decisions with the volume of keeper-data enquiries each operator made to the DVLA. Includes appeals decided, allowed, refused and not contested, with derived allow, withdrawal and cancellation rates, and appeals per 1,000 keeper enquiries.

Cite it like this

Untap (2026). Untap Parking Index 2026: private parking appeal outcomes by operator. October 2024 to September 2025. Retrieved from https://untap.money/parking-index

What each column means
slug
Stable identifier for the operator
name
Operator name as published
keeper_enquiries
Keeper-data enquiries made to the DVLA in the period. Empty where the operator appears in the appeals data but could not be matched to a named company
decided
Appeals the service actually ruled on
allowed
Appeals decided in the motorist’s favour
refused
Appeals decided in the operator’s favour
not_contested
Appeals the operator chose not to contest, so no ruling was made
completed
decided + not_contested, the service’s own completion basis
allow_rate_pct
allowed / decided. How often the motorist won when someone ruled
withdrawal_rate_pct
not_contested / completed. How often the operator dropped the case
cancellation_rate_pct
(allowed + not_contested) / completed. How often the ticket died either way
appeals_per_1000_enquiries
completed per 1,000 keeper enquiries. A challenge rate, not a win rate

Financial year 2024-25 · 24 rows

Untap Rail Index 2024-25: Delay Repay outcomes by train operator

Delay Repay claim outcomes for 24 British train operators in financial year 2024-25, set against how often their trains were cancelled or significantly late and how many passengers they carried. Includes closed-claim approval rate, approved claims, approved claims per 100 journeys, and compensation paid where disclosed.

Cite it like this

Untap (2026). Untap Rail Index 2024-25: Delay Repay outcomes by train operator. Financial year 2024-25. Retrieved from https://untap.money/rail-index

What each column means
slug
Stable identifier for the operator
name
Operator name
role
Operator type: long-distance, commuter, regional, open-access, concession or devolved
casl_pct
Cancelled or significantly late, percent of trains, simple quarterly average
casl_yoy_pp
Year-on-year change in that figure, percentage points. Empty where the prior year is not in the same publication
journeys_m
Passenger journeys in millions
approval_rate_pct
Closed Delay Repay claims approved, percent
approved_claims
Delay Repay claims approved
approved_per_100_journeys
approved_claims divided by journeys, times 100. The comparable claim-density measure
paid_m_gbp
Delay Repay paid, £ millions. Empty for operators the department does not disclose
on_time_pct
On Time arrivals, percent. Empty where not published for that operator

Rules

The rules behind every check

Every answer Untap gives rests on a rule: how late a train has to be, what a delayed flight is worth, how long Transport for London gives you to ask. These are those rules, built from the same code that runs the checks, so the files change when the checks do.

Each one comes as a spreadsheet and as JSON at a fixed address, under the same CC BY 4.0 licence. They say what we apply, checked against the sources named with each one. If a rule matters to you, check it with the operator or company too.

90 rules in one dataset

UK claims rules

Every train operator, airline, TfL refund rule and dispute scheme in one place, one record per rule, each with its sources, the date it was last checked and a version. Airline claim pages and dispute schemes are only published here.

Last changed 5 October 2026 · 23 rows

Delay Repay rules by train operator

The Delay Repay rules Untap applies for 23 British train operators: the delay at which each starts paying, the share of the fare paid at each delay on single and return tickets, how many journeys each season ticket length is divided into, the claim deadline, the claim form, where each rule was checked, and whether the operator pays automatically, asks you to confirm a pre-filled claim, or needs a manual claim.

Licence
CC BY 4.0
First published
15 April 2026
Last changed
5 October 2026
What each column means
toc_code
Two-letter operator code used in National Rail data
operator
Operator name
scheme
DR15 pays from 15 minutes late, DR30 from 30 minutes
threshold_minutes
Delay at your destination, in minutes, at which the operator starts paying
single_pct_at_15_min
Single ticket: percent of the fare paid for a delay of 15 minutes, until the next boundary. 0 means nothing is paid
return_pct_at_15_min
Return ticket: percent of the single fare (half the return) paid when one direction is 15 minutes late, until the next boundary. 200 means the whole return fare
single_pct_at_30_min
Single ticket: percent of the fare paid for a delay of 30 minutes, until the next boundary. 0 means nothing is paid
return_pct_at_30_min
Return ticket: percent of the single fare (half the return) paid when one direction is 30 minutes late, until the next boundary. 200 means the whole return fare
single_pct_at_60_min
Single ticket: percent of the fare paid for a delay of 60 minutes, until the next boundary. 0 means nothing is paid
return_pct_at_60_min
Return ticket: percent of the single fare (half the return) paid when one direction is 60 minutes late, until the next boundary. 200 means the whole return fare
single_pct_at_120_min
Single ticket: percent of the fare paid for a delay of 120 minutes, until the next boundary. 0 means nothing is paid
return_pct_at_120_min
Return ticket: percent of the single fare (half the return) paid when one direction is 120 minutes late, until the next boundary. 200 means the whole return fare
tiers_single
Single ticket tiers in one field, as minutes:percent pairs separated by semicolons
tiers_return
Return ticket tiers in one field, as minutes:percent of the single fare, separated by semicolons
claim_deadline_days
Days after travel within which the claim must be made
claim_form_url
The operator’s own Delay Repay claim page
rules_source_url
The page the payout rules were read from
rules_source_type
operator_page (read on the operator’s site), operator_page_archived (read from an archived copy) or unverified (could not be read, so the national scheme is used)
rules_checked
Date the payout rules were last checked against that source
rules_note
Anything specific about how the rules were read
automatic_compensation
automatic (paid with no action), one-click (the claim is pre-filled and you confirm it), none (manual claims only) or unverified (sources conflict)
automatic_scope
Which tickets the automatic or one-click scheme covers. Empty where there is none
automatic_status_checked
Date the automatic compensation status was last checked against the operator’s own pages
season_journeys_weekly
Single journeys the operator divides a weekly season ticket into. Delay Repay pays the tier percentage of the season price divided by this number. Empty where the operator does not publish it or it has not been read
season_journeys_monthly
Single journeys the operator divides a monthly season ticket into. Delay Repay pays the tier percentage of the season price divided by this number. Empty where the operator does not publish it or it has not been read
season_journeys_quarterly
Single journeys the operator divides a quarterly season ticket into. Delay Repay pays the tier percentage of the season price divided by this number. Empty where the operator does not publish it or it has not been read
season_journeys_six_monthly
Single journeys the operator divides a six-month season ticket into. Delay Repay pays the tier percentage of the season price divided by this number. Empty where the operator does not publish it or it has not been read
season_journeys_annual
Single journeys the operator divides a annual season ticket into. Delay Repay pays the tier percentage of the season price divided by this number. Empty where the operator does not publish it or it has not been read
season_journeys_flexi
Single journeys the operator divides a flexi season ticket into. Delay Repay pays the tier percentage of the season price divided by this number. Empty where the operator does not publish it or it has not been read
season_at_120_min
What a season ticket holder is paid for 120 minutes or more: two_journeys (a full day of travel) or one_journey. Empty where the season rules have not been read
season_source_url
The page the season ticket journey counts were read from
season_source_type
operator_page or operator_page_archived. Empty where not read
season_checked
Date the season ticket rules were last checked against that source
season_note
What the operator’s page says about season tickets, in short
guide_url
Untap’s page for this operator

Last changed 5 October 2026 · 6 rows

UK261 and EU261 flight compensation bands

The fixed compensation amounts Untap applies for delayed and cancelled flights, by distance band, under UK261 (in pounds) and EU261 (in euros). Compensation starts at 3 hours late on arrival, and long-haul delays under 4 hours are paid at half. Under EU261 only, a flight between two EU airports of more than 1,500 km is paid at the medium band however long it is.

Licence
CC BY 4.0
First published
15 April 2026
Last changed
5 October 2026
What each column means
scheme
UK261 for flights from the UK, and into the UK on a UK or EU airline. EU261 for flights from the EU
currency
GBP or EUR
band
short, medium or long
distance_over_km
Great-circle distance the flight must exceed
distance_up_to_km
Great-circle distance up to and including which the band applies. Empty for the long band
delay_threshold_minutes
Arrival delay at which compensation starts, per passenger
amount
Compensation per passenger, in the scheme’s currency
reduced_amount
Half-rate amount, which the airline may pay instead in the cases in reduced_when
reduced_when
When the half rate applies
note
Anything else that changes the band

Last changed 5 October 2026 · 17 rows

TfL refund rules

The Transport for London refund rules Untap states and applies: incomplete journeys and card clash (8 weeks), the 60-minute Hopper fare, how capping interacts with maximum fares, service delay thresholds and their 28-day window, and unused credit.

Licence
CC BY 4.0
First published
15 April 2026
Last changed
5 October 2026
What each column means
rule_id
Stable identifier for the rule
topic
Incomplete journeys, Hopper fare, Capping, Service delays, Unused credit or Revenue inspections
rule
The rule in one plain sentence
value
The number in the rule, where there is one
unit
Unit of value
stated_on
The Untap page that states or applies the rule
official_page
Transport for London’s own page for the rule, where there is one
verification
official_page (read on the page in official_page), untap_guide (stated on the Untap page, not found in those words on a TfL page) or untap_practice (how Untap applies the rule, with no TfL source)
checked
Date the rule was last checked

Last changed 16 August 2026 · 11 rows

Surface water drainage charges by water company, 2026-27

The household surface water drainage charge for each of the 11 water and sewerage companies in England and Wales in 2026-27, which is what a household saves each year if its rainwater does not drain to a public sewer. Includes how far back each company backdates a rebate and where to apply, read from each company’s own charges scheme.

Licence
CC BY 4.0
First published
16 August 2026
Last changed
16 August 2026
What each column means
company
Water and sewerage company
charging_year
Year the figures apply to, 1 April to 31 March
rebate_name
What the company calls the rebate
charge_type
flat, banded (by property type), by-meter (metered and unmetered differ) or standing-charge-difference (no separate line)
charge_summary
The published charge in words
lowest_annual_gbp
Lowest published yearly figure. Empty where the company publishes no comparable figure
highest_annual_gbp
Highest published yearly figure. Empty where the company publishes no comparable figure
basis
How the charge is worked out
backdating
How far back a rebate goes
backdating_years
Backdating in years, measured at the start of 2026-27 for companies that use a fixed date
apply_url
Where to apply. Empty where the company publishes no online route
charges_scheme_url
The company’s own 2026-27 charges scheme
guide_url
Untap’s page for this company

Rules change log

Each time a rule we apply changes, it is listed here with the date and the change in our code that made it. The latest are below. Every change · RSS · JSON

  1. 6 October 2026 · Airline claim routes and dispute schemes

    Air Canada’s claim link now goes straight to its contact portal. The old Customer Relations address on aircanada.com redirects there, so the place to claim is the same: the Flight Disruption (claim only) topic.

    Change 01e06d2

  2. 5 October 2026 · Delay Repay by train operator

    Season tickets are now paid a share of one journey, not a share of the season’s price. The price is divided by the number of journeys the operator says the season covers (an annual season 464, a monthly 40, a weekly 10, a flexi season 16), read on 14 operators’ own pages. A £4,000 annual season 35 minutes late on Southern or Avanti now shows £4.31, where it showed £2,000. Where the season length or the operator’s journey count is not known, no amount is shown.

    Change 1ea96c0

  3. 5 October 2026 · TfL refund rules

    Each TfL rule now says how it was checked. Twelve were read on Transport for London’s own pages on 5 October 2026, and the Hopper fare rule now links to TfL’s bus and tram fares page. The other five are stated on Untap’s guides or describe how Untap applies a rule, and are marked that way. No rule changed.

    Change d644076

  4. 5 October 2026 · UK261 and EU261 compensation bands

    The UK261 and EU261 amounts were read again on the published text of Article 7 for both versions of the regulation. No amount changed.

    Change d644076

  5. 4 October 2026 · Airline claim routes and dispute schemes, Dispute schemes and time limits

    Added the claim page, contact page, who may claim and response time for 34 airlines, each read on the airline’s own page or an archived copy of it. A claim page seen only in search results is marked unverified. Added the escalation routes with their time limits: the Rail Ombudsman, AviationADR, CEDR, the Civil Aviation Authority’s complaints team, London TravelWatch and the court time limits for UK261 and EU261.

    Change 38d6a46

A note on accuracy

The two Index tables reconcile to the totals their publishers report, and where our coverage of a market is incomplete the reports say so rather than implying otherwise. The parking table covers the operators named in the appeals service's own appendix, which is most of the market and not all of it.

If you find something wrong, we would genuinely rather know. Corrections go to contact@untap.money.