First, a happy Fourth of July to our terrific community. In yesterday’s nine-game slate, relievers only recorded two wins, with one accompanied by a blown save (Juan Mejia), but secured five saves while being tagged with four losses. Here are the saves in condensed form, noting two required four outs (Seth Halvorsen and Carlos Estévez):
| Reliever | Save # | Pitches | Strike% | SwStr% | K:BB | BF |
| Carlos Estévez | 24 | 33 | 60.6 | 9.1 | 2:0 | 7 |
| Jeff Hoffman | 21 | 16 | 68.8 | 12.5 | 2:0 | 4 |
| Edwin Díaz | 18 | 16 | 62.5 | 25 | 2:0 | 3 |
| Seth Halvorsen | 7 | 26 | 69.2 | 11.5 | 1:0 | 7 |
| Ronny Henriquez | 5 | 15 | 73.3 | 26.7 | 1:0 | 3 |
For the save streamers:
Vulture Save Options for July 4
- Yimi García (TOR): Hoffman has pitched in back-to-back games and four of the past five.
- Reed Garrett (NYM): Díaz and Stanek have worked in consecutive contests. José Buttó will also be in play for a multiple-inning outing.
- John Schreiber (KC): Estévez may get tonight off after throwing 33 pitches during his save last night. Erceg has appeared in three of the previous four.
Vulture Save Stash for July 5
- Ryan Pressly (CHC): If Daniel Palencia pitches today, it will be three in the last four.
Under the Hood: Luke Weaver
During an eventual loss and sweep in Toronto, Luke Weaver struggled again. He gave up two hits, including George Springer’s two-run home run at the bottom of the eighth, and recorded two strikeouts. Since returning from the injured list, he has a 1.60 WHIP while giving up multiple runs on home runs in three of his six games.
When viewing his Statcast page, his four-seam velocity is down by one tick this season:

He returned on June 20, and as one can see, his velocity dipped during his last outing in Toronto:

He has thrown 64 four-seam fastballs since June 20 and has allowed a 45 percent hard-hit rate, including all three home runs. Last year, he was producing most of his whiffs at or near the top of the strike zone with the pitch, but as this chart indicates, he has been missing toward the heart of the zone:

His radial chart illustrates the contact allowed:

Although the four-seam has been a factor in his recent struggles, losing effectiveness with his cutter may be the real culprit. In this year’s small sample, the cutter has a .592 weighted on-base average allowed, and he’s throwing it almost 14 percent less often compared with last year.

Being a two-pitch pitcher against both sides of the plate has affected his recent results, and this should be monitored through the All-Star break, since it may limit his save opportunities despite being labeled a co-closer with Devin Williams.
Here are the remaining leverage events of interest from Thursday.
Closer CliffsNotes
Chicago Cubs –Tasked with the top of the tenth, Chris Flexen retired the side and recorded one strikeout, stranding the “place” runner. He collected his fifth win after his teammates walked it off at the bottom of the inning. He threw 14 pitches (8 strikes – 57.1 Strike%) and induced one whiff.
- Ryan Pressly worked a scoreless eighth, allowing a hit and striking out one.
- Ryan Brasier stranded two runners and retired his only batter at the top of the eighth.
- Drew Pomeranz gave up a hit and a walk while striking out two during two-thirds of the eighth.
Hierarchy Remains: Daniel Palencia | Brad Keller | Ryan Pressly
Cleveland Guardians – Making his first appearance requiring more than three outs this season, Emmanuel Clase could not keep the game scoreless at the bottom of the tenth. He retired the side on eight pitches in the ninth, but allowed a groundout, followed by a walk-off sacrifice fly in the tenth, resulting in his second loss. Clase threw 12 pitches (66.7 Strike%) and induced one whiff, snapping his six-game scoreless streak.

