Brett Harris headshot

Brett Harris

Bats/Throws: R/RAge: 28Born: Arlington Heights, IL, United StatesDebut: May 3, 2024Draft: 2021

Brett Harris is a third baseman for the San Francisco Giants. Harris was born on June 24, 1998 in Arlington Heights, IL, United States and debuted in the major leagues on May 3, 2024. Harris bats right and throws right. The Oakland Athletics drafted Harris in 2021 (round 7, pick 218 overall) out of Gonzaga. In 2026, Harris is batting .136 with 0 home runs, 2 RBI and an OPS of .422 in 21 games. MLBDB has 3 seasons of statistics for Harris, from 2024 to 2026.

HR02026 season
RBI22026 season
OPS.4222026 season
Seasons3San Francisco Giants

Hitting

3 seasons of hitting across 3 clubs. Club-specific splits are shown in lighter type.

Brett Harris, season by season hittingRegular season, oldest first
SeasonTeamGPAABRH2B3BHRRBISBBBSOAVGOBPSLGOPS
2024OAKOAK3612310315153031201725.146.276.262.539
2025ATHATH328473112050051721.274.349.342.692
2026AllAll teams2151443620020316.136.240.182.422
2026ATHATH564000000012.000.333.000.333
2026BOSBOS132000000000.000.333.000.333
2026SFSF1542383620020214.158.220.211.430
G
Games played in any role, including games spent only pitching or running the bases.
PA
Plate appearances. Completed turns at the plate, including walks, hit-by-pitches and sacrifices.
AB
At bats. Plate appearances that count toward batting average; walks, hit-by-pitches, sacrifices and catcher's interference are left out.
R
Runs scored.
H
Hits.
2B
Doubles.
3B
Triples.
HR
Home runs.
RBI
Runs batted in.
SB
Stolen bases.
BB
Walks, including intentional walks.
SO
Strikeouts.
AVG
Batting average. Formula: H ÷ AB.
OBP
On-base percentage. Formula: (H + BB + HBP) ÷ (AB + BB + HBP + SF).
SLG
Slugging percentage, total bases per at bat. Formula: TB ÷ AB.
OPS
On-base plus slugging. Formula: OBP + SLG.
Brett Harris, expanded hitting by seasonRegular season, oldest first
SeasonTeam1BTBCSSB%HBPIBBSHSFGIDPGO/AOLOBAB/HRBB/K
2024OAKOAK92730.0%200130.684234.330.68
2025ATHATH15250100.0%201111.1328N/A0.33
2026AllAll teams480N/A301021.0926N/A0.19
2026ATHATH000N/A100001.004N/A0.50
2026BOSBOS000N/A10001N/A1N/AN/A
2026SFSF480N/A101010.9021N/A0.14
1B
Singles. Formula: H − 2B − 3B − HR.
TB
Total bases from hits. Formula: 1B + 2 × 2B + 3 × 3B + 4 × HR.
CS
Times caught stealing.
SB%
Stolen-base success rate. Formula: 100 × SB ÷ (SB + CS).
HBP
Times hit by a pitch.
IBB
Intentional walks.
SH
Sacrifice bunts.
SF
Sacrifice flies.
GIDP
Times grounded into a double play.
GO/AO
Ground outs per air out. Air outs are outs on fly balls, line drives and popups. Formula: GO ÷ AO.
LOB
Left on base. Runners still on base when the batter made an out.
AB/HR
At bats per home run. Formula: AB ÷ HR.
BB/K
Walks per strikeout. Formula: BB ÷ SO.
Brett Harris, advanced hitting by seasonRegular season, oldest first
SeasonTeamPAABISOBABIPHR%K%BB%wOBAwRAAwRC
2024OAKOAK123103.117.1582.4%20.3%13.8%.252-5.78.7
2025ATHATH8473.068.3770.0%25.0%8.3%.310-0.29.7
2026AllAll teams5144.045.2140.0%31.4%5.9%.207-4.51.5
2026ATHATH64.000.0000.0%33.3%16.7%.238-0.40.3
2026BOSBOS32.000.0000.0%0.0%0.0%.243-0.20.2
2026SFSF4238.053.2500.0%33.3%4.8%.200-4.01.0
PA
Plate appearances. Completed turns at the plate, including walks, hit-by-pitches and sacrifices.
AB
At bats. Plate appearances that count toward batting average; walks, hit-by-pitches, sacrifices and catcher's interference are left out.
ISO
Isolated Power. Extra bases per at-bat, separating extra-base power from batting average. Formula: (2B + 2 × 3B + 3 × HR) ÷ AB.
BABIP
Batting Average on Balls in Play. Hits on balls in play, excluding home runs. Contact quality, speed and defense all affect BABIP. Formula: (H − HR) ÷ (AB − SO − HR + SF).
HR%
Home-run rate. Formula: 100 × HR ÷ PA.
K%
Batting Strikeout Percentage. The percentage of plate appearances ending in a strikeout. Lower rates mean fewer strikeouts per opportunity. Formula: 100 × SO ÷ PA.
BB%
Batting Walk Percentage. The percentage of plate appearances ending in a walk, including intentional walks. Formula: 100 × BB ÷ PA.
wOBA
Weighted On-Base Average. Values each batting outcome by its contribution to scoring, using the matching season's run weights. Intentional walks are excluded. Formula: Weighted sum of unintentional BB, HBP, 1B, 2B, 3B and HR ÷ (AB + BB − IBB + SF + HBP).
wRAA
Weighted Runs Above Average. Batting runs above or below league average at the same number of plate appearances. Negative values are below average. This measure is not adjusted for ballpark. Formula: (wOBA − league wOBA) ÷ wOBA scale × PA.
wRC
Weighted Runs Created. Estimated batting runs created from wOBA and plate appearances, using the matching season's league scoring environment. This is not park-adjusted wRC+. Formula: [(wOBA − league wOBA) ÷ wOBA scale + league runs per PA] × PA.

