
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.
3 seasons of hitting across 3 clubs. Club-specific splits are shown in lighter type.
| Season | Team | G | PA | AB | R | H | 2B | 3B | HR | RBI | SB | BB | SO | AVG | OBP | SLG | OPS |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2024OAK | 36 | 123 | 103 | 15 | 15 | 3 | 0 | 3 | 12 | 0 | 17 | 25 | .146 | .276 | .262 | .539 | |
| 2025ATH | 32 | 84 | 73 | 11 | 20 | 5 | 0 | 0 | 5 | 1 | 7 | 21 | .274 | .349 | .342 | .692 | |
| 2026All | All teams | 21 | 51 | 44 | 3 | 6 | 2 | 0 | 0 | 2 | 0 | 3 | 16 | .136 | .240 | .182 | .422 |
| 2026ATH | 5 | 6 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 2 | .000 | .333 | .000 | .333 | |
| 2026BOS | 1 | 3 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | .000 | .333 | .000 | .333 | |
| 2026SF | 15 | 42 | 38 | 3 | 6 | 2 | 0 | 0 | 2 | 0 | 2 | 14 | .158 | .220 | .211 | .430 |
| Season | Team | 1B | TB | CS | SB% | HBP | IBB | SH | SF | GIDP | GO/AO | LOB | AB/HR | BB/K |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2024OAK | 9 | 27 | 3 | 0.0% | 2 | 0 | 0 | 1 | 3 | 0.68 | 42 | 34.33 | 0.68 | |
| 2025ATH | 15 | 25 | 0 | 100.0% | 2 | 0 | 1 | 1 | 1 | 1.13 | 28 | N/A | 0.33 | |
| 2026All | All teams | 4 | 8 | 0 | N/A | 3 | 0 | 1 | 0 | 2 | 1.09 | 26 | N/A | 0.19 |
| 2026ATH | 0 | 0 | 0 | N/A | 1 | 0 | 0 | 0 | 0 | 1.00 | 4 | N/A | 0.50 | |
| 2026BOS | 0 | 0 | 0 | N/A | 1 | 0 | 0 | 0 | 1 | N/A | 1 | N/A | N/A | |
| 2026SF | 4 | 8 | 0 | N/A | 1 | 0 | 1 | 0 | 1 | 0.90 | 21 | N/A | 0.14 |
| Season | Team | PA | AB | ISO | BABIP | HR% | K% | BB% | wOBA | wRAA | wRC |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 2024OAK | 123 | 103 | .117 | .158 | 2.4% | 20.3% | 13.8% | .252 | -5.7 | 8.7 | |
| 2025ATH | 84 | 73 | .068 | .377 | 0.0% | 25.0% | 8.3% | .310 | -0.2 | 9.7 | |
| 2026All | All teams | 51 | 44 | .045 | .214 | 0.0% | 31.4% | 5.9% | .207 | -4.5 | 1.5 |
| 2026ATH | 6 | 4 | .000 | .000 | 0.0% | 33.3% | 16.7% | .238 | -0.4 | 0.3 | |
| 2026BOS | 3 | 2 | .000 | .000 | 0.0% | 0.0% | 0.0% | .243 | -0.2 | 0.2 | |
| 2026SF | 42 | 38 | .053 | .250 | 0.0% | 33.3% | 4.8% | .200 | -4.0 | 1.0 |
Read advanced measures alongside playing time. N/A means the required inputs or season calculations are unavailable.
3 seasons of fielding across 3 clubs. Club-specific splits are shown in lighter type. Games at different positions can overlap.
| Season | Team | Pos | G | GS | INN | TC | PO | A | E | DP | FLD% | RF/9 | RF/G |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2024OAK | 3B | 35 | 31 | 280.0 | 82 | 20 | 59 | 3 | 9 | .963 | 2.54 | 2.26 | |
| 2025ATH | 1B | 5 | 1 | 17.0 | 14 | 13 | 1 | 0 | 2 | 1.000 | 7.41 | 2.80 | |
| 2025ATH | 3B | 27 | 20 | 183.2 | 60 | 16 | 43 | 1 | 4 | .983 | 2.89 | 2.19 | |
| 2026All | All teams | 1B | 10 | 8 | 73.0 | 69 | 63 | 5 | 1 | 7 | .986 | 8.38 | 6.80 |
| 2026All | All teams | 2B | 1 | 0 | 1.0 | 0 | 0 | 0 | 0 | 0 | N/A | 0.00 | 0.00 |
| 2026All | All teams | 3B | 10 | 4 | 41.0 | 13 | 2 | 11 | 0 | 2 | 1.000 | 2.85 | 1.30 |
| 2026ATH | 3B | 4 | 1 | 12.0 | 5 | 1 | 4 | 0 | 1 | 1.000 | 3.75 | 1.25 | |
| 2026ATH | 2B | 1 | 0 | 1.0 | 0 | 0 | 0 | 0 | 0 | N/A | 0.00 | 0.00 | |
| 2026BOS | 1B | 1 | 1 | 9.0 | 5 | 5 | 0 | 0 | 0 | 1.000 | 5.00 | 5.00 | |
| 2026SF | 1B | 9 | 7 | 64.0 | 64 | 58 | 5 | 1 | 7 | .984 | 8.86 | 7.00 | |
| 2026SF | 3B | 6 | 3 | 29.0 | 8 | 1 | 7 | 0 | 1 | 1.000 | 2.48 | 1.33 |
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.
| Season | Team | BBE | EV+LA balls | MLBDB barrels | MLBDB Barrel% | EV balls | Avg EV balls | Avg EV | Max EV | Hard-hit% | LA balls | Avg LA balls | Avg LA | Sweet-spot% |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2024OAK | 79 | 79 | 4 | 5.1% | 79 | 78 | 87.4 | 107.1 | 36.7% | 79 | 78 | 12.8 | 26.6% | |
| 2025ATH | 54 | 54 | 2 | 3.7% | 54 | 52 | 83.3 | 106.8 | 27.8% | 54 | 52 | 9.5 | 29.6% | |
| 2026All | All teams | 29 | 29 | 1 | 3.4% | 29 | 28 | 87.3 | 103.6 | 31.0% | 29 | 28 | 9.1 | 37.9% |
| 2026ATH | 2 | 2 | 0 | 0.0% | 2 | 2 | 70.9 | 80.4 | 0.0% | 2 | 2 | 11.5 | 0.0% | |
| 2026BOS | 2 | 2 | 0 | 0.0% | 2 | 2 | 87.0 | 96.3 | 50.0% | 2 | 2 | -5.5 | 0.0% | |
| 2026SF | 25 | 25 | 1 | 4.0% | 25 | 24 | 88.7 | 103.6 | 32.0% | 25 | 24 | 10.1 | 44.0% |
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.
| Season | Team | Located balls | Location coverage | Pull% | Center% | Oppo% | Pull balls | Center balls | Oppo balls | Unmapped balls |
|---|---|---|---|---|---|---|---|---|---|---|
| 2024OAK | 79 | 100.0% | 35.4% | 40.5% | 24.1% | 28 | 32 | 19 | 0 | |
| 2025ATH | 53 | 98.1% | 49.1% | 32.1% | 18.9% | 26 | 17 | 10 | 1 | |
| 2026All | All teams | 29 | 100.0% | 31.0% | 51.7% | 17.2% | 9 | 15 | 5 | 0 |
| 2026ATH | 2 | 100.0% | 0.0% | 100.0% | 0.0% | 0 | 2 | 0 | 0 | |
| 2026BOS | 2 | 100.0% | 0.0% | 100.0% | 0.0% | 0 | 2 | 0 | 0 | |
| 2026SF | 25 | 100.0% | 36.0% | 44.0% | 20.0% | 9 | 11 | 5 | 0 |
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.
| Season | Team | Pitches | Swings | Whiff% | SwStr% | Contact% | Swing% | Chase% | Zone% | Z-Swing% | Z-Contact% | O-Contact% | First delivered strike% | Called% | CSW% | Zone coverage |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2024OAK | 493 | 202 | 23.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% | |
| 2025ATH | 336 | 149 | 24.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% | |
| 2026All | All teams | 193 | 83 | 27.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% |
| 2026ATH | 22 | 8 | 25.0% | 9.1% | 75.0% | 36.4% | 0.0% | 59.1% | 61.5% | 75.0% | N/A | 50.0% | 22.7% | 31.8% | 100.0% | |
| 2026BOS | 16 | 8 | 25.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% | |
| 2026SF | 155 | 67 | 28.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% |
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.
| Season | Team | Model balls | Measured% | MLBDB xBA | AVG − MLBDB xBA | MLBDB xSLG | SLG − MLBDB xSLG | MLBDB xwOBA | wOBA − MLBDB xwOBA | Missing pairs |
|---|---|---|---|---|---|---|---|---|---|---|
| 2024OAK | 79 | 100.0% | .182 | -0.037 | .281 | -0.019 | .275 | -0.023 | 0 | |
| 2025ATH | 54 | 100.0% | .234 | 0.040 | .305 | 0.038 | .287 | 0.023 | 0 | |
| 2026All | All teams | 29 | 100.0% | .172 | -0.036 | .245 | -0.064 | .244 | -0.037 | 0 |
| 2026ATH | 2 | 100.0% | .032 | -0.032 | .041 | -0.041 | .259 | -0.021 | 0 | |
| 2026BOS | 2 | 100.0% | .198 | -0.198 | .225 | -0.225 | .376 | -0.133 | 0 | |
| 2026SF | 25 | 100.0% | .186 | -0.028 | .268 | -0.057 | .232 | -0.032 | 0 |
| Date | Game | Result | AB | R | H | HR | RBI | BB | SO | SB |
|---|---|---|---|---|---|---|---|---|---|---|
| Sep 27 | L 1-5 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
| Sep 26 | L 3-4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
| Sep 25 | L 0-2 | 4 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | |
| Sep 23 | L 2-4 | 3 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | |
| Sep 22 | L 2-3 | 1 | 1 | 0 | 0 | 0 | 1 | 1 | 0 |
9 recorded moves.
RecalledTrade
San Francisco Giants recalled 3B Brett Harris from Sacramento River Cats.
OptionedTrade
San Francisco Giants optioned 3B Brett Harris to Sacramento River Cats.
Claimed Off WaiversTrade
San Francisco Giants claimed 3B Brett Harris off waivers from Boston Red Sox.
OptionedTrade
Boston Red Sox optioned 3B Brett Harris to Worcester Red Sox.
RecalledTrade
Boston Red Sox recalled 3B Brett Harris from Worcester Red Sox.
TradeTrade
Athletics traded 3B Brett Harris to Boston Red Sox for RHP Ben Hansen.
OptionedTrade
Athletics optioned 3B Brett Harris to Las Vegas Aviators.
RecalledTrade
Athletics recalled 3B Brett Harris from Las Vegas Aviators.
OptionedTrade
Athletics optioned 3B Brett Harris to Las Vegas Aviators.