The F***ed-o-meter gives each station and each train operator a rating based on a single composite score that combines two things:
Multiplied together, the formula is:
At the top of the homepage, the meter is based on every recorded delay across the UK network in the rolling past 60 minutes.
| Rating | Score range |
|---|---|
| Unf***ed | 0 – 80 |
| Slightly f***ed | 81 – 300 |
| Pretty f***ed | 301 – 800 |
| Really f***ed | 801 – 1,800 |
| Stupidly f***ed | 1,800 + |
On a station's page and on a train operator's page, the meter is based on the score across the rolling past 60 minutes.
| Rating | Score range |
|---|---|
| Unf***ed | 0 – 10 |
| Slightly f***ed | 11 – 50 |
| Pretty f***ed | 51 – 150 |
| Really f***ed | 151 – 400 |
| Stupidly f***ed | 400 + |
Every UK train movement is broadcast by National Rail's Darwin Push Port — a real-time stream of every arrival, departure and cancellation across the network. We listen continuously and record any service running 5 or more minutes late, or cancelled.
The figures on this site count station calls, not unique trains. Every train stops at multiple stations along its route, and we record it at each station where it runs 5 or more minutes late — so a "delayed station call" is one late stop, not one train.
Here's why that matters: a CrossCountry service from Manchester to Bristol running 10 minutes late might be seen at six stations on its way south — that's six delayed station calls, not one.
The average delay works the same way: it's the average across all those delayed station calls, weighted naturally toward services that pass through more of our polled stations.
Cancellations are counted the same way and shown as "stations missed" — each one is a station a train was scheduled to call at but didn't, because it was cancelled there or further down the line.