Saunders started his career with Motherwell. He made his debut as a substitute in a Scottish Premier League match against Aberdeen on 29 November 2008. After the match, managerMark McGhee said that he was "delighted" with Saunders' performance. Saunders then started the following two games against Kilmarnock and Hamilton Academical, playing at right back, and he was again praised by McGhee for his performance in the first of those games. In the 2009–10 season, under new manager Jim Gannon, Saunders has established himself as a regular starter in his preferred position of centre back. He scored his first goal for the club on Saturday 24 April 2010 against Hearts. Under Gannon's successor, Craig Brown, Saunders became a regular starter at right back. On 10 August 2011, whilst playing for the Scotland under-21s, Saunders suffered an achilles tendon injury that ruled him out for most of the 2011–12 season. On 8 April 2012, Saunders made his first-team comeback as a late substitute in a 1–1 draw against Hibernian. Saunders was released by Motherwell at the end of the 2012–13 season, after another lengthy injury lay-off restricted him to just one further appearance.
Ross County
On 8 July 2013, Saunders signed a one-year deal with Ross County. He made his debut for the club on 3 August 2013, in a 2–1 defeat against Celtic in the opening game of the 2013–14 season. On 17 November 2013, he scored his first Ross County goal against St Mirren, but he was then sent off later in the match. Saunders signed a new one-year contract with Ross County on 19 May 2014. He was one of 14 players released by the club at the end of the season.
Dumbarton
After being released by Ross County, Saunders signed a short-term contract with Scottish Championship side Dumbarton in September 2015. He scored his first two goals for the club within two minutes of each other in a 3–3 draw with Raith on 21 November 2015. He extended his deal until the end of the season in January 2016.
Saunders signed a two-year deal with The New Saints on 8 June 2016, alongside Sons' teammate Jon Routledge. He left the club in May 2018.
Livingston
On 31 May 2018, Saunders signed a two-year deal with Livingston. He only made five appearances for Livingston before departing in January 2019.
Partick Thistle
Saunders signed an 18-month contract with Partick Thistle in January 2019. Saunders chose the number 43 kit for Thistle. He scored his first goal for Thistle in a 4–1 victory against Stranraer in the 2018–19 Scottish Cup. Saunders scored his first league goal for The Jags opening the scoring in an eventual 2–1 home defeat to Dundee United in August 2019.