Career
Early career
Williams moved from Clitheroe to Kendal Town in February 2011, having previously played for Daisy Hill and Football Club United. At Football Club United he had scored two goals in 33 appearances in all competitions. He joined Chester on loan in October 2012, scoring two goals in 28 appearances in the Conference North.
Scotland
He was linked with a move to Scottish club Inverness Caledonian Thistle in May 2013, and the move was finalised in August 2013.
Despite a slow start to his career at the start of the season, Williams signed a new two-year contract with the club On 14 January 2014, Williams scored his first professional goal, as Inverness Caledonian Thistle beat Aberdeen 1–0.
On 22 March 2016, Dundee announced that Williams had signed a pre-contract agreement with the club along with fellow Inverness teammate James Vincent.