Yelich completed the feat in 20 days.
The Brewers outfielder is now hitting .318 on the season with 31 home runs and 93 RBIs. Yelich went 4-for-4 with four RBIs and a run scored in the Brewers' 8-0 win against the Reds on Monday at Miller Park in Milwaukee.
His previous cycle came against the same team on Aug. 29 at Great American Ball Park in Cincinnati.
"I honestly don't even how how to describe it or what that feels like," Yelich told reporters. "I don't even know if it's really set in yet. It's definitely crazy. You're trying to enjoy it as much as possible. It's nice to do it at home, too, in front of the home fans."
The Brewers star began his historic day by smacking a single to center field off of Reds starter Anthony DeSclafani in the first inning. He returned to the plate in the bottom of the third frame, hitting a double off of DeSclafani. The Brewers went up 1-0 one batter later when Lorenzo Cain plated Curtis Granderson on a sacrifice fly.
Domingo Santana led off the bottom of the fifth frame with a solo home run for the Brewers. Granderson followed with a single in the next at-bat, before Yelich walked up to the plate. The Brewers outfielder got the best of DeSclafani once again, clobbering an 89.9-mph changeup over the right field fence for a two-run home run, giving the Milwaukee a 4-0 lead.
Yelich completed his cycle in his next at-bat. Orlando Arcia plated Mike Moustakas with an RBI double at the start of the sixth inning. Jonathan Schoop then reached base on a fielding error, scoring Arcia. Granderson then took a walk, prompting Yelich's fourth at-bat of the game.
He settling in against Reds reliever Jesus Reyes for that exchange. The right-handed pitcher earned a 1-2 lead in the count, before tossing in an 88.9-mph changeup. Yelich smacked the offering to center field. He gassed around third base and slide in safely for a triple, while also scoring Schoop and Granderson.
Yelich was subbed out in the eighth frame and receiving a standing ovation for his effort.