The 29-year-old Kroos was expected to leave the Santiago Bernabeu according to Spanish media reports but he has instead extended his stay for another four years, Reuters reported.
Real is expected to sell several players in the close season as it overhauls the squad following a bitterly disappointing season in which it finished third in La Liga and was knocked out of the Champions League in the last 16.
“No player reached their top level like in previous years,” Kroos told reporters on Monday, having won three consecutive Champions League titles from 2016-2018.
“We’re humans and that’s normal after winning three Champions Leagues. What’s not normal is to win three in a row, it seemed impossible and we did it.
“But we’re motivated for next season. I’m happy to stay at Madrid four more years.”
Kroos signed for the club from Bayern Munich in 2014 and has made 233 appearances, winning 11 trophies.
“I spoke to (coach Zinedine) Zidane and I know what his idea is. I will be important (in the team), I can’t say anything else,” added Kroos.