- Hunter Gaddis logged two clean frames and struck out two.
- Cade Smith fired a clean sixth, striking out two.
Hierarchy Remains: Emmanuel Clase | Cade Smith | Hunter Gaddis
Colorado Rockies – After stranding runners at the corners with two outs at the top of the eighth, Seth Halvorsen struggled during his up-down, returning for the ninth. He allowed Jake Meyers’ lead-off triple, and an earned run on Jose Altuve’s RBI groundout, recorded a strikeout, followed by consecutive singles before a game-ending flyout while recording his seventh save. He finished with three hits and the earned run while striking out one on 26 pitches (18 strikes – 69.2 Strike%) with three whiffs (11.5 SwStr%) over 1.1 innings. He has been scoreless in seven of his last nine outings since June 10, converting four of five save chances with nine strikeouts against three walks. While this note is encouraging:

It resulted in a single because of its location:

It’s the single near the top of the zone, slightly improving his command with this four-seam, a bit more elevated could produce a whiff or a pop-up instead. He’s close, and some slight improvements could mean a productive second half for the talented reliever.
- Victor Vodnik gave up a hit and a walk while striking out one during two-thirds of the eighth for his third hold.
- Juan Mejia was tagged with his first blown save, giving up three hits, including Cam Smith’s game-tying two-RBI triple on a miscommunication in the outfield. However, he was awarded his first win when his teammates rallied for two runs at the bottom of the seventh.
Hierarchy Remains: Seth Halvorsen | Victor Vodnik | Jake Bird
Kansas City Royals – Summoned at the bottom of the eighth with a runner on second and two outs, Carlos Estévez induced an inning-ending flyout by Luke Raley. Returning for the ninth, he worked into and then out of trouble while recording his 24th save. It began with Dominic Canzone’s solo home run, followed by a single, a strikeout, another single, and a wild pitch putting runners on second and third with one out. Estévez bore down, striking out Julio Rodríguez, then coaxing a game-ending groundout by Cal Raleigh. He threw 33 pitches (60.6 Strike%) and produced three whiffs (9.1 SwStr%) while recording two strikeouts. First his illustrator:

And his results:

He has converted his last five save opportunities but has allowed a run in three of his last seven appearances.
- Taylor Clarke gave up a hit and recorded a strikeout during two-thirds of the eighth for his second hold.
- Lucas Erceg stranded a runner while retiring both batters in the seventh, one via strikeout, securing his 15th hold.
Hierarchy Remains: Carlos Estévez | Lucas Erceg | John Schreiber
Miami Marlins – Enacting further revenge on the team that designated him for assignment, Ronny Henriquez fired a clean top of the ninth and recorded a strikeout, finishing a three-run win over the Twins for his fifth save, third in as many appearances, second of this series. He threw 15 pitches (73.3 Strike%) and generated four whiffs (26.7 SwStr%).

He has not allowed a baserunner in his last three games and has been scoreless in nine of his last ten, posting a 0.928 WHIP with 14 strikeouts against two walks (33.3 K-BB%) across 9.2 innings.
- Calvin Faucher worked a scoreless eighth, giving up a hit and striking out one.
- Anthony Bender was credited with his 15th hold despite allowing two hits during one-third of the seventh.
- Cade Gibson spoiled the shutout, serving up Matt Wallner’s solo home run and recording two outs in the seventh, one via strikeout.
With cautious optimism:
Updated Hierarchy: Ronny Henriquez | Calvin Faucher | Anthony Bender
New York Mets – For the eighth time this season, Edwin Díaz appeared on consecutive days and remained dominant, locking down his 18th save. He allowed Christian Yelich’s pinch-hit opposite field single, but he was erased by a caught stealing. Díaz threw 16 pitches (62.5 Strike%) and generated four whiffs (25 SwStr%) while recording two strikeouts.

