| Club | Details |
|---|---|
West Bromwich Albion
West Bromwich Albion |
July 1997 (apprentice)
January 8th, 1999 (signed professional contract); transferred out (January 19th, 2001) |
Bristol Rovers
Bristol Rovers |
January 19th, 2001 (transferred in , £75,000 ); transferred out (rptd March 18th, 2003) |
Newport County
Newport County |
rptd January 25th, 2002 (loan) |
Swindon Town
Swindon |
March 4th, 2002 (trial) |
Colchester United
Colchester United |
October 21st, 2002 (loan); expired (rptd December 10th, 2002) |
Stevenage Borough
Stevenage Borough |
rptd December 14th, 2002 (loan) |
Stevenage Borough
Stevenage Borough |
rptd March 18th, 2003 (transferred in); transferred out |
Woking
Woking |
rptd May 11th, 2004 (transferred in); transferred out |
Peterborough United
Peterborough United |
July 31st, 2006 (announced June 1st, 2006) (transferred in, free transfer); transferred out (rptd June 7th, 2007) |
Grays Athletic
Grays Athletic |
November 2006 (loan); recalled from loan (rptd January 2nd, 2007) |
Boston United
Boston Utd |
January 11th, 2007 (loan); expired (rptd February 1st, 2007) |
Kidderminster Harriers
Kidderminster Harriers |
rptd June 7th, 2007 (transferred in, free transfer); released |
Oxford United
Oxford United |
rptd January 25th, 2008 (loan); expired (2007/8) |
Cheltenham Town
Cheltenham Town |
July 3rd, 2009 (announced June 9th, 2009) (unattached); released (2009/0) |
Port Vale
Port Vale |
July 1st, 2010 (announced June 11th, 2010) (unattached); released (2010/1) |
Burton Albion
Burton Albion |
July 28th, 2011 (unattached); released (rptd January 31st, 2013) |
Oxford United
Oxford United |
January 4th, 2013 (loan) |
Oxford United
Oxford United |
February 1st, 2013 (unattached); released (rptd May 2nd, 2013) |
Tamworth
Tamworth |
rptd June 20th, 2013 (unattached) |
Sutton Coldfield Town
Sutton Coldfield Town |
rptd July 30th, 2014 |
Stourbridge
Stourbridge |
rptd September 10th, 2015 |
Sutton Coldfield Town
Sutton Coldfield Town |
December 2017 |
Hednesford Town
Hednesford |
rptd June 5th, 2018 |
Rushall Olympic
Rushall |
rptd July 20th, 2018 |