After a period in Major League Soccer with LA Galaxy, the Swede returned to Europe with Milan in December, and although he was expected to be used sparingly as an auxiliary centre-forward, he ended up playing a key part in the team's improved form in 2020.
Throughout the campaign last year it was rumoured that Ralf Rangnick would be recruited in the summer of 2020 to replace Stefano Pioli, but the Italian oversaw a cracking run, particularly after lockdown, to earn an extended contract himself.
38-year-old Ibrahimovic fired in 11 goals in 20 appearances and also contributed five assists as the Rossoneri shot up to sixth to earn a place in the Europa League for 20/21.
After signing his new deal, he insisted that he was not simply in the squad to act as a "mascot".
"I'm very happy to be here again. Finally, everything's sorted and I've finally come back to where I feel at home - now we've got to work and achieve results," he told the official Milan site.
"I'm not here to be a mascot. I'm here to achieve results and to help the squad, the manager and the club to take Milan back to where it belongs.
"In the last six months we've done well but we haven't won anything. There's the possibility to start working hard and making sacrifices to achieve our goals."
In his previous spell with Milan, he helped them to claim the Scudetto in the 2010/11 season before moving to Paris Saint-Germain.