The official confirmation arrived after several days in which Zaniolo's departure had appeared increasingly likely.
Talks had stalled over the player's wage demands, with his existing deal offering the same salary as the previous season, something he and his representatives were unwilling to accept without an increase. Negotiations eventually resumed and the two sides found common ground on the terms of the extension.
Udinese confirmed the deal in an official statement: "Udinese Calcio announces that it has signed a new contract with Nicolò Zaniolo. The agreement signed is valid until 30 June 2029 with an option for a further sporting season.
"The club and Nicolò are pleased to continue their journey together, confirming their mutual ambitions and reinforcing the shared desire to achieve new and shared satisfactions."
Zaniolo, who had missed the opening days of pre-season training amid the uncertainty over his future, used Instagram to address the speculation surrounding the negotiations directly.
"This shirt, these colours, these people," he wrote. "There has been a lot of talk in recent days about the negotiations over my renewal, often with plenty of inaccuracies. But one thing is certain: my respect for Udinese and its fans has never been in question. This year I want to prove it even more, on the pitch, every day. Forza Udinese!"
The 27-year-old joined Udinese on loan with an obligation to buy from Galatasaray last season, with the move made permanent before this summer's contract talks began. His future had been the subject of weeks of speculation, but the club's determination to build around him, along with the player's own attachment to the shirt, ultimately proved decisive in keeping the saga from derailing entirely.
Zaniolo made 34 appearances in all competitions last season, scoring six goals and providing six assists as he continued the rebuilding of a career that had previously stalled following spells at Roma, Galatasaray and Atalanta. His performances helped establish him as one of the more creative and technically gifted players in Udinese's squad.
With the contract situation now resolved, Zaniolo is set to link up with his team-mates in Austria, where Udinese are due to continue their pre-season training camp in Lienz ahead of the new Serie A campaign.
