He started his career at Manchester City, though became a first team regular at Oxford United between 2004 and 2006. He spent a brief time in Italy with Hellas Verona, but swiftly returned to England on loan with Wolverhampton Wanderers, before signing with Oldham Athletic in 2007. Spending time on loan with Stockport County in 2008, he left Oldham the following year and signed to Brighton & Hove Albion. Enjoying loan spells with Yeovil Town and Port Vale, he transferred permanently to Chesterfield in 2010, who he helped to win the League Two title in his first season. He signed with Barnsley in July 2011, before being sold to Bolton Wanderers for £300,000 in January 2013. He joined Preston North End on loan 12 months later after losing his place in the Bolton team. He signed with Wigan Athletic in July 2015, and helped the club to win promotion as champions of League One. He joined Scunthorpe United in January 2017, and then rejoined Oldham Athletic five months later. He was sold on to Mansfield Town in June 2018.