Ryan O'Hearn

RF Pittsburgh Pirates
Age 34 L/L 6'2" / 220 lbs MLB HR -15%K -5% Svc 7.012 · Ctrl thru 2027
Overview
MLB40-MANExtFA 2028
YearAgeLvl / TeamPAAVG/OBP/SLGHRSBwRC+WAR
202431MLBBAL494.264/.336/.4271531100.5
202532MLBSD544.281/.369/.4371731282.2
202633MLBPIT451.265/.333/.4401811201.7
2027PROJ34MLBPIT445.261/.335/.4231531171.4
2028PROJ35MLBPIT381.249/.322/.3971201060.1
Last 3 seasons WAR 4.3  ·  Next 2 projected WAR 1.5Projected rows: MLB playing time only, park and league context applied.
ContractESTIMATED
Control thru2027Service7.012First FA2028Options2
2027Ext$14M
Skills · percentileStatcast 2024-2026
Whiff%90
Chase%90
xwOBA75
Avg EV54
Bat Spd45
Barrel%42
Form.252/.323/.407 ▼ rolling true talent (60d window) · proj .263/.335/.433
CompsAdam Lind (age 34) · Daryle Ward (age 33) · John Mabry (age 34)
2027 FULL-SEASON PROJECTIONstats below = full-season projection
showingPROJ
wRC+†vL 111117vR 119
AVG/OBP/SLG.261 / .335 / .423
PA445
HR15
K%20
BB%9
BABIP299
ISO161
MLB%100%
Value2027 · WAR
BAT: +9.0 runs (wOBA-derived runs vs avg)+9BATRUN: +0.5 runs (SB/CS + UBR baserunning)+0RUNFLD: -0.1 runs (Defensive runs vs avg)-0FLDPOS: -4.8 runs (Positional adjustment)-5POSREP: +9.6 runs (Replacement-level credit)+10REPTotal WAR: +1.70+1.7WAR
trajectory · projected WAR by year
1.70.12728
Tools · Recent Form · Splits · ContractCON 56 / POW 48
Toolsscout grade · Statcast %ile · 2024-2026
CONTACT56
Whiff%
906.0%
xAVG
650.264
POWER48
Barrel%
427.1
Avg EV
5489.4
Bat Spd
4570.8
EYE55
Chase%
9020.6%
SPEED36
Sprint
3326.7
DEFENSE55
scouting grade only
Recent Formrolling true talent ⓘ
K%22%▼▼25% over 53 PA (60d) · proj 20%
BB%8%·8% over 53 PA (60d) · proj 9%
ISO.155▼.104 over 48 AB (60d) · proj .170
HR/BB4.6%·2.9% over 35 BBE (60d) · proj 5.2%
BABIP.298·.294 over 34 BIP (60d) · proj .299
SLASH.252/.323/.407▼proj .263/.335/.433
Platoon Splits2024-2026 · 1138 PA
vs LHP
vs RHP
Edge
PA
181
957
—
wRC+
121
123
—
wOBA
346
350
—
ISO
154
164
▶R
BABIP
346
306
◀L
K%
19.9%
16.5%
▶▶R
BB%
7.2%
10.1%
▶▶R
Contract ESTIMATED · service-time + WAR-based estimator (needs verification)
Status   FA
MLB Debut   2018
Service   7.012 yrs.days
Team Control Through   2027
First FA Year   2028
OPT
YearStatusSalary Proj WAR Value Surplus
2027Ext$14M+1.7$14M-$0.9M
Totals $14M $14M -$0.9M
Options · projected decision
2028CLUB OPT$14.5M / $0.0M buyoutDECLINE
2029CLUB OPT$7.5M / $0.0M buyoutDECLINE

Career Stats + Projections

Real MLB stats plus park-adjusted projections — this season (so far / rest / full), then future seasons and career totals.
basis chips: RAW = as recorded · CTX = with park/league context · A+C = actual + context combined · MLE = level/park-neutral
Methodology▸ how these numbers are built

All seasons translated to park-neutral MLB-equivalent (MLE) and combined per year. 2027 = actual YTD + projected ROS + total. 2028+ via Advanced Marcel + aging curve.

