| Season | Team | Competition | MP | G | A | Rating | ||
|---|---|---|---|---|---|---|---|---|
| 2019/2020 | Reading | Championship | 0 | 0 | 0 | 0 | 0 | – |
| 2018/2019 | Reading | Championship | 9 | 0 | 0 | 2 | 1 | 6.8 |
| 2017/2018 | Sunderland | Championship | 37 | 1 | 0 | 4 | 0 | 6.8 |
| 2016/2017 | Sunderland | Premier League | 28 | 0 | 1 | 5 | 0 | 6.7 |
| 2015/2016 | Sunderland | Premier League | 28 | 0 | 0 | 2 | 0 | 6.7 |
| 2014/2015 | Sunderland | Premier League | 37 | 0 | 0 | 4 | 0 | – |
| 2013/2014 | Sunderland | Premier League | 33 | 1 | 0 | 2 | 1 | – |
| 2012/2013 | Sunderland | Premier League | 34 | 2 | 0 | 3 | 0 | – |
| 2011/2012 | Sunderland | Premier League | 29 | 0 | 0 | 5 | 0 | – |
| 2010/2011 | Manchester United | Premier League | 20 | 0 | 0 | 1 | 0 | – |
| 2009/2010 | Manchester United | Premier League | 15 | 1 | 0 | 0 | 0 | – |
| 2008/2009 | Manchester United | Premier League | 30 | 0 | 0 | 1 | 0 | – |
| 2007/2008 | Manchester United | Premier League | 28 | 0 | 0 | 1 | 0 | – |
| 2006/2007 | Manchester United | Premier League | 32 | 4 | 0 | 2 | 0 | – |
| 2005/2006 | Manchester United | Premier League | 34 | 1 | 0 | 5 | 0 | – |
| 2004/2005 | Manchester United | Premier League | 23 | 2 | 0 | 1 | 0 | – |
| 2003/2004 | Manchester United | Premier League | 33 | 2 | 0 | 1 | 0 | – |
| 2002/2003 | Manchester United | Premier League | 2 | 0 | 0 | 0 | 0 | – |
| Total | 452 | 14 | 1 | 39 | 2 | – | ||
| Date | From | To | Type | |
|---|---|---|---|---|
| 07 Jan 2018 | Sunderland | Reading | Free | |
| 07 Jul 2011 | Man Utd | Sunderland | 4.5M € | |
| 09 Jan 2000 | Man Utd | Antwerp | Loan | |
| 09 Jan 1999 | Man Utd | Bournemouth | Loan |
J. O'Shea career history shows progression across clubs and competitions, including club timeline, national team appearances and overall career totals.