Ryan O'Hearn1B Pittsburgh Pirates
Age 33 L/L 6'2" / 220 lbs MLB Svc 7.012 · Ctrl thru 2027
2026 ROS PROJECTION339 act + 226 ros · stats below = ROS only
wRC+†vL 120123vR 125
AVG/OBP/SLG.264 / .339 / .453
PA226
HR9
K%20
BB%9
BABIP299
ISO189
MLB%100%
Value2026 · WAR
BAT: +20.7 runs (wOBA-derived runs vs avg)+21BATRUN: +0.4 runs (SB/CS + UBR baserunning)+0RUNFLD: +3.5 runs (Defensive runs vs avg)+3FLDPOS: -7.7 runs (Positional adjustment)-8POSREP: +16.0 runs (Replacement-level credit)+16REPTotal WAR: +3.40+3.4WAR
0.01.12.31.41.4+$2M ctrl surplus26272829303132333435
projected WAR paid WAR ($/8M) surplus deficit post-control
Tools · Splits · ContractCON 60 / POW 45
Toolsscout grade · Statcast %ile · 2024-2026
CONTACT60
Whiff%
906.5%
xwOBA
810.344
POWER45
Barrel%
457.5
Avg EV
5689.5
Bat Spd
4570.8
EYE55
Chase%
9022.3%
SPEED50
Sprint
3326.7
Platoon Splits2024-2026 · 1138 PA
vs LHP
vs RHP
Edge
PA
181
957
wRC+
123
126
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   2027
OPT
YearStatusSalary Proj WAR Value Surplus
2026ROSExt$6M+1.4$11M+$5M
2027Ext$14M+1.4$10M-$3M
Totals $20M $21M +$2M
Options · projected decision
2028CLUB OPT$14.5M / $0.0M buyoutDECLINE
2029CLUB OPT$7.5M / $0.0M buyoutDECLINE

Career Stats + Projections

Viewactual = stats as recorded (prior seasons combined) + projected real-world MLB lines · MLE = level/park-neutral translations
Methodology▸ how these numbers are built

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

