3B | San Francisco Giants
Bats/Throws: R/R | 6' 0" 220 lbs | Age: 26
Draft: 2020 | Rd. 2, No. 49, San Francisco Giants | San Diego State
PA AB R H HR SB AVG OBP SLG OPS
2023 277 253 28 52 5 2 .206 .255 .324 .579
2024 113 107 11 27 6 0 .252 .283 .477 .760
2025 348 312 34 74 12 0 .237 .305 .401 .706
3 Seasons 738 672 73 153 23 2 .228 .283 .384 .667
AVG HR SB OPS
2023 .206 5 2 .579
2024 .252 6 0 .760
2025 .237 12 0 .706
3 Seasons .228 23 2 .667
MLB Percentile Rankings
Hits Spray Chart

Statcast Batting Statistics

Season Age Pitches Batted
Balls
Barrels Barrel % Barrel/PA Exit
Velocity
Max EV Launch
Angle
LA Sweet-
Spot %
XBA XSLG WOBA XWOBA XWOBACON HardHit% K% BB%
2023 24 965 194 13 6.7 4.7 88.1 111.6 15.1 32.0 .234 .359 .254 .282 .339 34.0 23.5 4.7
2024 25 374 83 7 8.4 6.2 89.2 109.7 16.5 31.3 .245 .444 .323 .308 .378 36.1 22.1 3.5
2025 26 1330 233 21 9.0 6.0 89.5 111.6 19.2 40.3 .260 .429 .307 .328 .396 43.8 23.9 7.8
Player 2669 510 41 8.0 5.6 89.0 111.6 17.2 35.7 .248 .405 .290 .308 .371 38.8 23.4 6.0
MLB 7.2 4.9 88.6 122.9 12.4 33.3 .245 .404 .315 .315 .368 37.0 22.2 8.4
! Note: All figures in this table cover the period 2015-present.




Fastball: 4 Seam, 2 Seam, Cutter, Sinker. Offspeed: Split, Change, Fork, Screw. Breaking: Slider, Curve, Knuckle, Sweeper, Slurve, Other
  •   
  •   
  •   
  •   
  •   
  •   
  •   

Batted Ball Profile

AIR: Fly Balls + Line Drives + Popups All Batted Balls Batted Ball Breakdown
Season GB % AIR % FB % LD % PU % Pull % Straight % Oppo % Pull GB % Straight GB % Oppo GB % Pull AIR % Straight AIR % Oppo AIR %
2023 41.8 58.2 27.8 22.2 8.2 37.6 36.1 26.3 21.6 16.5 3.6 16.0 19.6 22.7
2024 39.8 60.2 31.3 20.5 8.4 43.4 32.5 24.1 21.7 12.0 6.0 21.7 20.5 18.1
2025 32.6 67.4 30.0 30.0 7.3 46.8 29.6 23.6 20.6 9.0 3.0 26.2 20.6 20.6
Player 37.3 62.7 29.4 25.5 7.8 42.7 32.5 24.7 21.2 12.4 3.7 21.6 20.2 21.0
MLB 44.2 55.8 24.0 24.7 7.1 37.4 37.4 25.1 20.6 17.6 5.9 16.7 19.7 19.3
! Note: All figures in this table cover the period 2015-present.

Quality of Contact

Season Weak % Topped % Under % Flare/Burner % Solid % Barrel % Barrel/PA
2023 5.2 30.4 28.9 25.3 3.6 6.7 4.7
2024 1.2 27.7 31.3 24.1 7.2 8.4 6.2
2025 4.7 21.0 29.2 27.0 9.0 9.0 6.0
Player 4.3 25.7 29.4 25.9 6.7 8.0 5.6
MLB 4.0 32.4 24.9 24.4 5.9 7.2 4.9
! Note: All figures in this table cover the period 2015-present.

Run Values by Pitch Type

