Heath began his career at his hometown club Leicester City in 2001. He made sixty appearances for the club, scoring six goals and gaining Premier League experience during his time at the Walkers Stadium. He was also loaned out to Stockport County in the 2003–04 season to gain first-team experience. Heath played a total of 13 league games in the Premier League as Leicester suffered relegation to the Championship. Nonetheless, he believed the club could regain promotion in May 2004. Heath scored against Coventry City for Leicester in a 3–0 win in the 2004–05 season before being signed by Coventry City for a nominal fee in 2005, by his former Leicester boss Micky Adams.
On 9 November 2006 he joined Leeds United on loan. He made his Leeds debut in the 3–0 victory over Colchester United on 11 November 2006. Heath played in nearly all of Leeds matches during his loan spell playing in central defence with the likes of Ugo Ehiogu and Matthew Kilgallon. Heath was not eligible to play in Leeds' 2–1 victory against Coventry City due to a clause in his loan contract. Heath's loan spell at Leeds came to an end on 1 January 2007 and returned to Coventry City, but the following day he was free transferred to Leeds United, with a permanent contract until the end of the season. Heath's contract came to an end in June 2007 and was released, however, he re-signed a new contract at Elland Road shortly after with wages of £2,200 per week. In March 2008, Heath was told by manager Gary McAllister that he could look for a club to go out on loan to, as he was behind the likes of Rui Marques, Ľubomír Michalík, and Paul Huntington in the Leeds United centre-back pecking order. Heath only featured once for Leeds since McAllister joined the club.
Colchester United
After being loaned out to then-Football League Championship side Colchester United for the remainder of the season, Heath joined them on a permanent basis on 13 May 2008. On 2 March 2009, Heath joined Brighton & Hove Albion on loan for a month. Heath scored on his debut for the Albion against Leyton Orient on 8 March 2009, and went on to play six games during his loan spell. Heath then went on loan to Essex rivals Southend United on 30 July 2009 for an initial one-month loan deal. On 4 May 2011, Heath signed a new one-year deal, having featured 29 times in the 2010–11 season. Heath was offered and signed a new one-year contract to extend his stay at the club on 2 May 2012, having made more than 100 appearances for the U's. After featuring in only six league games for the club during the 2012–13 season, Heath was released by the club following the expiration of his contract. He had made 91 league appearances in five years with the U's.
Heath signed for Northampton Town on 1 August 2013 on a non-contract basis after appearing in a friendly for the club against his former team Leicester City. He linked up with Aidy Boothroyd, whom he played under at Colchester, helping to provide more cover in the centre of defence. On 2 January 2014, Heath left Northampton Town upon the expiry of his contract. Two days later, Heath signed for Conference North sideHarrogate Town.