YearAge LvlTeam MLB% PAAB H2B3BHR BBSOHBP SBCS AVGOBPSLGOPS ISOBABIP K%BB% wOBAwRC+ BATRUNFLDPOSREP WAR
201421 ROKIdaho Falls Chukars 293265 721219 23851 32 272332426759 155360 298 330 111
201421 ROKIdaho Falls Chukars 293249 9016113 39591 32 3614505901.040 229425 2013 449 201
201522 A2 teams 537502 10616024 282012 72 211256386642 175291 375 278 71
201522 A2 teams 537475 12521027 551412 72 263342478820 215314 2610 359 133
201623 AA3 teams 663621 14032225 362304 35 225272404677 179312 355 292 81
201623 AA3 teams 663588 16336223 691844 35 277357463820 185366 2810 363 136
201724 AAA2 teams 539500 10523218 341661 10 210262372634 162274 316 275 69
201724 AAA2 teams 539479 12127222 551391 10 253331455786 203309 2610 345 122
201825 AAA3 teams 639572 12133322 551877 20 212289395684 184270 299 297 85
201825 AAA3 teams 639558 13133324 691647 20 235326434760 199287 2611 336 115
201926 MLB2 teams 519464 9622221 491413 01 207287399686 192246 279 300 88 -7 -0 -6 -9 +15 -0.8
201926 MLB2 teams 519457 10223223 561303 01 223312433745 210257 2511 329 110 +6 -0 -6 -9 +15 0.5
202027 MLBKansas City Royals 132113 22602 18370 00 195305301606 106267 2814 274 68 -5 +0 -1 -2 +4 -0.5
202027 MLBKansas City Royals 132113 22602 18370 00 195305301606 106267 2814 281 73 -4 +0 -1 -2 +4 -0.4
202128 MLB2 teams 336311 769119 19903 30 244294463757 219278 276 324 106 +2 +1 -0 -4 +10 0.9
202128 MLB2 teams 336308 809121 22863 30 260315500815 240289 267 353 129 +11 +1 -0 -4 +10 1.7
202229 MLBKansas City Royals 145134 32611 8352 00 239292321613 82313 246 280 73 -5 +0 -1 -2 +4 -0.3
202229 MLBKansas City Royals 145134 32611 8352 00 239292321613 82313 246 277 70 -5 +0 -1 -2 +4 -0.4
202330 MLB2 teams 420395 11024216 181003 51 278315471786 192333 244 335 115 +7 +1 -0 -8 +12 1.2
202330 MLB2 teams 420394 11726218 19963 51 297334510844 213350 235 366 138 +18 +1 -0 -8 +12 2.4
202431 MLBBaltimore Orioles 494443 11320314 46692 31 255328409736 153273 149 322 105 +3 +0 -4 -9 +14 0.4
202431 MLBBaltimore Orioles 494443 11721315 46692 31 264336427763 163282 149 338 117 +10 +0 -4 -9 +14 1.2
202532 MLBSan Diego Padres 544474 13622118 581098 31 287374451826 165336 2011 360 134 +21 +0 +1 -10 +15 2.9
202532 MLBSan Diego Padres 544474 13321117 581098 31 281369437805 156330 2011 359 133 +20 +0 +1 -10 +15 2.8
▸ 2026 Season (ACT · ROS-MLE · ROS-CTX · FULL)
YTD33 MLBPIT 339306 8813016 26745 10 288353487840 199330 228 363 136 +14 +0 +0 -4 +10 2.1
YTD33 MLBPIT 339306 8813016 26745 10 288353487840 199330 228 369 141 +16 +0 +0 -4 +10 2.3
ROS33 MLBPIT 100% 226201 53919 20463 10 264339453792 189300 209 351 127 +7 +0 +3 -4 +6 1.3
ROS33 MLBPIT 100% 226201 53919 20463 10 264339453792 189299 209 340 118 +5 +0 +3 -4 +6 1.1
FULL33 MLBPIT 565507 14122125 461208 20 278348473821 195318 218 354 129 +19 +0 +3 -8 +16 3.1
TOT33 MLBPIT 565507 14122125 461208 20 278348473821 195318 218 358 132 +21 +0 +3 -8 +16 3.4
▸ 2027+ Projections   WITH CONTEXT · MLB TIME ONLY ⓘ
202734 MLBPIT 100% 421377 9416116 36885 20 249323424747 175287 219 337 116 +8 +0 +1 -8 +12 1.4
202835 MLBPIT 100% 367328 8013114 31805 10 244319418736 174278 228 324 107 +3 +0 -0 -7 +10 0.6
202734 MLBPIT 100% 421377 9416116 36885 20 249323424747 175286 219 326 108 +4 +0 +1 -8 +12 1.0
202835 MLBPIT 100% 367328 8013114 31805 10 244319418736 174277 228 314 98 -1 +0 -0 -7 +10 0.3
▸ Career Totals
Career 34913129 78714213123 30476132 154 252324423747 172293 229 329 110 +38 +1 -10 -72 +99 5.7
/ 162G 650583 14626223 571426 31 250324420744 170291 229 329 110 +7 +0 -2 -13 +18 1.1
Career 62755700 135626321228 479166449 3413 238303411714 174293 278 312 97 -24 +2 -10 -109 +178 3.8
/ 162G 650590 14027224 501725 41 237302412714 175291 268 312 97 -2 +0 -1 -11 +18 0.4

Historical Stats — Raw (Per Stint)

Actual MLB + MiLB stats as they happened, one row per stint at each level. Use this to see what really got recorded; the table above shows MLB-equivalent translations + projections.

