Justin Ruggiano hit an RBI single with two outs in the ninth inning Friday that sent the Cubs over the Atlanta Braves 5-4.
Arismendy Alcantara singled with two outs off Jordan Walden (0-1) and stole second. Ruggiano then got a hit that slipped past shortstop Andrelton Simmons to win it.
The Braves, who scored the tying run in the top of the ninth on Christian Bethancourt's two-out single, have lost five of six following a nine-game winning streak.
Jordan Schafer stole three bases for Atlanta and was caught stealing once.
Cubs starter Jake Arrieta gave up three runs and four hits in 7 2-3 innings. He struck out six and walked three.
Arrieta left with a 4-3 lead but wound up with a no-decision when Cubs closer Hector Rondon (2-3) couldn't hold the lead in the ninth.
Rondon allowed a leadoff double to Jason Heyward in the ninth. After retiring the next two batters, Rondon gave up Bethancourt's single. It was Rondon's third blown save of the season.
Freddie Freeman drove in two runs for Atlanta.
Braves starter Alex Wood pitched 5 1-3 innings and allowed four runs on five hits and three walks. The 23-year-old left-hander struck out six.
After retiring the first six batters, Wood gave up a leadoff double to Chris Coghlan in the third inning. Coghlan stole third and scored on Arrieta's perfectly executed squeeze. With two outs, Ruggiano's single drove in Mike Olt to make it 2-0.
Arrieta was unable to hold the lead. He walked Schafer in the fourth and gave up his first hit of the game, a double to Simmons. Freeman and Justin Upton had RBI grounders.
In the sixth, Wood reached on an infield single, his first hit in the majors, and moved up on Schafer's sacrifice bunt. With two outs, Freeman doubled off the ivy in center field for a 3-2 lead.
The Cubs loaded the bases with no outs in the sixth. Junior Lake struck out and broke the bat over his knee. Coghlan hit a tying single and Braves reliever Shae Simmons walked Luis Valbuena on four straight pitches to give the Cubs a 4-3 lead.