Playing in her first tournament since earning the WTA's top ranking, the Wimbledon champion broke Puig to go up 5-0 in the second set and then won with her third ace of the match.
"I'm happy to win my first match as No. 1," Muguruza said. "I have to be ready, and every match is going to be tougher now."
Puig beat Muguruza 6-1, 6-1 at the 2016 Summer Olympics in Rio de Janeiro and maintained that momentum early on, but Muguruza found her pace by breaking in the opening game of the second set. A stretch of 12 points won in succession formed part of another break as the Spaniard raced out to a 4-0 lead.
"The last time I played her, it didn't go my way at all," Muguruza said. "This time, I found a better way to play and got the victory. In the second set, I kind of learned what I did well in the first set."
Muguruza took over at No. 1 from Karolina Pliskova, who also advanced with a 6-2, 6-1 win over Magda Linette. After coasting through the first set, the Czech player broke her opponent with a backhand to the corner in the sixth game before serving out to win.