Rockies starter Jeff Hoffman (5-1) gave up three runs and four hits, two of them solo homers, in a career-high-tying seven innings, a distance he went for the first time at Coors Field.
Colorado’s Raimel Tapia finished a single shy of the cycle. He tripled and scored in the second, doubled in the third and hit his second homer of the season in the sixth to put the Rockies ahead 4-3. Tapia led off the eighth and struck out on three pitches.
Hoffman faced just one batter with a runner in scoring position — Joey Votto, when he hit a sacrifice fly in the first — in his 90-pitch outing that included three walks and four strikeouts.
“I felt like I moved the ball in and out pretty well for the most part,” Hoffman said. “I spun some good curveballs, some good sliders and was able to keep the ball off the barrel.”
Hoffman also doubled home the Rockies’ first run in the second. It was his first career RBI and extra-base hit.
He added to the offense provided by Tapia, who said he has never hit for the cycle and wasn’t overly anxious in pursuit of a single on his final at-bat.
“I was very normal,” Tapia said through a translator. “I was just kind of going up to the plate the same way I had all the rest of the time in the game, just looking for my pitches and it didn’t turn out for me.”
Rockies manager Bud Black said, “It’s icing on the cake if he gets a single, but tonight was Tap Time.”
The win was just the second in 12 games for the Rockies, who are trying to regroup after concluding a 1-8 road trip Sunday. They head into the All-Star break with a seven-game homestand against the Reds and Chicago White Sox, both last-place teams.
Charlie Blackmon gave Colorado a 3-1 lead in the fourth with his 18th homer. The Rockies hit just four home runs and batted .211 on their nine-game trip while their starters went 1-5 with a 6.41 ERA.
The Reds have lost 15 of their past 17 road games and are 12-27 on the road this season.
Nolan Arenado’s sacrifice fly in the seventh completed the scoring after Blackmon led off with a walk, stole second and moved to third on DJ LeMahieu’s hard shot that second baseman Scooter Gennett knocked down.
Reds starter Luis Castillo (0-1) gave up nine hits and four runs in 5 2/3 innings with one walk and eight strikeouts. It was his third career start after being promoted to the Reds from Double-A Pensacola on June 23 to make his major league debut.
“Really good stuff again,” Reds manager Bryan Price said. “Really paid the price for pitching behind. Most of their hitters, when they did their damage, he was behind in the count. He was ahead of Tapia 1-2, ends up going to a full count. The kid sits on a fastball and (Castillo) ends up missing his location and (Tapia) hits it out to give them a 4-3 lead.
“That being said, this kid’s jumping from Double-A. I think he’s got a little bit of trepidation on pounding the strike zone right now, which is not unusual for young pitchers. When he gets on the plate and turns those counts around from 1-0 to 0-1, I think he has a chance to be sensational.”
The Reds forged a short-lived tie at 3 on back-to-back homers by Gennett and Votto to open the sixth. Gennett walloped a 1-0 changeup an estimated 452 feet into the second deck in right field for his 13th home run.
Votto connected on a 3-0 fastball for his 24th home run that was also his 1,500th career hit.
Jake McGee relieved Hoffman in the eighth and gave up a one-out single to Gennett but got the dangerous Votto to ground into an inning-ending double play.
Colorado closer Greg Holland struck out two of the three batters he faced in the ninth and earned his 27th save in 28 opportunities.
NOTES: Rockies OF Carlos Gonzalez (right shoulder strain) was reinstated and went 0-for-4, and 1B/OF Ian Desmond (right calf strain) was placed on the 10-day disabled list. … Colorado RHP Chad Bettis (cancer) will face hitters for the first time Tuesday as he continues to move toward a rehab assignment next week. … Rockies CF Charlie Blackmon, selected in the fan vote to start in next week’s All-Star Game at Miami, will participate in the Home Run Derby on Monday. … Rockies OF Gerardo Parra (right quadriceps strain) is scheduled to begin a three-game rehab assignment Tuesday with Triple-A Albuquerque. … Reds RHP Sal Romano will be recalled from Triple-A Louisville to start the series finale Thursday. … Cincinnati CF Billy Hamilton did not play after leaving the Sunday game in the eighth inning with lower back stiffness. … Reds SS Zack Cozart was not in the lineup as part of his planned playing schedule since being reinstated from the DL on Friday following a right quadriceps strain. He pinch-hit and grounded out to end the seventh.