In his last 23 games, he’s 2-0 while converting 12 of 13 save chances, during which he has posted a 0.739 WHIP with 34 strikeouts against six walks (32.9 K-BB%) through 23 innings.
- Ryne Stanek stranded a runner at the top of the seventh and retired all four batters, three via strikeout, for his seventh hold.
Hierarchy Remains: Edwin Díaz | Ryne Stanek | Reed Garrett
Toronto Blue Jays – Notching his 21st save and finishing a sweep of the Yankees, Jeff Hoffman worked around Jasson Domínguez’s one-out double with consecutive lineouts, preserving the three-run margin. He threw 16 pitches (11 strikes – 68.8 Strike%) and induced two whiffs (12.5 SwStr%).

Appearing for the fourth time in five days, the closer gritted out the save and has converted his last four save opportunities.
- Justin Bruihl struck out his only batter at the top of the eighth, stranding a runner while notching his second hold.
- Chad Green worked 1.1 scoreless frames, issuing two walks (one intentional – Aaron Judge) and striking out one for his sixth hold.
- Braydon Fisher was awarded his fourth hold despite giving up three hits and two earned runs with one strikeout while recording two outs across the sixth and seventh innings.
Hierarchy Remains: Jeff Hoffman | Yimi García | Yariel Rodríguez
Quick Hits
- Atlanta Braves: Appearing during a loss, Raisel Iglesias allowed Jo Adell’s one-out single and recorded all three outs via strikeout at the top of the ninth. He threw 16 pitches (75 Strike%) and produced four whiffs (25 SwStr%). This extended his scoreless streak to nine games, during which he has a win, a save, and two holds while posting a 0.779 WHIP with 11 strikeouts (37.9 K-BB%) across 7.2 innings.
- Detroit Tigers: Called upon with a runner on and one out at the bottom of the eighth, Will Vest retired both batters, one via strikeout on seven pitches (85.7 Strike%) and generated three whiffs (42.9 SwStr%). This marked his first appearance in July, and he owns a four-game scoreless streak with a 0.50 WHIP while recording five strikeouts versus one walk (30.8 K-BB%).
- Houston Astros: Entering a tied game at the bottom of the seventh, Jordan Weems allowed two earned runs and finished with five hits allowed during his two innings, resulting in his first loss.
- Los Angeles Dodgers: Closing a four-run win over the White Sox, Kirby Yates retired the side and recorded two strikeouts on 11 pitches (72.7 Strike%) with five whiffs (45.5 SwStr%). Tanner Scott allowed a walk while striking out two in a scoreless eighth. He threw 17 pitches (11 strikes – 64.7 Strike%) and produced three whiffs (17.6 SwStr%).
- Milwaukee Brewers: In an eventual one-run loss, Abner Uribe worked a scoreless eighth, yielding a hit and a walk while striking out two.
- Seattle Mariners: Entering at the top of the sixth, Casey Legumina stranded a runner despite issuing a walk. In the seventh, he allowed two more walks while recording an out before being lifted. Carlos Vargas allowed Bobby Witt Jr.’s game-tying RBI single and Vinnie Pasquantino’s two-RBI single, resulting in his fifth blown save. He finished with two hits, an earned run, and a walk during two-thirds of the seventh.
- Washington Nationals: Finishing a four-run win, Kyle Finnegan retired the side and recorded one strikeout while facing Detroit’s 2-3-4 lineup pocket. He threw eight pitches (87.5 Strike%) and induced one whiff (12.5 SwStr%). This extended his scoreless streak to six games, but he has not posted a save since June 6.
Monkey Merch
Closer Monkey t-shirts, long-sleeve tees, polos, a quarter-zip, and trucker hats are available for order through July 10 at this LINK.

Closer Monkey Emails for 2025
This year, the daily emails will change. Those interested in daily free updates with links should subscribe to our page at Substack. Subscribers to the former site will not transfer over; readers must register using the new link.
Premium subscribers can still use this link for daily, ad-free content or submit a $25 payment via Venmo to @gjewett9.
If you would like to leave a tip, please use this link for PayPal. Venmo can be sent to the address above.
Thanks for being part of the Closer Monkey community. Stay safe, and be well.
Statistical Credits:
