The 19-year-old joined the Academy at the age of 11 and signed his first professional deal with the club in December 2021.
He has represented England at Under-18 level, keeping a clean sheet on his debut for the Young Lions in a 3-0 victory over Russia in 2021.
Thompson recently returned to Newcastle after spending the first half of this season on loan at Northampton Town in League One. He made 15 appearances for the Cobblers, keeping five clean sheets.
Upon signing his new contract, Thompson said: "I'm really excited to continue my career with the club I've supported and grown up with. It's another opportunity to try and progress further as a footballer and, hopefully, make it as a player at Newcastle United.
"The development that has been put in place for me and a clear focus on where they want me to go were one of the main reasons in signing a new contract. It shows good faith that they see a progression in how I've been playing so I've been rewarded in that sense."