After spells as a schoolboy with Southampton, Orient and Crystal Palace, Bates joined Third Division club Brentford as a trainee in 1985. After later signing non-contract terms, he made his senior debut in October 1986. Owing to the fitness and form of Keith Millen and Terry Evans, Bates was unable to play his preferred centre back position, instead playing for long periods at full back. Brentford became a threat in the Third Division in the late 1980s and early 1990s and Bates was part of the team which reached the FA Cup quarter-finals in the 1988–89 season and went out in the 1991 play-off semi-finals to Tranmere Rovers. Bates made 42 league appearances in a triumphant 1991–92 season for the Griffin Park club and won the first silverware of his career in the form of the Third Division championship. Injury to Terry Evans saw Bates finally take over one of the centre back positions in the newly renamed First Division during the 1992–93 season, though the campaign ended in disappointment with relegation straight back to the Second Division. Under new manager David Webb, Bates was paired at centre back with Shane Westley during the 1993–94 season and took over the captaincy from Billy Manuel.
1994–1999
proved to be Bates' best season – paired with Barry Ashby in central defence, he won the club's Player of the Year award, but his season ended on a sour note after he failed to convert a penalty in a playoff semi-finalshootout to the eventually-promoted club Huddersfield Town. A forgettable 1995–96 season followed and things came together again in 1996–97, with Bates making 45 appearances and scoring two goals as Brentford reached the 1997 Second Division play-off final. Once again Bates' season ended in heartbreak after a 1–0 defeat to Crewe Alexandra at Wembley Stadium. Bates improved his appearance tally to 47 in the 1997–98 season, but a disastrous campaign saw the Bees relegated to the Third Division on the final day. The takeover of the club by Ron Noadesin the summer of 1998 brought an influx of money and younger players. Though he was still a regular, Bates was soon superseded as captain by new record-signing Hermann Hreiðarsson. He departed Griffin Park in March 1999, after making 526 appearances and scoring 24 goals in 13 years for Brentford. As of May 2016, Bates is second behind Ken Coote on Brentford's all-time appearances list.
Wycombe Wanderers
Bates joined Second Division club Wycombe Wanderers on 25 March 1999 on a three-year contract. It was his second spell with the club, after a brief loan during the 1986–87 season, while the Chairboys were members of the Isthmian League Premier Division.Personal lifeAfter retiring from professional football, Bates became a postman. As of July 2010, Bates was working as a courier for a company in Orpington.