The 33-year-old midfielder’s previous deal was due to run out at the end of June but he will now stay for a 10th campaign at Madrid.
Kroos has won four Champions Leagues and three La Liga titles since joining Real from Bayern Munich in 2014, when he also won the World Cup with Germany.
Coach Carlo Ancelotti had previously said he expected Kroos and fellow veteran midfielder Luka Modric, 37, to stay at the Santiago Bernabeu for another season.
Madrid signed English teenager Jude Bellingham from Borussia Dortmund last week for more than 100 million euros ($108 million), adding to their midfield options which already include Fede Valverde and French youngsters Aurelien Tchouameni and Eduardo Camavinga. AFP