The veteran midfielder, 33, was due to see his existing deal run out at the end of this season, and would have been free to discuss terms with a team from England from the beginning of January.
But his new contract will now see him stay at Anfield until the end of the 2021/22 season, and comes at the end of a day which has also seen manager Jurgen Klopp extend his stay with the Reds until 2024.
He has played 198 games for the Reds, scoring 25 goals.
“Liverpool is an unbelievable place to be and we're a very, very good football team and hopefully we can keep improving," said Milner after the news broke.
“Obviously the gaffer waited to sign his dependent on whether I signed mine, so that makes me a feel bit more important!"