Read advanced measures alongside playing time. N/A means the required inputs or season calculations are unavailable.

Advanced calculation notes by season

Fielding

3 seasons of fielding across 3 clubs. Club-specific splits are shown in lighter type. Games at different positions can overlap.

Brett Harris, fielding by seasonRegular season, oldest first
SeasonTeamPosGGSINNTCPOAEDPFLD%RF/9RF/G
2024OAKOAK3B3531280.082205939.9632.542.26
2025ATHATH1B5117.014131021.0007.412.80
2025ATHATH3B2720183.260164314.9832.892.19
2026AllAll teams1B10873.06963517.9868.386.80
2026AllAll teams2B101.000000N/A0.000.00
2026AllAll teams3B10441.013211021.0002.851.30
2026ATHATH3B4112.0514011.0003.751.25
2026ATHATH2B101.000000N/A0.000.00
2026BOSBOS1B119.0550001.0005.005.00
2026SFSF1B9764.06458517.9848.867.00
2026SFSF3B6329.0817011.0002.481.33
Pos
Position played. DH is designated hitter.
G
Games played at the position.
GS
Games started at the position.
INN
Innings in the field at the position. .1 and .2 mean one and two outs.
TC
Total chances. Formula: PO + A + E.
PO
Putouts.
A
Assists.
E
Errors.
DP
Double plays turned.
FLD%
Fielding percentage. Formula: (PO + A) ÷ TC.
RF/9
Range factor per nine innings. Formula: 27 × (PO + A) ÷ outs in the field.
RF/G
Range factor per game. Formula: (PO + A) ÷ G.

Batted-ball data

Recorded measurements and MLBDB estimates from the pitches seen and the balls put in play as a hitter. Each table's note says which.

MLBDB calculates these numbers from recorded game measurements. EV balls and LA balls show the sample sizes. EV+LA balls have both measurements and are used for barrel percentage. Seasons without these measurements show N/A.

