Richard Mark O'Donnell
Goalkeeper · Derby · season-by-season, by competition, and every match.
Below his 2020/21 peak but holding a solid level — the platform for a return is there.
The record covers 6 seasons (2020/21–2025/26) across 4 clubs — 190 appearances with 0 goal contributions as a goalkeeper.
His best campaign on record is 2020/21 at Bradford — Season rating 11, 0 goals and 0 assists in 28 games. Output has held steady across his last 3 full seasons (0 → 5). The gap to his peak is 7 Season points.
Season-to-season output barely moves — his form has stayed within a tight band (±4 points) across 6 campaigns. Made the jump to a higher division in 2023/24 (League One) and kept playing — 46 games that season.
By season
| Season | Club | Apps | CS | CS% | Rating | Season |
|---|---|---|---|---|---|---|
| 2025/26 | Derby | 8 | 2 | 25% | 6 | 5 |
| 2025/26 | GrimsbyLoan | 1 | 0 | 0% | 2 | 0 |
| 2024/25 | Blackpool | 46 | 2 | 4% | 8 | 5 |
| 2023/24 | Blackpool | 46 | 0 | 0% | 6 | 0 |
| 2023/24 | Derby | 6 | 0 | 0% | — | — |
| 2022/23 | Rochdale | 43 | 5 | 12% | 13 | 5 |
| 2021/22 | Bradford | 19 | 5 | 26% | 12 | 9 |
| 2020/21 | Bradford | 28 | 7 | 25% | 16 | 11 |
| 2019/20 | Bradford | 33 | 0 | 0% | — | — |
| 2018/19 | Bradford | 42 | 0 | 0% | — | — |
| 2017/18 | Northampton | 19 | 0 | 0% | — | — |
| 2017/18 | Rotherham | 10 | 0 | 0% | — | — |
| 2016/17 | Rotherham | 12 | 0 | 0% | — | — |
| 2016/17 | Bristol City | 8 | 0 | 0% | — | — |
| 2015/16 | Bristol City | 21 | 0 | 0% | — | — |
| 2015/16 | Wigan | 10 | 0 | 0% | — | — |
| 2014/15 | Walsall | 44 | 0 | 0% | — | — |
| 2013/14 | Walsall | 46 | 0 | 0% | — | — |
| 2012/13 | Chesterfield | 13 | 0 | 0% | — | — |
| 2012/13 | Stockport CountyLoan | 20 | 0 | 0% | — | — |
| 2011/12 | MacclesfieldLoan | 11 | 0 | 0% | — | — |
| 2011/12 | Sheffield Wednesday | 6 | 0 | 0% | — | — |
| 2010/11 | Grimsby | 10 | 0 | 0% | — | — |
| 2007/08 | OldhamLoan | 4 | 0 | 0% | — | — |
Honours
By competition
| Competition | Apps | Min | Rating |
|---|---|---|---|
| Championship | 8 | 641 | 7.0 |
| League Twoat Grimsby | 1 | 90 | 7.0 |
Schedule · 2025/26
Also spent part of this season at Grimsby — those games aren't in this club's schedule.
| Date | Competition | Opponent | Res | Status | Min | G | A | Rating |
|---|---|---|---|---|---|---|---|---|
| Jul 12 | Friendlies Clubs | A Matlock Town | 1-1 | Not in squad | — | |||
| Jul 18 | Friendlies Clubs | A Red Bull Salzburg | 2-1 | Not in squad | — | |||
| Jul 22 | Friendlies Clubs | A Walsall | 3-2 | Not in squad | — | |||
| Jul 26 | Friendlies Clubs | A Burton Albion | 1-2 | Not in squad | — | |||
| Aug 2 | Friendlies Clubs | H Atromitos | 2-0 | Not in squad | — | |||
| Aug 9 | Championship | A Stoke City | 1-3 | Not in squad | — | |||
| Aug 12 | League Cup | A West Brom | 1-1 | Unused sub | 0 | — | ||
| Aug 16 | Championship | H Coventry | 3-5 | Not in squad | — | |||
| Aug 22 | Championship | H Bristol City | 1-1 | Not in squad | — | |||
| Aug 26 | League Cup | A Burnley | 1-2 | Unused sub | 0 | — | ||
| Aug 30 | Championship | A Ipswich | 2-2 | Not in squad | — | |||
| Sep 13 | Championship | A West Brom | 1-0 | Not in squad | — | |||
| Sep 20 | Championship | H Preston | 0-1 | Not in squad | — | |||
| Sep 27 | Championship | A Wrexham | 1-1 | Not in squad | — | |||
| Sep 30 | Championship | H Charlton | 1-1 | Not in squad | — | |||
| Oct 4 | Championship | H Southampton | 1-1 | Not in squad | — | |||
| Oct 18 | Championship | A Oxford United | 0-1 | Not in squad | — | |||
| Oct 21 | Championship | H Norwich | 1-0 | Not in squad | — | |||
| Oct 25 | Championship | H QPR | 1-0 | Not in squad | — | |||
| Nov 1 | Championship | A Sheffield Utd | 3-1 | Not in squad | — | |||
| Nov 4 | Championship | H Hull City | 2-1 | Not in squad | — | |||
| Nov 8 | Championship | A Blackburn | 2-1 | Not in squad | — | |||
| Nov 22 | Championship | H Watford | 2-3 | Not in squad | — | |||
| Nov 25 | Championship | A Swansea | 2-1 | Not in squad | — | |||
| Nov 29 | Championship | A Middlesbrough | 1-2 | Not in squad | — | |||
| Dec 6 | Championship | H Leicester | 1-3 | Not in squad | — | |||
| Dec 10 | Championship | H Millwall | 1-1 | Not in squad | — | |||
| Dec 15 | Championship | A Sheffield Wednesday | 3-0 | Not in squad | — | |||
| Dec 20 | Championship | H Portsmouth | 1-1 | Not in squad | — | |||
| Dec 26 | Championship | A Birmingham | 1-1 | Unused sub | 0 | — | ||
| Dec 29 | Championship | A Leicester | 1-2 | Unused sub | 0 | — | ||
| Jan 1 | Championship | H Middlesbrough | 1-0 | Unused sub | 0 | — | ||
| Jan 4 | Championship | H Wrexham | 1-2 | Unused sub | 0 | — | ||
| Jan 11 | FA Cup | H Leeds | 1-3 | Unused sub | 0 | — | ||
| Jan 17 | Championship | A Preston | 1-0 | Unused sub | 0 | — | ||
| Jan 20 | Championship | A Charlton | 2-1 | Played | 90 | 6.3 | ||
| Jan 23 | Championship | H West Brom | 1-1 | Unused sub | 0 | — | ||
| Jan 30 | Championship | A Bristol City | 5-0 | Played | 90 | 6.9 | ||
| Feb 7 | Championship | H Ipswich | 1-2 | Unused sub | 0 | — | ||
| Feb 14 | Championship | H Swansea | 2-0 | Unused sub | 0 | — | ||
| Feb 21 | Championship | A Watford | 0-2 | Unused sub | 0 | — | ||
| Feb 24 | Championship | A Hull City | 2-4 | Unused sub | 0 | — | ||
| Feb 28 | Championship | H Blackburn | 3-1 | Unused sub | 0 | — | ||
| Mar 7 | Championship | H Sheffield Wednesday | 2-1 | Unused sub | 0 | — | ||
| Mar 10 | Championship | A Millwall | 0-1 | Played | 11 | 6.7 | ||
| Mar 16 | Championship | A Portsmouth | 1-0 | Played | 90 | 8.9 | ||
| Mar 21 | Championship | H Birmingham | 1-0 | Played | 90 | 6.3 | ||
| Apr 3 | Championship | A Coventry | 2-3 | Played | 90 | 7.6 | ||
| Apr 6 | Championship | H Stoke City | 2-0 | Played | 90 | 6.3 | ||
| Apr 11 | Championship | A Southampton | 1-2 | Played | 90 | 7.2 | ||
| Apr 18 | Championship | H Oxford United | 1-0 | Not in squad | — | |||
| Apr 21 | Championship | A Norwich | 1-2 | Not in squad | — | |||
| Apr 25 | Championship | A QPR | 3-2 | Not in squad | — | |||
| May 2 | Championship | H Sheffield Utd | 1-2 | Not in squad | — |