The Reds confirmed on Thursday that the 29-year-old will commit his future to the Anfield side, subject to a medical.
“Liverpool Football Club are delighted to announce they have agreed a deal to sign Manchester City’s James Milner, subject to a medical,” read a statement on Liverpool’s official website.
The England international has spent the last five years at City since his move from Aston Villa in 2010, winning two Premier League titles, an FA Cup and League Cup.
In that time, Milner made 203 appearances for the Citizens, scoring 19 goals and contributing with 45 assists.