Brett Harris, hitting by season: contactRegular season, oldest first
SeasonTeamBBEEV+LA ballsMLBDB barrelsMLBDB Barrel%EV ballsAvg EV ballsAvg EVMax EVHard-hit%LA ballsAvg LA ballsAvg LASweet-spot%
2024OAKOAK797945.1%797887.4107.136.7%797812.826.6%
2025ATHATH545423.7%545283.3106.827.8%54529.529.6%
2026AllAll teams292913.4%292887.3103.631.0%29289.137.9%
2026ATHATH2200.0%2270.980.40.0%2211.50.0%
2026BOSBOS2200.0%2287.096.350.0%22-5.50.0%
2026SFSF252514.0%252488.7103.632.0%252410.144.0%
BBE
Batted Balls. Completed turns to bat that ended with a batted ball, including home runs. Some balls have no speed or angle measurement.
EV+LA balls
Balls with Recorded Speed and Angle. Balls that have both a usable speed and angle measurement. These are the balls used to calculate barrel percentage.
MLBDB barrels
MLBDB Barrels. Balls hit very hard at an angle suited to deep hits. MLBDB checks the recorded speed and angle against its documented barrel zone. Balls missing either measurement are left out. Rounded measurements can affect close calls. This is MLBDB's calculated classification.
MLBDB Barrel%
MLBDB Barrel Percentage. The percentage of balls with both speed and angle recorded that MLBDB counts as barrels. Missing measurements are left out. Formula: 100 × barrels ÷ balls with recorded speed and angle.
EV balls
Balls with Recorded Speed. All batted balls with a usable speed measurement, including bunts. This is the sample used for hard-hit percentage.
Avg EV balls
Average Exit Velocity Sample. Balls with recorded speed, excluding labelled bunts. Used for average and maximum exit velocity.
Avg EV
Average Exit Velocity. Average ball speed just after contact, in miles per hour. Balls with no speed measurement are left out. Balls labelled as bunts are excluded. Unknown bunt labels are retained. Formula: Sum of recorded speeds excluding labelled bunts ÷ Avg EV balls.
Max EV
Maximum Exit Velocity. The fastest recorded batted ball, in miles per hour. Balls labelled as bunts are excluded. Unknown bunt labels are retained.
Hard-hit%
Hard-Hit Percentage. The percentage of speed-measured balls hit at least 95 miles per hour. Formula: 100 × hard-hit balls ÷ balls with recorded speed.
LA balls
Balls with Recorded Angle. All batted balls with a usable angle measurement, including bunts. This is the sample used for sweet-spot percentage.
Avg LA balls
Average Launch Angle Sample. Balls with recorded angle, excluding labelled bunts. Used for average launch angle.
Avg LA
Average Launch Angle. Average angle at which the ball leaves the bat, in degrees. A negative angle points toward the ground. Higher is not always better. Balls labelled as bunts are excluded. Unknown bunt labels are retained. Formula: Sum of recorded angles excluding labelled bunts ÷ Avg LA balls.
Sweet-spot%
Sweet-Spot Percentage. The percentage of angle-measured balls launched from 8 to 32 degrees. Formula: 100 × sweet-spot balls ÷ balls with recorded angle.

Direction is estimated from recorded hit locations and the hand used to bat on each play. Rates divide by Located balls and show N/A below 95% location coverage. Unmapped balls are left out. Higher is not always better.

Brett Harris, hitting by season: hit directionRegular season, oldest first
SeasonTeamLocated ballsLocation coveragePull%Center%Oppo%Pull ballsCenter ballsOppo ballsUnmapped balls
2024OAKOAK79100.0%35.4%40.5%24.1%2832190
2025ATHATH5398.1%49.1%32.1%18.9%2617101
2026AllAll teams29100.0%31.0%51.7%17.2%91550
2026ATHATH2100.0%0.0%100.0%0.0%0200
2026BOSBOS2100.0%0.0%100.0%0.0%0200
2026SFSF25100.0%36.0%44.0%20.0%91150
Located balls
Balls with Usable Hit Locations. Balls whose recorded location and batting hand support an estimate of pull, center or opposite-field direction.
Location coverage
Hit-Location Coverage. The share of all balls that can be mapped. A rounded 95% can be slightly below the cutoff; the cutoff uses the original counts. Formula: 100 × located balls ÷ all batted balls.
Pull%
Estimated Pull Percentage. The share of located balls hit toward the batter's pull side. Uses located balls only. N/A when fewer than 95% of all balls can be mapped. These are chart-based estimates. Formula: 100 × pulled balls ÷ located balls.
Center%
Estimated Center-Field Percentage. The share of located balls estimated toward center field. Uses located balls only. N/A when fewer than 95% of all balls can be mapped. These are chart-based estimates. Formula: 100 × center-field balls ÷ located balls.
Oppo%
Estimated Opposite-Field Percentage. The share of located balls hit toward the side opposite the batter's pull side. Uses located balls only. N/A when fewer than 95% of all balls can be mapped. These are chart-based estimates. Formula: 100 × opposite-field balls ÷ located balls.
Pull balls
Estimated Pulled Balls. Balls estimated toward the pull side: left field for right-handed hitters, or right field for left-handed hitters.
Center balls
Estimated Balls to Center. Balls estimated toward center field, regardless of batting hand.
Oppo balls
Estimated Opposite-Field Balls. Balls estimated toward the opposite side: right field for right-handed hitters, or left field for left-handed hitters.
Unmapped balls
Balls with Unusable Hit Locations. Balls with missing details, unusable coordinates or locations outside the field area used for these estimates. They are excluded from direction percentages.

Pitches counts every pitch actually thrown; automatic balls and strikes are left out. Swings include bunt attempts, and caught foul tips count as whiffs. Whiff% divides misses by swings; SwStr% divides misses by pitches. Zone rates need a recorded location for at least 95% of pitches. Missing results show N/A. For 2018 through 2024, inside or outside the zone is an MLBDB estimate from recorded pitch locations and batter zone heights; from 2025, MLB's recorded zone labels are used.

