Vancouver Television Sports← GAME CENTRE
← MLB / AFTER THE WHISTLE

MLB • September 23, 2026

Luke Keaschall’s early blast and seventh-inning pressure lift Twins past Giants 4-2

The Minnesota Twins did not bury the San Francisco Giants at Oracle Park; they simply kept returning to the game’s important moments and won most of them. Luke Keaschall supplied the early jolt, then Minnesota broke a 2-2 tie in the seventh on RBI singles from Walker Jenkins and Josh Bell to secure a 4-2 victory.

MLB / FINAL
Minnesota Twins4 — 2San Francisco Giants
Minnesota TwinsSan Francisco Giants

A quick lead, then San Francisco’s only surge

Keaschall put the Twins in front in the third inning with a solo homer to left, a clean early statement in a game that would otherwise ask Minnesota to keep grinding. It was not the start of an avalanche. Instead, it set up a contest where single innings mattered more than sustained offensive flow, and the Twins eventually proved better at winning those pockets of play.

San Francisco’s best stretch came in the fourth. Shay Whitcomb singled to right to bring home Bo Davidson and Andrew Knizner, with Marcelo Mayer advancing to third on the play, and for a moment the Giants had flipped the script. Those two runs turned a quiet opening into a lead, but they also turned out to be all the offense the Giants would produce.

That matters because the rest of the Giants’ line was thin. San Francisco finished with five hits, and Whitcomb’s 2-for-4 night accounted for two of them and both RBIs. Mayer helped create that fourth-inning opening by reaching twice on walks, but the lineup never found a second wave. For one inning, the Giants were precise; outside it, Minnesota’s pitchers steadily took space away.

Keaschall keeps the game from tilting

Minnesota answered in the fifth, and Keaschall was in the middle of it again. His sacrifice fly to center scored Ben Ross and tied the game at 2-2, giving him two RBIs on the night and rescuing the Twins from letting the fourth inning become the defining turn. Keaschall did not fill the box score with hits, but he touched the scoreboard twice, and that was central to the outcome.

The starting pitching kept the game narrow enough for those swings to matter. Cesar Perdomo gave the Giants 5.1 innings, allowed five hits and two earned runs, and, just as importantly, did not issue a walk. Connor Prielipp matched that length for Minnesota, going 5.1 innings with four hits allowed, two earned runs, two walks and three strikeouts. Neither side got a dominant start, but both starters prevented the game from breaking open early.

Where the separation began to show was after the starters. Minnesota’s bullpen covered the final 3.2 innings without allowing a run. Yoendrys Gomez handled 1.2 scoreless innings with two strikeouts, A.J. Minter added a clean inning, and the final frame was closed out without San Francisco finding a late equalizer. In a game this tight, that stretch was as important as any single hit.

The seventh inning belonged to Minnesota

The tie lasted into the seventh, and that was where Minnesota finally turned pressure into enough breathing room. Kody Clemens scored on Walker Jenkins’ single to right for a 3-2 lead. Josh Bell followed with a single to center that brought Jenkins home and pushed Brooks Lee to third. Two straightforward hitting plays, one inning, and suddenly the Twins had the only margin the game would need.

That sequence fit the way Minnesota built this win. The Twins did not lean on overwhelming power beyond Keaschall’s homer, but they kept adding chances. They finished with nine hits, three walks and 159 pitches seen across 39 plate appearances. The Giants’ staff limited extra-base damage to a homer and a triple, yet Minnesota still forced enough traffic to make the middle innings feel expensive.

Our take: this was a professional road win more than a spectacular one. Minnesota was cleaner in the small details, finishing without an error and getting through the late innings with steadier relief. The caution for the Twins is that nine hits and three walks produced only four runs, with 12 runners left on base. Against a lineup that managed just five hits, that inefficiency did not cost them. On another night, it might make the finish far less comfortable.

Our take: the Giants will see a missed opportunity in how little followed their fourth-inning rally. They scored twice there and nowhere else, finished with one extra-base hit, and left nine runners on base. That does not call for a grand diagnosis so much as a simpler one: they need more innings that look like the fourth and fewer stretches where one rally has to carry the entire night. San Francisco kept the game close, but Minnesota owned the better share of the meaningful at-bats, and the 4-2 result reflected that.

Scoring moments

  1. 3rd Inning

    Keaschall homered to left (381 feet).

  2. 4th Inning

    Whitcomb singled to right, Davidson scored and Knizner scored, Mayer to third.

  3. 5th Inning

    Keaschall hit sacrifice fly to center, Ross scored.

  4. 7th Inning

    Jenkins singled to right, Clemens scored.

  5. 7th Inning

    Bell singled to center, Jenkins scored, Lee to third.

