In July 1995, he joined John Rudge's Port Vale as Derby paid £475,000 plus Mills in exchange for Robin van der Laan. He made his debut for the "Valiants" as a substitute on 13 August 1995, in a goalless draw with Derby at The Baseball Ground. At the end of the season Derby were promoted, but Vale were to finish in twelfth spot. On 13 October 1996, he came off the bench at the Victoria Ground to score a last minute equaliser in a Potteries derby game with Stoke City. He finished the 1996–97 season with fifteen goals and was handed the club's player of the year award as the club posted their highest post-war finish – eighth place in the First Division. During the 1997–98 season Mills was the club's top scorer with 16 goals, as Vale narrowly avoiding relegation.