Brett Harris, hitting by season: pitch disciplineRegular season, oldest first
SeasonTeamPitchesSwingsWhiff%SwStr%Contact%Swing%Chase%Zone%Z-Swing%Z-Contact%O-Contact%First delivered strike%Called%CSW%Zone coverage
2024OAKOAK49320223.8%9.7%76.2%41.0%19.1%52.1%61.1%82.8%53.3%61.8%19.1%28.8%100.0%
2025ATHATH33614924.8%11.0%75.2%44.3%22.7%51.5%64.7%82.1%54.1%69.0%16.1%27.1%100.0%
2026AllAll teams1938327.7%11.9%72.3%43.0%22.8%47.7%65.2%81.7%47.8%50.0%19.2%31.1%100.0%
2026ATHATH22825.0%9.1%75.0%36.4%0.0%59.1%61.5%75.0%N/A50.0%22.7%31.8%100.0%
2026BOSBOS16825.0%12.5%75.0%50.0%45.5%31.3%60.0%66.7%80.0%25.0%12.5%25.0%100.0%
2026SFSF1556728.4%12.3%71.6%43.2%22.2%47.7%66.2%83.7%38.9%52.4%19.4%31.6%100.0%
Pitches
Delivered Pitches. Pitches actually thrown to the batter in these completed games. Automatic balls and strikes are excluded.
Swings
Swings. Attempts to hit a delivered pitch, including bunts.
Whiff%
Whiff Percentage. How often a swing is recorded as a miss, including caught foul tips. This divides whiffs by swings. Formula: 100 × swings and misses ÷ swings.
SwStr%
Swinging-Strike Percentage. How often a delivered pitch produces a whiff, including caught foul tips. This divides whiffs by pitches, not swings. Formula: 100 × swings and misses ÷ delivered pitches.
Contact%
Contact Percentage. How often a swing touches the ball, including ordinary fouls and bunt attempts. Caught foul tips are excluded. Formula: 100 × swings with contact ÷ swings.
Swing%
Swing Percentage. How often the batter swings at a delivered pitch. Formula: 100 × swings ÷ delivered pitches.
Chase%
Chase Percentage. How often the batter swings at a pitch outside the strike zone. Also called O-Swing%. Formula: 100 × swings outside the zone ÷ pitches outside the zone.
Zone%
Strike-Zone Percentage. The share of pitches with usable locations that are inside the strike zone. Formula: 100 × pitches inside the zone ÷ pitches with usable locations.
Z-Swing%
Swing Percentage Inside the Zone. How often the batter swings at a pitch inside the strike zone. Formula: 100 × swings inside the zone ÷ pitches inside the zone.
Z-Contact%
Contact Percentage Inside the Zone. How often a swing at a pitch inside the strike zone touches the ball. Formula: 100 × contact inside the zone ÷ swings inside the zone.
O-Contact%
Contact Percentage Outside the Zone. How often a swing at a pitch outside the strike zone touches the ball. Formula: 100 × contact outside the zone ÷ swings outside the zone.
First delivered strike%
First Delivered Pitch Strike Rate. The share of first delivered pitches that are strikes or put in play. Turns with no delivered pitch are excluded. Unfinished turns that had a pitch are included. Formula: 100 × first-pitch strikes ÷ first delivered pitches.
Called%
Called-Strike Percentage. How often a delivered pitch is called a strike without a swing. Formula: 100 × called strikes ÷ delivered pitches.
CSW%
Called Strikes and Whiffs. How often a delivered pitch is either a called strike or a swing and miss. Ordinary fouls are excluded; caught foul tips count as whiffs. Formula: 100 × called strikes plus misses ÷ delivered pitches.
Zone coverage
Pitch-Location Coverage. The share of delivered pitches with a usable location. Zone rates need at least 95% coverage, checked before rounding.

MLBDB estimates these from recorded ball speed and angle, for seasons from 2018. A season or period shows N/A if any batted ball it needs is missing a measurement or falls outside what the model covers. That is common over a full season, and in 2018 and 2019 no regular player has complete measurements. Differences use actual results from the same completed games. These describe recorded contact, not future performance.