Minnesota Twins — Batting
PlayerH-ABABRHRBIHRBBK#PAVGOBPSLG
Luke Keaschall1-3311210118.276.366.392
Ryan Kreidler0-110000001.216.281.378
Brooks Lee1-4401001119.255.303.433
Josh Bell1-5501100020.255.317.416
Ryan Jeffers1-4401000222.252.350.458
Alan Roden1-3301001022.286.367.377
Royce Lewis1-4401000115.226.288.377
Emmanuel Rodriguez1-3301001015.195.250.439
Aaron Sabato0-220000018.000.000.000
Kody Clemens0-221000006.235.296.455
Ben Ross1-221100007.190.190.381
Walker Jenkins1-221110006.222.300.417
Minnesota Twins — Pitching
PlayerIPHRERBBKHRPC-STERAPC
Connor Prielipp5.142223077-554.8777
Yoendrys Gomez1.200002024-184.3624
A.J. Minter1.00000007-52.427
Andrew Morris1.010012023-134.2123
San Francisco Giants — Batting
PlayerH-ABABRHRBIHRBBK#PAVGOBPSLG
Jonah Cox0-3300001013.266.315.403
Turner Hill0-4400000012.220.314.310
Victor Bericoto0-4400000011.233.255.417
Bo Davidson1-3311000010.300.364.300
Grant McCray0-110000003.145.253.276
Andrew Knizner1-3311000010.235.307.382
Drew Cavanaugh0-110000013.225.314.268
Brett Harris0-3300000214.171.293.229
Drew Gilbert1-110100006.240.329.398
Marcelo Mayer0-2200002121.213.281.303
Scott Bandura0-000000000.190.227.238
Shay Whitcomb2-4402200116.191.219.327
Christian Koss0-3300000212.228.270.321
San Francisco Giants — Pitching
PlayerIPHRERBBKHRPC-STERAPC
Cesar Perdomo5.152202177-513.6577
Joel Kuhnel0.200011019-104.6019
Dylan Smith0.212211017-104.0617
Sam Hentges0.110011011-53.3811
Braxton Roxby1.220001028-184.9128
Trent Harris0.10000007-42.117
Minnesota Twins — Team statistics
Batting · Games Played1
Batting · Team Games Played1
Batting · Hit By Pitch0
Batting · Ground Balls0
Batting · Strikeouts6
Batting · Runs Batted In4
Batting · Sacrifice Hit0
Batting · Hits9
Batting · Stolen Bases0
Batting · Walks3
Batting · Catcher Interference0
Batting · Runs4
Batting · Ground Into Double Play0
Batting · Sacrifice Flies1
Batting · At Bats35
Batting · Home Runs1
Batting · Grand Slam Home Runs0
Batting · Runners Left On Base12
Batting · Triples1
Batting · Game Winning RBIs0
Batting · Intentional Walks0
Batting · Doubles0
Batting · Fly Balls0
Batting · Caught Stealing0
Batting · Pitches159
Batting · Games Started0
Batting · Pinch At Bats0
Batting · Pinch Hits0
Batting · Player Rating0.0
Batting · Is Qualified1
Batting · Is Qualified In Steals0
Batting · Total Bases14
Batting · Plate Appearances39
Batting · Projected Home Runs162.0
Batting · Extra Base Hits2
Batting · Runs Created4.7
Batting · Batting Average.257
Batting · Pinch Hit Average.000
Batting · Slugging Percentage.400
Batting · Secondary Average.229
Batting · On Base Percentage.308
Batting · OBP Pct + SLG Pct.708
Batting · Ground To Fly Ball Ratio0.0
Batting · Runs Created Per 27 Outs4.7
Batting · Batter Rating30.5
Batting · At Bats Per Home Run35.0
Batting · Stolen Base Percentage0.00
Batting · Pitches Per Plate Appearance4.08
Batting · Isolated Power.143
Batting · Walk To Strikeout Ratio0.50
Batting · Walks Per Plate Appearance.077
Batting · Secondary Average Minus Batting Average-.029
Batting · Runs Produced8.0
Batting · Runs Ratio1.0
Batting · Patience Ratio0.5
Batting · Balls In Play Average0.3
Batting · MLB Rating83.0
Batting · Offensive Wins Above Replacement0.0
Batting · Wins Above Replacement0.0
Pitching · Games Played1
Pitching · Team Games Played1
Pitching · Saves1
Pitching · Ground Balls10
Pitching · Strikeouts7
Pitching · Sacrifice Flies0
Pitching · Losses0
Pitching · Hits5
Pitching · Earned runs2
Pitching · Batters Hit0
Pitching · Walks3
Pitching · Runs2
Pitching · Stolen Bases0
Pitching · Caught Stealing0
Pitching · Sacrifice Bunts0
Pitching · Save Opportunities1
Pitching · Home Runs0
Pitching · Triples0
Pitching · Finishes0
Pitching · Balks0
Pitching · Intentional Walks0
Pitching · Fly Balls10
Pitching · Batters Faced35
Pitching · Holds1
Pitching · Doubles1
Pitching · Wins1
Pitching · Complete Games0
Pitching · Perfect Games0
Pitching · Wild Pitches0
Pitching · Runs Batted In0
Pitching · Third Innings Pitched27
Pitching · Earned Runs0
Pitching · Shutouts0
Pitching · Pickoff Attempts0
Pitching · Pitches131
Pitching · Run Support0.0
Pitching · Catcher Interference0
Pitching · Pitches As Starter0
Pitching · Games Started1
Pitching · Game Score0.0
Pitching · Quality Starts1
Pitching · Inherited Runners0
Pitching · Inherited Runners Scored0
Pitching · Player Rating0.0
Pitching · At Bats32
Pitching · Total Bases6
Pitching · Is Qualified1
Pitching · Is Qualified1
Pitching · Full Innings9
Pitching · Partial Innings0
Pitching · Blown Saves0
Pitching · Innings pitched9.0
Pitching · Earned Run Average2.00
Pitching · Walks Plus Hits Per Inning Pitched0.89
Pitching · Win Percentage1.000
Pitching · Caught Stealing Percentage0.0
Pitching · Ground To Fly Ball Ratio1.0
Pitching · Pitches Per Start0.0
Pitching · Pitches Per Inning14.6
Pitching · Pitches Per Plate Appearance3.7
Pitching · Run Support Average0.0
Pitching · Opponent Batting Average.156
Pitching · Opponent's Slugging pct..188
Pitching · Opponent's On-base pct..229
Pitching · Opponent's OPB Pct + SLG Pct.416
Pitching · Save Percentage1.0
Pitching · Strikeouts Per 9 Innings7.0
Pitching · Strikeout To Walk Ratio2.3
Pitching · Tough Losses0
Pitching · Cheap Wins0
Pitching · Save Opportunities Per Win1.0
Pitching · Balls In Play Average0.200
Pitching · Total Bases6.000
Pitching · Pitch Count0
Pitching · Strikes91
Pitching · Strike To Pitch Ratio0.0
Pitching · Wins Above Replacement0.0
Fielding · Games Played1
Fielding · Team Games Played1
Fielding · Double Plays0
Fielding · Opportunities0
Fielding · Errors0
Fielding · Passed Balls0
Fielding · Assists9
Fielding · Outfield Assists0
Fielding · Pickoffs0
Fielding · Putouts27
Fielding · Outs On Field0
Fielding · TP0
Fielding · Balls In Zone0
Fielding · Extra Bases0
Fielding · Outs Made0
Fielding · Hits0
Fielding · Total Bases0
Fielding · Games Started0
Fielding · Third Innings Played0.0
Fielding · Caught Stealing0
Fielding · Stolen Bases Allowed0
Fielding · Earned Runs0
Fielding · Qualified1
Fielding · Qualified Catcher1
Fielding · Qualified Pitcher0
Fielding · Successful Chances0
Fielding · Total Chances0
Fielding · Full Innings0
Fielding · Part Innings Played0
Fielding · Fielding Percentage0.000
Fielding · Range Factor0.0
Fielding · Zone Rating0.0
Fielding · Caught Stealing Percentage0.000
Fielding · Earned Run Average0.0
Fielding · Defensive Wins Above Replacement0.0
San Francisco Giants — Team statistics
Batting · Games Played1
Batting · Team Games Played1
Batting · Hit By Pitch0
Batting · Ground Balls0
Batting · Strikeouts7
Batting · Runs Batted In2
Batting · Sacrifice Hit0
Batting · Hits5
Batting · Stolen Bases0
Batting · Walks3
Batting · Catcher Interference0
Batting · Runs2
Batting · Ground Into Double Play0
Batting · Sacrifice Flies0
Batting · At Bats32
Batting · Home Runs0
Batting · Grand Slam Home Runs0
Batting · Runners Left On Base9
Batting · Triples0
Batting · Game Winning RBIs0
Batting · Intentional Walks0
Batting · Doubles1
Batting · Fly Balls0
Batting · Caught Stealing0
Batting · Pitches131
Batting · Games Started0
Batting · Pinch At Bats0
Batting · Pinch Hits0
Batting · Player Rating0.0
Batting · Is Qualified1
Batting · Is Qualified In Steals0
Batting · Total Bases6
Batting · Plate Appearances35
Batting · Projected Home Runs0.0
Batting · Extra Base Hits1
Batting · Runs Created1.1
Batting · Batting Average.156
Batting · Pinch Hit Average.000
Batting · Slugging Percentage.188
Batting · Secondary Average.125
Batting · On Base Percentage.229
Batting · OBP Pct + SLG Pct.416
Batting · Ground To Fly Ball Ratio0.0
Batting · Runs Created Per 27 Outs1.1
Batting · Batter Rating15.0
Batting · At Bats Per Home Run0.0
Batting · Stolen Base Percentage0.00
Batting · Pitches Per Plate Appearance3.74
Batting · Isolated Power.031
Batting · Walk To Strikeout Ratio0.43
Batting · Walks Per Plate Appearance.086
Batting · Secondary Average Minus Batting Average-.031
Batting · Runs Produced4.0
Batting · Runs Ratio1.0
Batting · Patience Ratio0.3
Batting · Balls In Play Average0.2
Batting · MLB Rating66.3
Batting · Offensive Wins Above Replacement0.0
Batting · Wins Above Replacement0.0
Pitching · Games Played1
Pitching · Team Games Played1
Pitching · Saves0
Pitching · Ground Balls12
Pitching · Strikeouts6
Pitching · Sacrifice Flies1
Pitching · Losses1
Pitching · Hits9
Pitching · Earned runs4
Pitching · Batters Hit0
Pitching · Walks3
Pitching · Runs4
Pitching · Stolen Bases0
Pitching · Caught Stealing0
Pitching · Sacrifice Bunts0
Pitching · Save Opportunities0
Pitching · Home Runs1
Pitching · Triples1
Pitching · Finishes0
Pitching · Balks0
Pitching · Intentional Walks0
Pitching · Fly Balls9
Pitching · Batters Faced39
Pitching · Holds0
Pitching · Doubles0
Pitching · Wins0
Pitching · Complete Games0
Pitching · Perfect Games0
Pitching · Wild Pitches0
Pitching · Runs Batted In0
Pitching · Third Innings Pitched27
Pitching · Earned Runs0
Pitching · Shutouts0
Pitching · Pickoff Attempts0
Pitching · Pitches159
Pitching · Run Support0.0
Pitching · Catcher Interference0
Pitching · Pitches As Starter0
Pitching · Games Started1
Pitching · Game Score0.0
Pitching · Quality Starts0
Pitching · Inherited Runners0
Pitching · Inherited Runners Scored1
Pitching · Player Rating0.0
Pitching · At Bats35
Pitching · Total Bases14
Pitching · Is Qualified1
Pitching · Is Qualified0
Pitching · Full Innings9
Pitching · Partial Innings0
Pitching · Blown Saves0
Pitching · Innings pitched9.0
Pitching · Earned Run Average4.00
Pitching · Walks Plus Hits Per Inning Pitched1.33
Pitching · Win Percentage.000
Pitching · Caught Stealing Percentage0.0
Pitching · Ground To Fly Ball Ratio1.3
Pitching · Pitches Per Start0.0
Pitching · Pitches Per Inning17.7
Pitching · Pitches Per Plate Appearance4.1
Pitching · Run Support Average0.0
Pitching · Opponent Batting Average.257
Pitching · Opponent's Slugging pct..400
Pitching · Opponent's On-base pct..308
Pitching · Opponent's OPB Pct + SLG Pct.708
Pitching · Save Percentage0.0
Pitching · Strikeouts Per 9 Innings6.0
Pitching · Strikeout To Walk Ratio2.0
Pitching · Tough Losses0
Pitching · Cheap Wins0
Pitching · Save Opportunities Per Win0.0
Pitching · Balls In Play Average0.276
Pitching · Total Bases14.000
Pitching · Pitch Count0
Pitching · Strikes98
Pitching · Strike To Pitch Ratio0.0
Pitching · Wins Above Replacement0.0
Fielding · Games Played1
Fielding · Team Games Played1
Fielding · Double Plays0
Fielding · Opportunities0
Fielding · Errors1
Fielding · Passed Balls0
Fielding · Assists13
Fielding · Outfield Assists0
Fielding · Pickoffs0
Fielding · Putouts27
Fielding · Outs On Field0
Fielding · TP0
Fielding · Balls In Zone0
Fielding · Extra Bases0
Fielding · Outs Made0
Fielding · Hits0
Fielding · Total Bases0
Fielding · Games Started0
Fielding · Third Innings Played0.0
Fielding · Caught Stealing0
Fielding · Stolen Bases Allowed0
Fielding · Earned Runs0
Fielding · Qualified1
Fielding · Qualified Catcher1
Fielding · Qualified Pitcher0
Fielding · Successful Chances0
Fielding · Total Chances0
Fielding · Full Innings0
Fielding · Part Innings Played0
Fielding · Fielding Percentage0.000
Fielding · Range Factor0.0
Fielding · Zone Rating0.0
Fielding · Caught Stealing Percentage0.000
Fielding · Earned Run Average0.0
Fielding · Defensive Wins Above Replacement0.0