Roberts spent his youth career with Bellfield Boys Club in
Kilmarnock during the 1991–92 season. He signed for
Kilmarnock F.C. at the start of the
1992–93 season and stayed for 8 seasons. Roberts made 101 league appearances and scored 15 league goals. During 1999, Roberts was loaned out to
Raith Rovers by Kilmarnock, where he made 3 league appearances and scored one league goal. Roberts signed for
Falkirk at the start of the
2000–01 season and stayed for one season, where he made 25 league appearances and scored 9 league goals. He then signed for
Airdrieonians at the start of the
2001–02 season and made 36 league appearances and scored 12 league goals. Airdrieonians went out of business at the end of the season. He then signed for
Dublin club
Shelbourne. He played in the
League of Ireland Premier Division in the summer of 2002. Roberts signed for
Paisley club
St Mirren in the January 2003 transfer window for the remainder of the
2002–03 season. He made 13 league appearances and scored 3 league goals for the Paisley club. Roberts signed for
Airdrie United at the start of the
2003–04 season and stayed for two seasons, where he made 62 league appearances and scored 3 league goals. Roberts signed for
Partick Thistle at the start of the
2005–06 season. Roberts scored a brace in his first game against
Dumbarton. Roberts scored 22 goals during his first season at
Firhill, as Partick Thistle gained promotion to the
Scottish First Division via the play-offs. Roberts was one of 5 nominees for the Scottish First Division Player of the Year Award for the
2006–07 season. Roberts made 104 league appearances for Partick Thistle in his 4 seasons at the club and scored 30 league goals, as well as 17 goals in other competitions. His 47 goals for Thistle ensured that the Jags fans would hold him in high regard long after he left the club, particularly as many saw him as the player that led Thistle to promotion to the First Division. Roberts signed for
Ayr United in January 2009. On 18 September 2010, Roberts made history when he scored three
penalty kicks for Ayr in a league fixture with
East Fife. Roberts was sent off after a confrontation whilst celebrating his third. On 18 January 2011, Roberts scored the goal that sent
SPL side
Hibernian out of the
Scottish Cup. On 27 February 2015, Roberts signed for
Scottish League Two club
Clyde, having already played three times for the club as a trialist. After leaving a coaching role with Clyde in August 2016, Roberts resumed his playing career at
Junior side
Hurlford United. He left the club in August 2018 to become assistant manager at
Queen's Park. On 5 February 2020, Roberts rejoined
Hurlford United before departing upon the expiry of his contract in the summer of 2020. Roberts signed for
Troon ahead of their debut in senior football in September 2020. ==Coaching career==