Milwaukee Brewers at San Francisco Giants

Wed Jul 2912:45 PM PT
By JR·2 min read

TLDR: The Brewers rolled into Oracle Park with the best record in the National League. The Giants turned the series finale into a laugher anyway, jumping Milwaukee for 16 runs and 17 hits.

FINAL · WED JUL 29, 7:45 PM
WLWWL
3
LWLWW
16
Final123456789RHE
MIL
001100100383
SF
03000733—16171
Milwaukee Brewers
  • 67-40, best record in the league entering the day
  • Yelich hot since returning from injury
  • won 4 of last 5 games overall
  • rotation thin enough to need a Triple-A call-up
  • Woodruff done for season, Priester out 8-10 months
  • committed 3 errors in the loss
San Francisco Giants
  • Webb historically dominant vs Milwaukee (5-0 career)
  • playing at home at Oracle Park
  • offense broke out for 17 hits and 16 runs
  • 45-62, last place, nothing to play for
  • Webb winless in his prior four July starts
  • Chapman, Schmitt, Bader, McDonald all hurt

Milwaukee didn't have much of a choice on the mound Wednesday. With the rotation banged up, the Brewers called up Thomas Pannone from Triple-A Nashville for his first big-league outing since 2023, just to buy their real starters an extra day of rest. On the other side, Logan Webb took the ball at 12:45 PM PT carrying a personal footnote he wanted no part of: he'd gone 0-2 with a 7.54 ERA over his previous four July starts, and a fifth winless outing would've been the first losing month of his career with five-plus starts.

Milwaukee Brewers
Thomas Pannone
(0-1)·6.00 ERA
2026 · No starts yet
ND
—IP
—ER
—K
—BB
—P
07/29 Lineup
San Francisco Giants
Logan Webb
(7-7)·3.59 ERA
Jul 24 vs Angels
ND
6.0IP
4ER
4K
2BB
99P
07/29 Lineup

Webb had history working in his favor, though. Entering the day he'd never lost to Milwaukee, sitting at 5-0 with a 1.79 ERA across 8 career starts against the Brewers. That trend held. Pannone, thrown into a spot start against a lineup that had just hung 8 runs on the Giants a night earlier, never found his footing, and Milwaukee's bullpen didn't fare much better trying to clean up after him.

This one got out of hand in a hurry. San Francisco broke through for 3 in the second, then blew it open with 7 more in the sixth and 3 apiece in the seventh and eighth, piling up 17 hits against a Brewers pitching staff that had no answers. Milwaukee's 3 errors didn't help matters, turning a rough day on the mound into a full-on rout.

07/29W@Giants8-2
07/28L@Giants0-3
07/26WvsRockies11-2
07/25WvsRockies8-5
07/24LvsRockies2-5
07/29LvsBrewers2-8
07/28WvsBrewers3-0
07/26LvsAngels3-4
07/25WvsAngels9-2
07/25WvsAngels7-6

It's a strange result for a Brewers team that came in 67-40 and sitting atop the NL Central, riding a lineup that's gotten a huge lift from Christian Yelich since he returned from injury. But this Milwaukee roster has real scar tissue on the pitching side — Brandon Woodruff is out for the season after shoulder surgery, Quinn Priester is looking at 8-to-10 months following thoracic outlet surgery, and Kyle Harrison is still working his way back from a forearm issue. Needing a body like Pannone to soak up innings in San Francisco is exactly the kind of game a 27-game division lead is built to withstand.

For the Giants, it's a rare feel-good afternoon in a lost season. San Francisco is stuck at 45-62 and dealing with its own rash of injuries — Matt Chapman and Casey Schmitt both banged up, with Schmitt reportedly facing knee surgery that could end his year, and Harrison Bader adding a scooter accident to his foot troubles. None of that mattered Wednesday with Webb dealing and the offense finally breaking out. It won't move the standings, but it's the kind of game a last-place club can point to when someone asks if this roster still has any life left in it.

Brewers 3, Giants 16: Final Score & Odds Recap — Logan Webb Ends His Slump by Torching the Brewers 16-3