Mills was born in Leicester, Leicestershire.[1] He progressed through the ranks at Derby County and was a regular member of the reserve team in the 2009–10 pre-season. After playing in a 4–0 win away to Shrewsbury Town's reserves in the Central League Division One Central Section in August 2009,[3] Mills moved to Conference North club Solihull Moors on loan for a month. He scored four goals in four matches, and the loan was extended for a second month,[4] but was cut short due to an injury crisis at Derby, and he was named amongst the substitutes for the first team's visit to Leicester City in the Championship on 18 October 2009. He remained unused on that occasion,[5] but did make his debut three days later, as a 79th-minute replacement for Gary Teale in a 2–0 defeat away to Middlesbrough.[6] He returned to Solihull for six weeks on 19 November,[7] and on 29 January 2010 joined Macclesfield Town of League Two on a month's loan.[5] He made only one appearance for the club, as a substitute in a 2–1 away defeat against Bury.[8]
After impressing in a pre-season fixture for AFC Telford United against Hednesford Town, which Telford won 2–0, Mills joined the Conference North club in August on a month's loan.[9] After hitting three goals in his first six games, the loan was extended until January 2011.[10] He returned to Derby for two weeks before rejoining Telford on 31 January for the remainder of the campaign.[11] Four days after Derby confirmed that Mills would be released at the end of the season,[12] he played for an hour in the Conference North play-off final in the 3–2 victory over Guiseley that brought Telford promotion to the Conference National.[13] On 15 August, Mills rejoined AFC Telford United on a one-year contract.[14] Mills scored on his second debut for Telford and his first Conference National match; entering the game as a 67th-minute substitute, he produced a stoppage-time consolation goal in a 2–1 defeat against Lincoln City.[15] He was released by Telford in January 2012.[16]
Mills spent the first few months of the 2016–17 season with Tamworth of the National League North before moving on in January 2017 to Nuneaton Town where he was reunited with his former manager at Corby Town, Tommy Wright.[25] After Wright took over as manager of yet another National North club, Darlington, Mills followed him in November 2017.[26] He made 16 appearances in all competitions, and was released at the end of the season.[27][28]
He signed for Southern League Premier Central club Stourbridge in May 2018,[29] and went on to score freely for them, but after a "difference of opinion" with the manager about his role, he left Stourbridge in October 2019 for divisional rivals Bromsgrove Sporting.[30] He scored ten goals from 27 appearances in all competitions,[31] before returning to Stourbridge in 2020.[32][23] In January 2023, Mills signed for Halesowen Town.[33]
In February 2024, Mills joined Corby Town where he remained for the remainder of the 2023–24 season.[35] In June 2024, he joined Racing Club Warwick.[36]
Career statistics
As of end of 2017–18 season
Appearances and goals by club, season and competition
^"Club archive". AFC Telford United. Archived from the original on 18 December 2017. Retrieved 22 November 2017.Select season required via dropdown menu.