
Ryan O'Hearn
1B / OF / DH · PIT
MLBAM 656811
Seasons
| Yr | PA | H | HR | AVG | xwOBA | Pts | PPG |
|---|---|---|---|---|---|---|---|
| 2026 | 80 | 21 | 3 | 0.313 | 0.403 | 53 | 2.41 |
| 2025 | 547 | 133 | 17 | 0.279 | 0.346 | 307 | 2.03 |
| 2024 | 494 | 117 | 15 | 0.264 | 0.357 | 304 | 2.08 |
| 2023 | 369 | 100 | 14 | 0.288 | 0.329 | 232 | 1.92 |
| 2022 | 145 | 32 | 1 | 0.239 | 0.336 | 75 | 1.00 |
| 2021 | 255 | 53 | 9 | 0.224 | 0.297 | 99 | 1.08 |
| 2020 | 132 | 22 | 2 | 0.195 | 0.327 | 40 | 0.95 |
| 2019 | 370 | 64 | 14 | 0.195 | 0.312 | 133 | 1.22 |
| 2018 | 171 | 39 | 12 | 0.260 | 0.347 | 120 | 2.61 |
2026 MLB Percentile Rankings
Batting
xwOBA
87
0.403
xBA
94
0.308
xSLG
80
0.515
Avg Exit Velo
53
89.7
Median Exit Velo
0
—
90th % Exit Velo
0
—
Barrel %
45
8.9
Hard-Hit %
56
44.6
LA Sweet-Spot %
80
41.1
Bat Speed
32
69.0
Median Bat Speed
0
—
90th % Bat Speed
0
—
Chase %
59
26.9
Whiff %
76
16.9
K %
74
16.3
BB %
65
12.5
Swing Decisions
Plate Discipline · Decision+
Expected-run-value of every swing-or-take decision, against a league-average batter’s optimum. 100 = avg · 110 = 1 SD better.
Decision+
86
≈ 8th pctl
Chase cost
-8.6r
68 swings @ bad pitch
Passive cost
-3.6r
69 takes @ hittable pitch
Swing rate
42.6%
392 pitches seen
Runs per 100
-3.12
lg avg -2.53
Count
View
Judgment — swing% vs optimal
−35%−15%0+15%+35%
- Red cells — swings more than an optimal batter would here (chasing).
- Blue cells — swings less than optimal (too passive).
- Number in cell: swing%-delta vs optimal. Top-right: pitches seen.
Total pitches shown: 392