Born in Gorleston, Norfolk, Matthews began his career at the academy of Norwich City. After an injury to their last loanee Chris Weale, Matthews was signed on a month-long loan by League Two team Burton Albion on 27 November 2014. Two days later, he was included in a matchday squad for the first time in his career, remaining an unused substitute in their 1–0 loss at Shrewsbury Town; this would happen four more times in his spell as he left without an appearance. On 6 July 2015, Matthews returned to Burton, of League One, on loan until the next January. A week later, he signed a new two-year contract at his parent club. He made his professional debut on 8 August, a 2–1 win against Scunthorpe United at the Pirelli Stadium in Burton's first ever League One match. They ended the season with a second promotion. After six games in all competitions, Matthews returned to Norwich. On 24 March 2016 he went back to League One, joining Doncaster Rovers for the rest of the season. He made his debut the following day in a 4–1 loss at Colchester United, and totalled nine games for the team from the Keepmoat Stadium, who ended the campaign with relegation. On 16 July 2016, Matthews joined Scottish Premiership club Hamilton Academical on a season-long loan, having signed a new two-year contract, with the option of another year at Norwich. He made his debut the same day, as Hamilton lost 2–1 to Ayr United in the Scottish League Cup. On 20 October 2017, Matthews was signed by League One club Plymouth Argyle on an emergency loan as Argyle had all three professional goalkeepers out injured, making his debut the next day in a 1–0 away win over AFC Wimbledon. Matthews returned to Norwich on 27 November after getting injured in a league game against Portsmouth. On 29 December 2017, Matthews joined Argyle on loan for the second time in the same season. Initially on an emergency loan for just one game against Blackpool, it was extended in the January transfer window until the end of the season.
Bolton Wanderers
On 12 August 2018, Matthews joined Championship club Bolton Wanderers in an initial loan deal, with the move set to be made permanent in January 2019. However, on 5 January 2019, he returned to Norwich after the transfer fell through due to Bolton's transfer embargo. On 18 January, he joined on a permanent deal. Matthews made his debut for the club on 14 August in a 2–1 loss at Leeds United in the first round of the EFL Cup. On 17 September 2019, Matthews kept a clean sheet for Bolton Wanderers in a 0–0 draw with Oxford United. Making several crucial saves during the match. Bolton had been saved from liquidation mere days before. Matthews, assisted in gaining a much needed point for the side. Only their second of a troubled League One campaign in 2019. On 26 June it was announced Matthews would be one of 14 senior players released at the end of his contract on 30 June.