Year Pitch Type Team RV/100 Run Value Pitches % PA BA SLG wOBA Whiff% K% PutAway % xBA xSLG xwOBA Hard Hit %
2025 4-Seam Fastball 0.4 2 372 28.0 106 .263 .505 .354 19.8 22.6 18.5 .264 .495 .351 50.7
2025 Slider -2.4 -6 250 18.8 60 .132 .189 .193 37.3 31.7 25.7 .207 .298 .263 34.3
2025 Sinker -0.6 -1 200 15.0 57 .320 .420 .358 14.9 8.8 11.4 .325 .424 .358 52.2
2025 Curveball -1.1 -2 141 10.6 32 .172 .310 .252 26.9 31.3 20.0 .154 .227 .210 31.6
2025 Changeup -1.1 -1 118 8.9 28 .185 .222 .198 33.3 28.6 20.0 .306 .500 .359 26.3
2025 Sweeper 1.8 2 107 8.0 32 .250 .429 .369 40.4 37.5 26.1 .266 .438 .351 43.8
2025 Cutter -1.3 -1 96 7.2 18 .250 .375 .317 15.9 11.1 8.7 .313 .510 .391 64.3
2025 Split-Finger 1.8 1 39 2.9 12 .250 .583 .346 26.1 25.0 15.0 .135 .376 .214 11.1
2024 4-Seam Fastball 0.2 0 115 30.7 38 .167 .444 .275 20.6 23.7 27.3 .218 .503 .323 51.9
2024 Slider -3.3 -2 65 17.4 19 .111 .278 .189 44.1 31.6 37.5 .148 .269 .208 16.7
2024 Sinker 2.0 1 62 16.6 23 .364 .591 .422 6.7 17.4 40.0 .310 .507 .365 44.4
2024 Cutter 7.7 3 39 10.4 14 .462 .923 .539 9.5 0.0 0.0 .364 .664 .407 21.4
2024 Changeup 1.8 1 33 8.8 9 .444 .444 .400 31.6 22.2 28.6 .283 .331 .263 28.6
2024 Sweeper -1.7 0 29 7.8 1 .000 .000 .000 50.0 0.0 0.0 .091 .113 .082 0.0
2024 Curveball 4.4 1 16 4.3 3 .500 .500 .533 0.0 0.0 0.0 .440 .532 .517 0.0
2024 Split-Finger -11.9 -1 9 2.4 5 .000 .000 .000 50.0 60.0 50.0 .120 .133 .113 50.0
2024 Slurve -4.6 0 6 1.6 1 .000 .000 .000 75.0 100.0 50.0 -- -- .000 --
! Note: Years are in reverse order.

Statcast Batting Run Value

Runs
Year Team PA Pitches Heart Shadow Chase Waste All
2023 277 965 -6 -14 0 4 -15
2024 113 374 4 -4 1 1 2
2025 347 1,330 -2 -16 8 5 -5
Player 737 2,669 -4 -34 9 -4 -19
+ View Complete Batting Run Value Leaderboard
+ Show Leverage-Based Run Value

Plate Discipline

Season Pitches Zone % Zone Swing % Zone Contact % Chase % Chase Contact % Edge % 1st Pitch Swing % Swing % Whiff % Meatball % Meatball Swing %
2023 965 50.2 71.3 82.9 38.5 54.1 45.0 38.6 55.0 27.1 7.9 78.9
2024 374 48.4 69.1 88.8 36.8 50.7 45.2 39.8 52.4 25.0 8.0 73.3
2025 1,330 49.5 71.9 85.4 31.6 49.1 41.4 38.0 51.6 25.8 8.6 80.7
Player 2,669 49.6 71.3 85.0 34.8 51.3 43.3 38.5 52.9 26.2 8.2 79.1
MLB 48.9 67.0 82.5 28.4 58.0 42.7 30.1 47.3 25.0 7.3 76.3
! Note: All figures in this table cover the period 2015-present.

Percentile Rankings

Year xwOBA xBA xSLG xISO xOBP Brl Brl% EV Max EV Hard
Hit%
K% BB% Whiff% Chase
Rate
Speed OAA Arm
Strength
Bat
Speed
Squared-up
Rate
Swing
Length
2023 74 69 24 94
2024 57 68 83
2025 58 62 61 58 54 27 50 43 72 52 34 44 40 26 54 17 64
+ View Complete Percentile Rankings Leaderboard

