The 26-year-old Spain international has been one of the first names on the teamsheet under Pep Guardiola since his arrival from Atletico Madrid for £62.5m in the summer of 2019.
Rodri has started 134 of his 151 appearances across all competitions for the Citizens, and has won five trophies including back-to-back Premier League titles.
Speaking to the club's official website on the reasons why he has decided to extend his contract, Rodri said: "Joining City in 2019 is the best decision I have made in my career.
"I have loved every second. The fans have been amazing with me, I feel totally supported by the club and the manager pushes me every single day.
"I have improved so much as a player, and I want to thank Pep and all the backroom staff for their help. They are completely committed to helping me become the best player I can be, and I appreciate their hard work.
"We have been very successful since I came here, which is something that makes me very proud. But to be honest, that success has made me even more hungry for me. Once you start winning big titles, you don't want to stop.
"City, I feel, offers me the best chance of winning trophies and that's why I am so pleased to be staying here for longer."
It is thought that the sale of Gabriel Jesus and the expected departure of Raheem Sterling - who were roughly earning a combined £400,000 per week - will help play for Rodri's new deal and allegedly provide funds to offer Phil Foden a bumper new contract.