Brett Harris, hitting by season: expectedRegular season, oldest first
SeasonTeamModel ballsMeasured%MLBDB xBAAVG − MLBDB xBAMLBDB xSLGSLG − MLBDB xSLGMLBDB xwOBAwOBA − MLBDB xwOBAMissing pairs
2024OAKOAK79100.0%.182-0.037.281-0.019.275-0.0230
2025ATHATH54100.0%.2340.040.3050.038.2870.0230
2026AllAll teams29100.0%.172-0.036.245-0.064.244-0.0370
2026ATHATH2100.0%.032-0.032.041-0.041.259-0.0210
2026BOSBOS2100.0%.198-0.198.225-0.225.376-0.1330
2026SFSF25100.0%.186-0.028.268-0.057.232-0.0320
Model balls
Measured Balls Used in Estimates. Eligible batted balls with both speed and angle recorded. Defensive awards that do not count as at-bats are excluded.
Measured%
Expected-Stat Measurement Coverage. The share of eligible batted balls with both speed and angle recorded. Each expected statistic shows N/A if any contact value it needs is missing or outside model support.
MLBDB xBA
MLBDB Expected Batting Average. Estimated hits per at-bat from ball speed, angle and same-season running speed when available. Strikeouts remain at-bats. Each needed contact contribution must be available. Reviewed seasons are 2018 through 2026; the current season is provisional. Formula: Estimated hits in at-bats ÷ at-bats.
AVG − MLBDB xBA
Batting Average Minus Expected. Recorded batting average minus the estimate, using the same completed games. A positive number means the actual result was higher. This does not measure luck alone.
MLBDB xSLG
MLBDB Expected Slugging Percentage. Estimated bases from hits per at-bat. Singles count once, doubles twice, triples three times and home runs four times. Formula: Estimated total bases in at-bats ÷ at-bats.
SLG − MLBDB xSLG
Slugging Minus Expected. Recorded slugging minus the estimate, using the same completed games. A positive number means more bases were recorded than estimated.
MLBDB xwOBA
MLBDB Expected Weighted Batting Average. Combines reconstructed expected contact values with recorded walks and hit-by-pitches. Walks and hit batters use the same season's batting weights. Intentional walks are excluded. Every needed contact value must be available.
wOBA − MLBDB xwOBA
Weighted Average Minus Expected. Recorded weighted batting average minus the estimate, using the same completed games and batting weights.
Missing pairs
Balls with Incomplete Measurements. Eligible balls missing speed, angle or both. These inputs are not filled in. The affected expected statistic is N/A, and the real appearance remains counted.

Last 5 games

Brett Harris, batting in the last 5 gamesNewest first
DateGameResultABRHHRRBIBBSOSB
Sep 27vs LADL 1-510000000
Sep 26vs LADL 3-440000000
Sep 25vs LADL 0-240000020
Sep 23vs MINL 2-430000020
Sep 22vs MINL 2-311000110

Bio

Full name
Brett Steven Harris
Position
Third baseman (3B)
Bats / Throws
R / R
Height / Weight
6' 2", 208 lb
Number
29
Born
Jun 24, 1998, Arlington Heights, IL, United States
Age
28
MLB debut
May 3, 2024
Draft
2021 draft, round 7, pick 218, Oakland Athletics
School
Gonzaga

Trade & Transaction History

9 recorded moves.

Sep 8, 2026

RecalledTrade

San Francisco Giants recalled 3B Brett Harris from Sacramento River Cats.

From Sacramento River CatsTo San Francisco Giants
Sep 4, 2026

OptionedTrade

San Francisco Giants optioned 3B Brett Harris to Sacramento River Cats.

From San Francisco GiantsTo Sacramento River Cats
Sep 3, 2026

Claimed Off WaiversTrade

San Francisco Giants claimed 3B Brett Harris off waivers from Boston Red Sox.

From Boston Red SoxTo San Francisco Giants
Jul 11, 2026

OptionedTrade

Boston Red Sox optioned 3B Brett Harris to Worcester Red Sox.

From Boston Red SoxTo Worcester Red Sox
Jul 9, 2026

RecalledTrade

Boston Red Sox recalled 3B Brett Harris from Worcester Red Sox.

From Worcester Red SoxTo Boston Red Sox
Jul 1, 2026

TradeTrade

Athletics traded 3B Brett Harris to Boston Red Sox for RHP Ben Hansen.

From AthleticsTo Boston Red Sox
May 12, 2026

OptionedTrade

Athletics optioned 3B Brett Harris to Las Vegas Aviators.

From AthleticsTo Las Vegas Aviators
Apr 28, 2026

RecalledTrade

Athletics recalled 3B Brett Harris from Las Vegas Aviators.

From Las Vegas AviatorsTo Athletics
Mar 9, 2026

OptionedTrade

Athletics optioned 3B Brett Harris to Las Vegas Aviators.

From AthleticsTo Las Vegas Aviators