Roberts was a member of the successful Tottenham Hotspur side of the early 1980s, winning two FA Cups and a UEFA Cup in 1984, scoring in the second leg of the final against Anderlecht, and then scoring his penalty as Spurs won the final on a shootout. He moved to Rangers in 1986 for £450,000 and won the Scottish Premier Division in his first full season and the Scottish League Cup a year later. Whilst at Rangers he was involved in a controversial Old Firm derby at Ibrox Park on 17 October 1987. During a very bad-tempered match three players were sent off and in the aftermath Roberts, his team-mates Terry Butcher and Chris Woods and Celtic F.C. player Frank McAvennie were all charged with conduct likely to provoke a breach of the peace. Both Roberts and McAvennie had their cases adjudged not proven, although Butcher and Woods were both convicted and fined. During the course of the match Roberts, who had replaced Woods as goalkeeper after Woods was sent off, was involved in a second controversy when he "conducted" Rangers supporters in a rendition of "The Sash", although Roberts would subsequently claim that he didn't realise they were singing that song, a traditional Ulster loyalist anthem, when he made the gesture.
In June 2005, Roberts was appointed manager of Clyde. He only had three players under contract, and held open trials in an attempt to get new players. Roberts gave the supporters their greatest day in years, when his Clyde side defeated Celtic in the Scottish Cup in January 2006. Earlier in the season, Clyde took Rangers to extra time at Ibrox Stadium in the Scottish League Cup. Roberts was sacked by Clyde in August 2006 after allegations he made racist remarks. An employment tribunal found that the allegations were "either highly exaggerated or possibly not true" and awarded Roberts £32,000 compensation for unfair dismissal.