Expected Home Runs

Adjusted

Year Team Avg HR Trot Actual HR xHR HR-xHR Doubters Mostly Gone No Doubters No Doubter %
2023 22.65 5 5.4 0 1 4 3 60.0
2024 23.27 6 5.8 0 0 2 4 66.7
2025 22.45 12 10.2 2 5 8 4 33.3
Player 22.70 23 21.3 2 6 14 11 47.8
+ View Standard Expected Home Runs

Expected Home Runs by Park

Adjusted

Year HR
2023 5 3 4 4 6 5 6 4 5 4 5 6 4 4 5 6 4 4 8 7 5 8 7 8 4 5 7 5 7 6 5
2024 6 4 5 6 6 6 6 5 6 6 6 6 6 6 6 5 6 6 6 6 6 5 6 6 5 6 6 6 6 6 6
2025 12 9 8 5 7 10 10 9 11 7 11 13 11 16 11 6 9 8 11 14 9 11 14 12 6 8 10 13 14 11 12
Player 23 16 17 15 19 21 22 18 22 17 22 25 21 26 22 17 19 18 25 27 20 24 27 26 15 19 23 24 27 23 23
Note: xHR tells how many of this player's batted balls would have been out of other stadiums. The "Adjusted" view here accounts for different wall heights, distances and environmental effects using Statcast Park Factor data.
+ View Standard Expected Home Runs By Park
+ View Complete Expected Home Runs Leaderboard

Year to Year Changes

