The 29-year-old has made 20 Premiership appearances for the Cherry and Whites.
The former Crusaders player, who moved to Gloucester from the Super Rugby franchise in 2015, joins team-mates Henry Purdy and Billy Burns in agreeing new deals at Gloucester since Tuesday.
"Willi has been a really important part of the squad since his arrival," director of rugby David Humphreys said.
"I'm excited to see what more he has to give."
Gloucester's New Zealand-born scrum-half Willi Heinz has signed a new, extended contract with the club.