Claim outcome data

Flight-compensation outcomes by court × airline — from published German decisions

601 decisions matched · 57 courts · 0 airlines identified · dump 2026-05 · share default/acknowledgement overall: 4 %

Data limitations — read before using any number

Why the airline column is empty, and how every number was checked

German courts publish decisions with the parties anonymised: “die U AG”, “X Airlines”, flight numbers replaced by “X00 000”. Where an airline name does appear, it is usually not the defendant but the replacement flight, a codeshare partner or a cited case. A wrong airline in a pricing table is worse than an empty column, so an airline is only recorded when the decision itself says it is the defendant.

Filter precision, checked by reading random decisions in full: strong-rule matches, round 1 — 27 of 30 are claims under Regulation (EC) No 261/2004 (27 of the 28 still selected); strong-rule matches, round 2 (unseen cases) — 23 of 30 are claims under Regulation (EC) No 261/2004 (23 of the 27 still selected); weak-only matches — 0 of 30 are claims under Regulation (EC) No 261/2004. Only strong-rule matches are counted; 50 decisions about association injunctions, package-travel claims and aircraft noise are excluded, each one read.

Rows with fewer than 10 decided cases show “insufficient data”. Median duration needs at least 5 cases with both dates. Details: how we count.

Outcome table

AG KölnAll84 60 %40 % 1 % 187 (9) 500 2006–2026
AG DüsseldorfAll68 65 %35 % 7 % 157 (6) 500 2006–2025
LG FrankfurtAll67 63 %37 % 1 % 432 (13) 965 2013–2026
AG FrankfurtAll57 58 %42 % 7 % 192 (9) 800 2012–2025
BGHAll55 53 %47 % 4 % — (0) 374 2014–2025
LG KölnAll25 48 %52 % 0 % — (0) 686 2000–2024
AG ErdingAll17 47 %53 % 0 % — (1) 700 2021–2024
LG DüsseldorfAll12 33 %67 % 0 % — (1) 823 2007–2023
LG LandshutAll11 64 %36 % 9 % — (0) 1200 2020–2026

Download the full table: aggregates.csv · case-level data: cases.parquet (both ODbL, attribution in the file).

See it working

A screen recording of this site and the API: the limitations, the table and its filters, the decisions behind a row, how the accuracy was checked, and a real response of /score. Recorded with make demo-video; the numbers in the captions come from the same data as this page.

Get an API key

The API returns the numbers of this table for your own pricing systems — GET /score?court=…&airline=…, documented on the API page. Keys are free while we test whether this data is useful. Tell us who you are; a person reads every request and replies with a key.

We use your details only to answer this request; see Datenschutz.