*Club domestic league appearances and goals, correct as of 12:32, 16 July 2024 (UTC) ‡ National team caps and goals, correct as of 23:41, 24 August 2008 (UTC)
Woods joined Doncaster Rovers on a free transfer on 26 March 2009, signing a contract which would end at the end of 2009–10 season.[5] He made his professional debut one month later on 25 April 2009, when he replaced Neil Sullivan in the final minute of a 2–0 victory against Crystal Palace.[6]
Having started sporadically started in the 2011–12, Woods became first-choice goalkeeper in 2012–13 as Doncaster returned to League One following relegation from the Championship. However, despite playing 49 of 53 games as Doncaster took the League One title, he was released at the end of the season.[7]
Watford
Having trained with the club since the previous month, Woods signed a one-year deal with Championship side Watford on 9 September 2013.[8]
Leyton Orient
After one season with Watford, Woods signed for League One side Leyton Orient on 17 July 2014 on a two-year deal.[9] After 17 league appearances for Orient during the 2014–15 season, he found himself as number two behind Alex Cisak. On 1 September 2015, Woods went on loan with Scottish club Ross County until January 2016.[10] In May 2016, he was released from Leyton Orient when it was announced that he would not be retained when his contract expired.[11]
Ross County
Woods arrived on loan at Ross County from Leyton Orient on 1 September 2015, and made his debut off the bench in a 2–1 loss against rivals Inverness Caledonian Thistle in Dingwall. His first full game was in a 2–0 win against second placed Aberdeen. After an injury for Scott Fox against Dundee United, Woods started in the Scottish League Cup Final against Hibernian on 13 March 2016. Ross County won 2–1 with Woods playing a pivotal role in the game, denying Hibernian player Liam Fontaine an equalising goal in injury time.[12]
On 25 June 2019, he signed a two-year deal with League Two side Oldham Athletic.[16] On 21 September 2020 Woods, and teammate David Wheater, were removed from the first team and forced to train with the youth team as Oldham had been trying to force them out of their contracts.[17]
Aberdeen
On 5 October 2020, Woods moved to Aberdeen on a short-term loan agreement.[18] On 12 January 2021, it was announced that the loan had been extended until the end of the 2020–21 season.[19] On 7 May 2021, Woods signed a pre-contract agreement to join Aberdeen on a two-year deal in summer 2021.[20] Woods was released from his contract with Aberdeen on 24 June 2022.[21]
Kilmarnock
Woods signed a one-year contract with Kilmarnock on 22 July 2022.[22]
Exeter City
Woods' contract with Kilmarnock was terminated on the 31 January 2023. It was announced on the 1 February 2023 that the goal-stopper had signed for Exeter City until the end of the 2022-23 season. On 11 May 2023 Woods' signed a one-year contract extension to remain with the club for the 2023-24 season.[23]
Greenock Morton
On 8 July 2024, Woods joined Greenock Morton on a two-year deal as a player-coach upon the expiration of his contract with Exeter City.[24]