Spurr was born in Leeds, West Yorkshire, where he played for Seacroft Colts AFC as a child. He joined Sheffield Wednesday at a young age and worked his way up through the academy before signing for them full-time in 2004 and in his first season established himself in the reserves and won a place on the bench for the first team. He was named AcademyPlayer of the Year in the 2004–05 season and made his first team debut against Reading on 22 April 2006. He was awarded Sponsor's Man of the Match for his performance in the game. The 2006–07 season saw Spurr hold down a regular place in the starting eleven at left back ahead of the more experienced Peter Gilbert and John Hills. In December 2006, Spurr was given a new two-and-a-half-year contract which took his contract up until the summer of 2009. Spurr scored his first goal for Sheffield Wednesday against Charlton Athletic on 25 August 2007 in a 3–2 defeat. He scored his second career goal and first Hillsborough goal on 14 April 2008 against Plymouth Argyle. It proved to be the equaliser in what was a crunch game for Sheffield Wednesday and was voted Sky Sports Championship Goal of the Season. In December 2007 Championship rivals Queens Park Rangers made an offer for Spurr. It was turned down, however, as he was described as a 'top asset in the playing squad.' Later in the month Queens Park Rangers made an improved offer which was also rejected by Sheffield Wednesday. Spurr scored his third goal for Wednesday against Watford in a 2–0 win at Hillsborough on 13 September 2008. Despite playing at centre back for the game due to an injury sustained by Mark Beevers, Spurr found himself 50 yards out on the left wing and played a give and go with Etiënne Esajas, before sliding the ball right footed past Mart Poom from 8 yards. Spurr scored another eye-catching goal in a 2–1 defeat against Fulham in the FA Cup 3rd Round on Saturday, 3 January 2009, when he collected a square ball from James O'Connor to score from 30 yards. During the 7 February 2009 Steel City derby Spurr scored his fourth league goal for the club from a Michael Gray cross just 45 seconds into the game. Spurr was handed the team's captaincy in the game on 21 February 2009 against Neil Warnock's Crystal Palace, in the absence of team captain Richard Wood. In September, he signed a three-year contract extension. However Sheffield Wednesday were relegated from The Championship on the final day of the season against Crystal Palace. After staying with the club in League 1, Spurr found himself out of favour when manager Gary Megson took over the club.
Doncaster Rovers
In June 2011, it was reported that Sheffield Wednesday had accepted an undisclosed fee said to be around the £200,000 area from Doncaster Rovers for the services of Spurr. He signed for Doncaster Rovers on 28 June 2011. When fit, Spurr is a regular starter at left back for Doncaster.
Blackburn Rovers
Spurr's Doncaster contract expired in June 2013. Despite lengthy talks, no new contract was agreed, and only a few days before the start of the new season, he signed a two-year deal with Blackburn Rovers, replacing regular left-back Martin Olsson who had departed for Norwich City of the Premier League. He went straight into the starting eleven for Blackburn's opening-day draw at Derby County. On 10 August 2013, he started and played the full 90 minutes in a 1–0 defeat against Nottingham Forest at Ewood Park. On 7 May 2014, Spurr signed a new two-year contract with Rovers.
Preston North End
On 28 June 2016 Spurr signed a three-year deal with Preston North End on a free transfer after the expiry of his contract. He was signed as left-back, moving to centre-half for his second season at the club but an injury early in the season limited his appearances. Spurr joined Fleetwood Town on loan for the 2018–19 season. After a short spell with The Cod Army, he was sent back to Preston after suffering a serious injury. He was released by Preston at the end of the 2018–19 season. Spurr announced his retirement from professional football due to injury on 10 June 2019.