2025 +/-   2024 +/-   2023
Results
BA .237 -.015 .252 +.046 .206
xBA .260 +.015 .245 +.011 .234
OBP .305 +.022 .283 +.028 .255
xOBP .326 +.050 .276 -.007 .283
SLG .401 -.076 .477 +.153 .324
xSLG .429 -.015 .444 +.085 .359
ISO .163 -.061 .224 +.105 .119
xISO .170 -.030 .200 +.075 .125
BABIP .282 +.009 .273 +.020 .253
wOBA .307 -.016 .323 +.069 .254
xwOBA .328 +.020 .308 +.026 .282
wOBACON .365 -.033 .398 +.100 .298
xwOBACON .396 +.018 .378 +.039 .339
BACON .319 -.006 .325 +.053 .272
xBACON .350 +.034 .316 +.004 .312
Statcast Hit Metrics
Hard Hit % 43.8 +7.7 36.1 +2.1 34.0
Avg Exit Velocity 89.5 +0.3 89.2 +1.1 88.1
Launch Angle Sweet-Spot % 40.3 +9.0 31.3 -0.7 32.0
Barrel % 9.0 +0.6 8.4 +1.7 6.7
Avg Launch Angle 19.2 +2.7 16.5 +1.4 15.1
Statcast Bat Tracking
Bat Speed 71.7 +0.1 71.6 +1.1 70.5
Attack Angle 11° +1° 11° +3°
Ideal Attack Angle % 47.1 +1.6 45.5 -1.6 47.1
Attack Direction -8° +2° -9° -6° -3°
Swing Path - Tilt 35° +1° 34° 34°
Swing Length 7.5 0.0 7.5 +0.3 7.2
Statcast Pitch Metrics
Fastball Velocity 93.3 +0.8 92.5 -0.4 92.9
Breaking Velocity 83.6 +0.4 83.2 +0.2 83.0
Offspeed Velocity 85.8 +2.5 83.3 -0.9 84.2
Batted Ball Results
Barrels 21 +14 7 -6 13
Popup % 7.3 -1.1 8.4 +0.2 8.2
Flyball % 30.0 -1.3 31.3 +3.5 27.8
Line Drive % 30.0 +9.5 20.5 -1.7 22.2
Groundball % 32.6 -7.2 39.8 -2.0 41.8
Pull % 46.8 +3.4 43.4 +5.8 37.6
Straight Away % 29.6 -2.9 32.5 -3.6 36.1
Opposite Field % 23.6 -0.5 24.1 -2.2 26.3
Weak Contact % 4.7 +3.5 1.2 -4.0 5.2
Pull Airball % 26.2 +4.5 21.7 +5.7 16.0
Topped Contact % 21.0 -6.7 27.7 -2.7 30.4
Under Contact % 29.2 -2.1 31.3 +2.4 28.9
Flare/Burner Contact % 27.0 +2.9 24.1 -1.2 25.3
Solid Contact % 9.0 +1.8 7.2 +3.6 3.6
HR/FB % 17.1 -6.0 23.1 +13.8 9.3
Popups 17 +10 7 -9 16
Flyballs 70 +44 26 -28 54
Line Drives 70 +53 17 -26 43
Groundballs 76 +43 33 -48 81
Plate Discipline
In Zone % 49.5 +1.1 48.4 -1.8 50.2
Out of Zone % 50.5 -1.1 51.6 +1.8 49.8
Edge % 41.4 -3.8 45.2 +0.2 45.0
Zone Swing % 71.9 +2.8 69.1 -2.2 71.3
Out of Zone Swing % 31.6 -5.2 36.8 -1.7 38.5
In Zone Contact % 85.4 -3.4 88.8 +5.9 82.9
Out of Zone Contact % 49.1 -1.6 50.7 -3.4 54.1
Whiff % 25.8 +0.8 25.0 -2.1 27.1
First Strike % 67.7 -3.1 70.8 +7.3 63.5
First Pitch Swing % 38.0 -1.8 39.8 +1.2 38.6
Swing % 51.6 -0.8 52.4 -2.6 55.0
Meatball Swing % 80.7 +7.4 73.3 -5.6 78.9
Meatball % 8.6 +0.6 8.0 +0.1 7.9
Zone Swing & Miss % 14.6 +3.4 11.2 -5.9 17.1
Out of Zone Swing & Miss % 50.9 +1.6 49.3 +3.4 45.9
In Zone 659 +478 181 -304 485
Out of Zone 671 +478 193 -288 481
Edge 551 +382 169 -266 435
In Zone Swings 474 +349 125 -221 346
Out of Zone Swings 212 +141 71 -114 185
In Zone Swing & Misses 69 +55 14 -45 59
Out of Zone Swing & Misses 108 +73 35 -50 85
Basic
Pitches 1,330 +956 374 -591 965
PA 348 +235 113 -164 277
AB 312 +205 107 -146 253
Hits 74 +47 27 -25 52
Singles 47 +31 16 -16 32
Doubles 15 +11 4 -11 15
Triples 0 -1 1 +1 0
Home Runs 12 +6 6 +1 5
Walks 27 +23 4 -9 13
Strikeouts 83 +58 25 -40 65
K% 23.9 +1.8 22.1 -1.4 23.5
BB% 7.8 +4.3 3.5 -1.2 4.7
HBP 5 +4 1 -4 5
Batted Balls 233 +150 83 -111 194
Number of Fastballs 668 +452 216 -293 509
Number of Offspeed 157 +115 42 -92 134
Number of Breaking 389 +308 81 -161 242
+ Toggle Viewing All Player's Year to Year Stats

Statcast Fielder Positioning

wOBA
SeasonAlignment TypeBat SidePAShifts/Shades%No Shift/ShadeShift/Shade
2023 Shades R 277 11 4.0 .261 .080
2024 Shades R 113 7 6.2 .325 .293
2025 Shades R 347 24 6.9 .322 .115
! Note: Shifts are through the 2022 season, Shaded starting from the 2023 season, Shift: three or more infielders are on the same side of second base, Shade: positioned outside of their typical responsible slices of the field.
Learn more about how positioning is defined here

Pitch Tempo

Bases EmptyRunners On Base
SeasonTeamPitchesTempoFast %Slow %PitchesTempoFast %Slow %
2023 237 15.3 44.3% 2.1% 140 19.4 2.1% 0.7%
2024 94 15.5 39.4% 0.0% 57 18.3 17.5% 1.8%
2025 319 16.4 28.2% 0.3% 216 18.8 3.7% 0.5%
+ View Complete Pitch Tempo Leaderboard

Statcast Rankings