YearAge LvlTeam MLB% PAAB H2B3BHR BBSOHBP SBCS AVGOBPSLGOPS ISOBABIP K%BB% wOBAwRC+ BATRUNFLDPOSREP WAR
201421 ROKIdaho Falls Chukars 293249 9016113 39591 32 3614505901.040 229425 2013 449 201 +34 -0 +8 4.3
201522 A+Wilmington Blue Rocks 181161 381008 19540 00 236317447764 211300 3010 336 115 +3 +0 +5 0.8
201522 ALexington Legends 356314 8711019 36872 72 277355494849 217321 2410 370 142 +17 +1 +10 2.8
201623 AANorthwest Arkansas Naturals 466414 10725215 481313 35 258340437777 179342 2810 346 123 +12 -1 +13 2.4
201623 A+Wilmington Blue Rocks 9888 31707 8271 00 3524126701.083 318436 288 462 212 +12 +0 +3 1.5
201623 INTLSurprise Saguaros 9986 25401 13260 00 291384372756 81407 2613 347 124 +3 +0 +3 0.6
201724 AAAOmaha Storm Chasers 463413 10426118 451191 10 252327450777 199309 2610 341 119 +10 +0 +13 2.4
201724 AANorthwest Arkansas Naturals 7666 17114 10200 00 258355485840 227310 2613 370 142 +4 +0 +2 0.6
201825 MLBKansas City Royals 170149 3910212 20451 00 262353597950 336293 2612 408 170 +13 +0 -2 -11 +5 0.5
201825 AAAOmaha Storm Chasers 406353 8221111 45973 20 232324391715 159286 2411 319 102 +1 +0 +12 1.3
201825 INTLGigantes del Cibao 6356 10201 4223 00 179270268538 89273 356 254 52 -3 +0 +2 -0.2
201926 MLBKansas City Royals 370328 6413114 39991 01 195283369652 174230 2711 292 81 -8 -0 -6 -9 +10 -1.3
201926 AAAOmaha Storm Chasers 149129 381019 17312 00 295385597982 302322 2111 422 181 +14 +0 +4 1.8
202027 MLBKansas City Royals 132113 22602 18370 00 195305301606 106267 2814 281 73 -4 +0 -1 -2 +4 -0.4
202128 MLBKansas City Royals 254236 53519 13712 00 225271369640 144277 285 282 74 -7 +0 -0 -4 +7 -0.4
202128 AAAOmaha Storm Chasers 8272 274012 9151 30 3754519311.382 556333 1811 574 297 +18 +1 +2 2.2
202229 MLBKansas City Royals 145134 32611 8352 00 239292321613 82313 246 277 70 -5 +0 -1 -2 +4 -0.4
202330 MLBBaltimore Orioles 368346 10022114 15823 51 289324480804 191340 224 350 126 +11 +1 -0 -8 +10 1.4
202330 AAANorfolk Tides 5248 17414 4140 00 3544047291.133 375433 278 483 228 +7 +0 +1 0.9
202431 MLBBaltimore Orioles 494443 11721315 46692 31 264336427763 163282 149 338 117 +10 +0 -4 -9 +14 1.2
202532 MLBSan Diego Padres 544474 13321117 581098 31 281369437805 156330 2011 359 133 +20 +0 +1 -10 +15 2.8
▸ Career Totals (raw MLB only — historical actual)
MLB Career 24772223 5601041084 21754719 114 252324421745 169296 229 330 111 +30 +1 -13 -54 +70 3.4

Career Comps

Retired MLB careers whose totals most resemble what we're projecting for this player. Top row of each card is career totals; bottom row is per-162-game rates. Pool: 727 completed hitter careers (2000-2024).

PLAYER · career totals + /162 gamesYRSPAHRSBAVGOBPSLGPOSFLDWARJAWS
#1Kendrys Moraleslast yr '19
career totals — 13 seasons, 5,357 PA
135,3572136265327453-95-1614.915.2
/162664261-11.8-2.01.8pk7: 16
#2Josh Reddicklast yr '21
career totals — 13 seasons, 4,879 PA
134,87914661262321426-52-813.113.0
/162664208-7.1-1.11.8pk7: 13
#3Ryan Ludwicklast yr '14
career totals — 11 seasons, 3,938 PA
113,93815017261330451-42-3411.812.7
/162664253-7.0-5.82.0pk7: 14
OGOGILVIE CAREER PROJECTION
career totals — every cell rolls up across 12 projected seasons
124,15915020258327432-74-3210.010.5
/162664243-11.9-5.21.6pk7: 11
#4Juan Riveralast yr '12
career totals — 10 seasons, 3,739 PA
103,73913017274324443-42-229.510.4
/162664233-7.5-3.91.7pk7: 11
#5Kole Calhounlast yr '23
career totals — 11 seasons, 4,963 PA
114,96317933242316418-54-338.39.6
/162664244-7.3-4.41.1pk7: 11
#6Mitch Morelandlast yr '21
career totals — 12 seasons, 4,536 PA
124,53618611251318446-81-565.96.1
/162664272-11.9-8.10.9pk7: 6

Career Path Comps

What happened to players with a similar stat profile at this age · Y-axis: wRC+ (100 = league avg, 150 = elite, 80 = below) · Bands: P10–P90 outer, P25–P75 inner · Gold: OGILVIE projection