YearAge LvlTeam MLB% PAAB H2B3BHR BBSOHBP SBCS AVGOBPSLGOPS ISOBABIP K%BB% wOBAwRC+ BATRUNFLDPOSREP WAR
▸ Career — actual stats, one row per stint (as recorded, no adjustments)
201421 ROKIdaho Falls Chukars — 293249 9016113 39591 32 3614505901.040 229425 2013 449 106 — — — — — —
201522 A+Wilmington Blue Rocks — 181161 381008 19540 00 236317447764 211300 3010 336 62 — — — — — —
201522 ALexington Legends — 356314 8711019 36872 72 277355494849 217321 2410 370 76 — — — — — —
201623 AANorthwest Arkansas Naturals — 466414 10725215 481313 35 258340437777 179342 2810 346 72 — — — — — —
201623 A+Wilmington Blue Rocks — 9888 31707 8271 00 3524126701.083 318436 288 462 145 — — — — — —
201623 INTLSurprise Saguaros — 9986 25401 13260 00 291384372756 81407 2613 347 121 — — — — — —
201724 AAAOmaha Storm Chasers — 463413 10426118 451191 10 252327450777 199309 2610 341 77 — — — — — —
201724 AANorthwest Arkansas Naturals — 7666 17114 10200 00 258355485840 227310 2613 370 74 — — — — — —
201825 MLBKansas City Royals — 170149 3910212 20451 00 262353597950 336293 2612 408 170 +14 +0 -2 -11 +4 0.4
201825 AAAOmaha Storm Chasers — 406353 8221111 45973 20 232324391715 159286 2411 319 58 — — — — — —
201825 INTLGigantes del Cibao — 6356 10201 4223 00 179270268538 89273 356 254 58 — — — — — —
201926 MLBKansas City Royals — 370328 6413114 39991 01 195283369652 174230 2711 292 87 -6 -0 -6 -9 +8 -1.3
201926 AAAOmaha Storm Chasers — 149129 381019 17312 00 295385597982 302322 2111 422 103 — — — — — —
202027 MLBKansas City Royals — 132113 22602 18370 00 195305301606 106267 2814 281 71 -4 +0 -1 -2 +3 -0.6
202128 MLBKansas City Royals — 254236 53519 13712 00 225271369640 144277 285 282 82 -6 +0 -0 -4 +6 -0.4
202128 AAAOmaha Storm Chasers — 8272 274012 9151 30 3754519311.382 556333 1811 574 161 — — — — — —
202229 MLBKansas City Royals — 145134 32611 8352 00 239292321613 82313 246 277 75 -4 +0 -1 -2 +3 -0.4
202330 MLBBaltimore Orioles — 368346 10022114 15823 51 289324480804 191340 224 350 116 +7 +1 -0 -8 +8 0.8
202330 AAANorfolk Tides — 5248 17414 4140 00 3544047291.133 375433 278 483 124 — — — — — —
202431 MLBBaltimore Orioles — 494443 11721315 46692 31 264336427763 163282 149 338 110 +6 +0 -4 -9 +11 0.5
202532 MLBSan Diego Padres — 544474 13321117 581098 31 281369437805 156330 2011 359 128 +18 +0 +1 -10 +12 2.2
202633 MLBPittsburgh Pirates — 451407 10817018 35996 10 265333440772 174307 228 342 120 +11 +0 +0 -5 +10 1.7
▸ Career Totals (raw MLB only — historical actual)
MLB Career— — 29282630 66812110102 25264625 124 254325424749 170298 229 332 111 +37 +1 -13 -59 +63 3.0
▸ Career — adjusted (every ACTUAL line translated to park/league-neutral MLB equivalents)
201421 ROK MLEIdaho Falls Chukars — 293265 711219 23851 32 268329423751 155343 298 325 106 — — — — — —
201522 A+ MLEWilmington Blue Rocks — 181170 31808 10770 00 182228371598 188265 436 260 62 — — — — — —
201522 A MLELexington Legends — 356330 749013 201202 72 224273370642 145293 346 280 76 — — — — — —
201623 AA MLENorthwest Arkansas Naturals — 466432 9221212 301563 35 213269354623 141299 336 274 72 — — — — — —
201623 A+ MLEWilmington Blue Rocks — 9892 27606 4361 00 293330554884 261413 374 382 145 — — — — — —
201724 AAA MLEOmaha Storm Chasers — 463427 9423115 311451 10 220275384659 164288 317 282 77 — — — — — —
201724 AA MLENorthwest Arkansas Naturals — 7670 14113 6250 00 200263371635 171269 338 278 74 — — — — — —
201825 MLB MLEKansas City Royals — 170149 4010213 20451 00 268359624983 356293 2612 419 170 +14 +0 -2 -11 +4 0.4
201825 AAA MLEOmaha Storm Chasers — 406367 711818 311243 20 193262313575 120258 318 254 58 — — — — — —
201926 MLB MLEKansas City Royals — 370329 6513115 38991 01 198283380663 182230 2710 297 87 -6 -0 -6 -9 +8 -1.3
201926 AAA MLEOmaha Storm Chasers — 149135 31817 11412 00 230297459757 230271 287 321 103 — — — — — —
202027 MLB MLEKansas City Royals — 132115 22602 16370 00 191290296586 104267 2812 274 71 -4 +0 -1 -2 +3 -0.6
202128 MLB MLEKansas City Royals — 254236 545110 13712 00 229275386660 157277 285 289 82 -6 +0 -0 -4 +6 -0.4
202128 AAA MLEOmaha Storm Chasers — 8276 20308 5181 30 263317618935 355252 226 406 161 — — — — — —
202229 MLB MLEKansas City Royals — 145134 32611 8352 00 239292321613 82313 246 279 75 -4 +0 -1 -2 +3 -0.4
202330 MLB MLEBaltimore Orioles — 368348 9821114 13823 51 282313468782 187340 224 340 116 +7 +1 -0 -8 +8 0.8
202330 AAA MLENorfolk Tides — 5249 14313 3170 00 286327571898 286362 336 351 124 — — — — — —
202431 MLB MLEBaltimore Orioles — 494445 11520315 44692 31 258328418746 160282 149 331 110 +6 +0 -4 -9 +11 0.5
202532 MLB MLESan Diego Padres — 544478 13522117 541098 31 282365439804 157330 2010 357 128 +18 +0 +1 -10 +12 2.2
202633 MLB MLEPittsburgh Pirates — 451408 10816019 34996 10 265330444774 179307 228 346 120 +11 +0 +0 -5 +10 1.7
201421 ROK MLEIdaho Falls Chukars — 293265 711219 23851 32 268329423751 155354 298 325 106 — — — — — —
201421 ROK RAWIdaho Falls Chukars — 293249 9016113 39591 32 3614505901.040 229425 2013 449 106 — — — — — —
201522 A MLE2 teams — 537500 10516022 301972 72 210258374632 164290 376 273 71 — — — — — —
201522 A RAW2 teams — 537475 12521027 551412 72 263342478820 215314 2610 359 71 — — — — — —
201623 AA MLE3 teams — 663617 14031222 402264 35 227278391669 164318 346 293 84 — — — — — —
201623 AA RAW3 teams — 663588 16336223 691844 35 277357463820 185366 2810 363 84 — — — — — —
201724 AAA MLE2 teams — 539497 10723218 371711 10 215271378649 163287 327 281 77 — — — — — —
201724 AAA RAW2 teams — 539479 12127222 551391 10 253331455786 203309 2610 345 77 — — — — — —
201825 AAA MLE3 teams — 639571 12231323 561887 20 214292399691 186273 299 303 91 — — — — — —
201825 AAA RAW3 teams — 639558 13133324 691647 20 235326434760 199287 2611 336 91 — — — — — —
201926 MLB MLE2 teams — 519464 9721222 491403 01 209289405694 196246 279 304 92 -5 -0 -6 -9 +11 -1.0
201926 MLB RAW2 teams — 519457 10223223 561303 01 223312433745 210257 2511 329 92 -5 -0 -6 -9 +11 -1.0
202027 MLB MLEKansas City Royals — 132115 22602 16370 00 191290296586 104260 2812 274 71 -4 +0 -1 -2 +3 -0.6
202027 MLB RAWKansas City Royals — 132113 22602 18370 00 195305301606 106267 2814 281 71 -4 +0 -1 -2 +3 -0.6
202128 MLB MLE2 teams — 336312 748118 18893 30 237285442728 205269 265 318 101 +0 +1 -0 -4 +7 0.4
202128 MLB RAW2 teams — 336308 809121 22863 30 260315500815 240289 267 353 101 +0 +1 -0 -4 +7 0.4
202229 MLB MLEKansas City Royals — 145134 32611 8352 00 239292321613 82313 246 279 75 -4 +0 -1 -2 +3 -0.4
202229 MLB RAWKansas City Royals — 145134 32611 8352 00 239292321613 82313 246 277 75 -4 +0 -1 -2 +3 -0.4
202330 MLB MLE2 teams — 420397 11224217 16993 51 282315481796 199335 244 342 117 +9 +1 -0 -8 +9 1.1
202330 MLB RAW2 teams — 420394 11726218 19963 51 297334510844 213350 235 366 117 +9 +1 -0 -8 +9 1.1
202431 MLB MLEBaltimore Orioles — 494445 11520315 44692 31 258328418746 160275 149 331 110 +6 +0 -4 -9 +11 0.5
202431 MLB RAWBaltimore Orioles — 494443 11721315 46692 31 264336427763 163282 149 338 110 +6 +0 -4 -9 +11 0.5
202532 MLB MLESan Diego Padres — 544478 13522117 541098 31 282365439804 157331 2010 357 128 +18 +0 +1 -10 +12 2.2
202532 MLB RAWSan Diego Padres — 544474 13321117 581098 31 281369437805 156330 2011 359 128 +18 +0 +1 -10 +12 2.2
202633 MLB MLEPittsburgh Pirates — 451408 10816019 34996 10 265330444774 179304 228 346 120 +11 +0 +0 -5 +10 1.7
202633 MLB RAWPittsburgh Pirates — 451407 10817018 35996 10 265333440772 174307 228 342 120 +11 +0 +0 -5 +10 1.7
201421 ROK MLEIdaho Falls Chukars — 293267 711219 23851 32 266329419748 154343 298 325 106 — — — — — —
201522 A MLE2 teams — 537500 10516022 301972 72 210258374632 164284 376 273 71 — — — — — —
201623 AA MLE3 teams — 663614 14031222 402264 35 228278393671 164319 346 293 84 — — — — — —
201724 AAA MLE2 teams — 539496 10723218 371711 10 216271379650 163285 327 281 77 — — — — — —
201825 AAA MLE3 teams — 639571 12231323 561887 20 214292399691 186268 299 303 91 — — — — — —
201926 MLB MLE2 teams — 519462 9721222 491403 01 210289407696 197242 279 304 92 — — — — — —
202027 MLB MLEKansas City Royals — 132115 22602 16370 00 191290296586 104267 2812 274 71 — — — — — —
202128 MLB MLE2 teams — 336312 748118 18893 30 237285442728 205271 265 318 101 — — — — — —
202229 MLB MLEKansas City Royals — 145134 32611 8352 00 239292321613 82313 246 279 75 — — — — — —
202330 MLB MLE2 teams — 420398 11224217 16993 51 281315480795 198343 244 342 117 — — — — — —
202431 MLB MLEBaltimore Orioles — 494445 11520315 44692 31 258328418746 160282 149 331 110 — — — — — —
202532 MLB MLESan Diego Padres — 544477 13522117 541098 31 283365440805 157330 2010 357 128 — — — — — —
202633 MLB MLEPittsburgh Pirates — 451408 10816019 34996 10 265330444774 179307 228 346 120 — — — — — —
▸ Model inputs — neutral MLE (past 3 seasons)
202431 MLB MLEBaltimore Orioles — 494445 11520315 44692 31 258328418746 160282 149 331 110 — — — — — —
202532 MLB MLESan Diego Padres — 544477 13522117 541098 31 283365440805 157330 2010 357 128 — — — — — —
202633 MLB MLEPittsburgh Pirates — 451408 10816019 34996 10 265330444774 179307 228 346 120 — — — — — —
▸ 2027 season
▸ 2027 — full MLE projection (neutral park, full availability)
202734 MLB MLEPIT 100% 445398 10517116 39895 31 263337433770 170299 209 341 117 +9 +0 -0 -5 +10 1.7
▸ 2027 — real world (MLB)
202734 MLB CTXPIT 100% 445398 10317115 39895 31 261335423759 162299 209 337 117 +9 +0 -0 -5 +10 1.4
▸ Career projection (2028+) — MLB context, MLB playing time (PA × MLB%)
202835 MLB MLEPIT 100% 381341 8613113 33794 01 251324406730 156288 219 325 106 +3 -0 -6 -4 +8 0.1
202835 MLB CTXPIT 100% 381341 8513112 33794 01 249322397719 149288 219 321 106 +3 -0 -6 -4 +8 0.1
▸ Career Totals
▸ Career totals — MLB only (actual + projected)
Career— A+C — 33092971 75313411114 28572529 125 253325421746 168297 229 331 99 +40 +0 -19 -63 +72 3.1
/ 162G— A+C — 650584 14726222 561426 21 252324416740 164295 229 331 99 +8 +0 -4 -12 +14 0.6
Career— MLE — 65385942 143126620234 497171251 3415 241305410715 170297 268 314 99 +49 +1 -19 -68 +81 4.5
/ 162G— MLE — 650591 14226223 491705 31 240304408712 168296 268 314 99 +9 +0 -3 -12 +14 0.8