Gonzalez, 33, was signed to a minor league deal on Thursday after the Indians designated him for assignment.
Gonzalez batted fifth and played right field Monday against the Angels at Wrigley Field. The regular right fielder, Jason Heyward, moved over to center field.
Gonzalez was once one of the more feared hitters in baseball. The three-time All-Star won a batting title with a .336 average while with Colorado in 2010. He drove in 100 runs as recently as 2016.
He also gives the Cubs another left-handed option at the top of the lineup. In 110 games batting first, Gonzalez has a .310 batting average and .363 on-base percentage. The Cubs' leadoff hitters have struggled this year with a .218 batting average and .298 on-base percentage.
Gonzalez will have to find his form, however. The Indians gave up on him after he hit .210 with two home runs and seven RBIs in 30 games.
The Cubs were in first place in the Central Division for much of May, but they have been struggling lately, with the Brewers taking over the top spot in June. The Cubs are 2-8 in their past 10 games and haven't scored more than four runs in their last four.
To make room on the active roster, the Cubs sent down outfielder Jim Adduci.