Born in Kingston, Francis began playing for Tamworth, in the club youth academy, before being spotted by Stoke City in 2004. He never really made the grade with the club, and after one season playing mostly in the youth and reserves, he was released.
Francis joined Watford's Academy in July 2005. Whilst still an Academy scholar, he made his first team debut in a League Cup victory against Wolverhampton Wanderers on 20 September 2005, and also made substitute appearances against Leeds United and Wigan Athletic. He was an unused sub a further two times that season, as Watford gained promotion to the Premier League by winning the Championship play-off final against Leeds United at the Millennium Stadium.
In February 2006, he was sent on work experience to Kidderminster Harriers. While with The Harriers, Francis made six league appearances, including three starts, before returning to Vicarage Road. Following the expiry of his contract he was released by Watford manager Adrian Boothroyd after failing to impress in his first season with the club.
Francis went on to join Halesowen Town, but was released on 15 January 2008, by manager Morell Maison.
He then joined Southern Division One Midlands outfit Willenhall Town.
Francis joined Barwell in 2008, where he was initially employed as a striker. However, with the club facing a defensive crisis, manager Marcus Law asked Francis to play a centre half in a match, following an injury to their current centre half, Francis played the role. He continued to play in the position and spent three seasons with the club, making 151 appearances and scoring 30 goals.
Francis re-joined his former Barwell manager Marcus Law at his new club Tamworth on 16 June 2011. He was joined on the same day by Kieron St Aimie from Kettering Town.
Francis became the first casualty in Tamworth's rebuilding for the 2012–13 season, after being released on 9 May 2012.
Francis started Hednesford's pre-season friendly against former club Tamworth on 28 July 2012, impressing enough to earn a contract.
In December 2014, Francis returned the club following his release from Hednesford Town.