Scouting At Match Age Next 3 Yrs Peak 3 Yrs
Comp Age HIT PWR SPD EYE AVG/OBP/SLG ISOBABIP HRSB K%BB% wRC+WAR AVG/OBP/SLG ISOBABIP HRSB K%BB% wRC+WAR AVG/OBP/SLG ISOBABIP HRSB K%BB% wRC+WAR
Ryan O'Hearn (OGILVIE) 33 60 45 50 55 278/348/473 195318 252 21% 8% 132 +3.4
Yadiel Hernandez
2022 · MLB
34 50→55 55 46→45 46 261/316/438 177310 247 24% 7% 113 +2.6 251/298/392 141314 177 25% 6% 93 +1.3 267/312/40714032616423%6%101+1.0
Garrett Jones
2014 · MLB
33 48→53 57→60 49→50 48 251/307/455 204285 245 22% 7% 114 +2.7 245/303/417 172291 193 22% 8% 102 +1.8 244/304/40916529118022%8%95+0.8
Yonder Alonso
2019 · MLB
32 49→59 55 46→45 54 258/333/443 185291 243 21% 10% 121 +3.2 225/309/379 154263 194 21% 10% 95 +1.4 184/284/30812421414021%11%62-0.6
Alex Dickerson
2022 · MLB
32 50→55 58→60 48→45 48 263/333/474 211301 264 22% 8% 130 +3.8 225/284/391 166272 205 25% 7% 88 +0.9 196/249/34514923717125%6%58-0.8
Juan Miranda
2016 · AAA
33 52→60 51→50 45→40 53 260/359/415 155312 195 22% 10% 125 +3.5 234/321/368 134293 157 24% 9% 98 +1.6 215/297/34713227216426%9%79+0.1
Todd Hollandsworth
2005 · MLB
32 55→56 53→55 43→50 52 275/341/459 184317 197 20% 9% 128 +3.7 249/301/408 159295 166 20% 7% 98 +1.6 243/288/39315028914421%6%85+0.3
Adam Lind
2016 · MLB
33 57→60 53→60 46→40 56 287/361/471 184323 202 18% 10% 139 +4.4 259/318/442 183289 242 19% 8% 115 +2.7 244/294/41817427024120%7%93+0.7
Charlie Blackmon
2019 · MLB
33 52→57 54→60 50→55 51 265/334/448 183297 2112 19% 8% 123 +3.3 257/322/422 165289 186 17% 8% 111 +2.5 251/321/40315228116316%8%101+1.5
Seth Smith
2017 · MLB
34 51→56 53→55 46→50 56 256/346/440 183297 192 20% 11% 125 +3.5 251/333/421 170295 205 21% 10% 115 +2.8 247/332/41116329119321%10%107+1.4
Jeff Liefer
2008 · MLB
33 49→52 54→60 48→30 44 253/300/432 179295 218 22% 6% 105 +2.1 220/276/346 126302 139 30% 7% 72 -0.2 195/253/30310827010330%7%51-0.4
Jose Ruiz
2017 · AAA
32 52→62 54→55 45 47 271/318/444 173292 239 17% 6% 115 +2.8 245/284/389 144287 189 21% 5% 86 +0.8 240/274/36412428916622%4%73-0.1
Ricky Ledee
2006 · MLB
32 51→47 52→60 50 53 256/332/430 174300 195 21% 10% 117 +2.9 232/292/376 144280 165 23% 7% 86 +0.8 215/269/33712226515225%6%65-0.4
Roberto Mendez
2006 · AAA
33 56→59 54→50 43→45 57 282/360/464 182317 216 18% 11% 137 +4.3 270/354/413 143312 168 18% 12% 121 +3.2 264/355/38912430414817%12%115+1.8
John Mabry
2004 · MLB
33 47 54→60 46→30 52 244/320/425 181272 215 20% 9% 111 +2.5 251/319/424 173298 213 22% 9% 111 +2.5 242/310/40416229020023%9%96+0.6
Michael Cuddyer
2012 · MLB
33 55→58 52→60 51→50 53 276/339/452 176302 199 16% 8% 126 +3.5 265/326/434 169300 1811 18% 8% 115 +2.8 278/334/43315532217819%7%115+1.8
Tino Martinez
2002 · MLB
34 52→54 57→55 43→40 52 270/327/467 197275 253 13% 7% 125 +3.5 266/341/446 180277 223 13% 10% 125 +3.5 262/350/43717427321313%11%116+2.6
David Peralta
2021 · MLB
33 55→62 52→60 51→45 49 278/335/450 172326 194 21% 8% 124 +3.4 257/317/405 148308 124 20% 8% 104 +2.0 253/313/39814530211319%7%96+1.2
Asdrúbal Cabrera
2019 · MLB
33 52→62 53→55 44→50 50 267/327/446 179298 213 18% 8% 120 +3.1 250/324/425 175290 204 20% 10% 112 +2.6 241/324/40716628218321%10%104+1.2
Lee Stevens
2001 · MLB
34 50→51 58→60 47→30 52 263/334/471 208297 253 21% 9% 129 +3.7 238/327/432 194281 233 23% 11% 116 +2.8 226/324/41719126523224%12%101+1.6
Rob Refsnyder
2023 · MLB
32 53→60 50 48→50 50 258/343/417 159330 187 26% 10% 119 +3.1 255/344/405 150322 1610 24% 10% 116 +2.8 255/349/40615132016924%11%114+1.1