Sam Johnstone has joined Celtic on a season-long loan from Wolves, with the move giving the Scottish champions an experienced goalkeeper after Kasper Schmeichel’s injury retirement. The 33-year-old will compete with Viljami Sinisalo for the starting job, and Celtic have moved quickly to fill a gap that opened when Schmeichel stopped after his last game in February.
Celtic's goalkeeping gap
Celtic needed a short-term answer as soon as Schmeichel stepped away. He had been first choice since the summer of 2024, and his retirement left the club looking for a keeper who has played at a higher level and can handle a team expected to win trophies.
Johnstone fits that brief on experience alone. Martin O'Neill called him "a quality keeper with excellent experience at the highest level," while Johnstone himself said: "And the pressure to win, which is what I like – pressure to win, pressure to perform and we all want to win trophies."
Celtic's recent run also helps explain why the club wanted certainty in goal. They have won their last five matches and scored 12 goals across those games, with a side already operating from the front and asking less of whoever stands behind it.
Johnstone's Wolves situation
The move also reflects where Johnstone was at Wolves. He lost his Premier League starting place in December and had not played since an FA Cup loss to Liverpool in early March. César Peixoto said he "won’t be part of the team for the future," which makes the loan more of a reset than a surprise.
Johnstone's numbers at Wolves were not empty ones. He made 17 appearances last season and won the last of his four England caps in 2023, so Celtic are getting a keeper with a proper top-flight background rather than a stop-gap punt.
Wolves finished 20th in the 2025 Premier League, and the club conceded 68 league goals in that campaign. That is the backdrop to Johnstone's exit, while Celtic now have the cover they wanted alongside Sinisalo.
Written by Jack Mercer with AI-assisted research, cross-checked against 2 outlets. How we work →





