Willi CastroLF Colorado Rockies
Age 29 S/R 6'0" / 209 lbs MLB HR +30%H +12% Svc 6.099 · Ctrl thru 2027
2026 ROS PROJECTION320 act + 213 ros · stats below = ROS only
wRC+†vL 9798vR 100
AVG/OBP/SLG.248 / .326 / .396
PA213
HR5
SB5
K%26
BB%8
BABIP322
ISO148
MLB%100%
Value2026 · WAR
BAT: +0.3 runs (wOBA-derived runs vs avg)+0BATRUN: +0.8 runs (SB/CS + UBR baserunning)+1RUNFLD: +0.4 runs (Defensive runs vs avg)+0FLDPOS: +1.9 runs (Positional adjustment)+2POSREP: +15.1 runs (Replacement-level credit)+15REPTotal WAR: +1.80+1.8WAR
0.00.91.80.71.3+$7M ctrl surplus26272829303132333435
projected WAR paid WAR ($/8M) surplus deficit
Tools · Splits · ContractCON 45 / POW 45
Toolsscout grade · Statcast %ile · 2024-2026
CONTACT45
Whiff%
5410.6%
xwOBA
520.311
POWER45
Barrel%
386.6
Avg EV
2787.4
Bat Spd
4871.2
EYE45
Chase%
7227.5%
SPEED55
Sprint
7128.3
Platoon Splits2024-2026 · 1150 PA
vs LHP
vs RHP
Edge
PA
276
874
wRC+
96
99
R
wOBA
311
314
ISO
164
128
◀◀L
BABIP
298
310
R
K%
23.2%
24.9%
L
BB%
5.4%
9.3%
▶▶R
Contract ESTIMATED · service-time + WAR-based estimator (needs verification)
Status   FA
MLB Debut   2019
Service   6.099 yrs.days
Team Control Through   2027
First FA Year   2027
YearStatusSalary Proj WAR Value Surplus
2026ROSExt$3M+0.7$3M+$0.3M
2027Ext$6M+1.3$10M+$4M
Totals $9M $13M +$4M

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
201417 ROKAZL Indians 170157 29421 4484 94 185224255479 70259 282 205 15
201417 ROKAZL Indians 170155 37532 6334 94 239285348633 110292 194 276 70
201619 ALake County Captains 548525 1161874 121223 1611 221243305547 84277 222 236 39
201619 ALake County Captains 548518 1342187 19963 1611 259289371660 112302 183 289 80
201720 A+2 teams 541510 13318213 181247 209 261295380676 120318 233 290 80
201720 A+2 teams 541498 14925312 30957 209 299348434781 135347 186 345 122
201821 AA3 teams 648604 1373158 271755 195 227266334600 108305 274 256 54
201821 AA3 teams 648594 15433711 371365 195 259308394702 135318 216 308 94
201922 AAA3 teams 729664 17034815 3617516 185 256310399709 143321 245 309 95
201922 AAA3 teams 729651 18236912 4916116 185 280345418763 138349 227 336 115
202023 MLBDetroit Tigers 140129 47427 7381 01 364401589991 225465 275 413 174 +12 -0 -2 +2 +4 1.5
202023 MLBDetroit Tigers 140129 45426 7381 01 349387550937 202448 275 402 166 +10 -0 -2 +2 +4 1.4
202124 MLB3 teams 504463 10919611 2511910 124 235289374663 138292 245 286 77 -13 +1 +1 +2 +14 0.5
202124 MLB3 teams 504465 10517611 2311610 124 226277359636 133276 235 282 74 -15 +1 +1 +2 +14 0.3
202225 MLB2 teams 428400 1002129 16948 125 250292380672 130303 224 292 81 -9 +0 +0 -5 +12 -0.1
202225 MLB2 teams 428399 972028 17928 125 243288363651 120295 214 290 80 -10 +0 +0 -5 +12 -0.2
202326 MLBMinnesota Twins 409358 921859 349912 335 257342411752 154328 248 328 110 +4 +5 +2 -4 +12 1.9
202326 MLBMinnesota Twins 409358 921859 349912 335 257342411752 154328 248 334 114 +6 +5 +2 -4 +12 2.1
202427 MLBMinnesota Twins 635558 13831512 5115021 149 247333385719 138315 248 319 102 +2 -1 +2 +7 +18 2.8
202427 MLBMinnesota Twins 635558 13831512 5115021 149 247333385719 138315 248 323 106 +4 -1 +2 +7 +18 3.1
202528 MLBChicago Cubs 454402 9117311 4011111 104 226313366679 139286 249 300 88 -6 +0 -7 +2 +13 0.2
202528 MLBChicago Cubs 454402 9117311 4011111 104 226313366679 139286 249 308 94 -3 +0 -7 +2 +13 0.5
▸ 2026 Season (ACT · ROS-MLE · ROS-CTX · FULL)
YTD29 MLBCOL 320288 751307 27894 64 260332378711 118352 288 318 101 +0 -0 +1 +1 +9 1.2
YTD29 MLBCOL 320288 751307 27894 64 260332378711 118352 288 321 104 +1 -0 +1 +1 +9 1.3
ROS29 MLBCOL 100% 213189 47925 18554 52 248326396723 148314 268 315 99 -0 +0 -1 +1 +6 0.6
ROS29 MLBCOL 100% 213189 491025 18554 52 259336413749 153338 268 322 105 +1 +0 -1 +1 +6 0.7
FULL29 MLBCOL 533477 12423212 451448 116 260334392726 132347 278 320 103 +2 -0 +0 +2 +15 1.9
TOT29 MLBCOL 533477 12222212 451448 116 256330385715 130340 278 317 100 +0 -0 +0 +2 +15 1.8
▸ 2027+ Projections   WITH CONTEXT · MLB TIME ONLY ⓘ
202730 MLBCOL 100% 622552 13024513 5316312 145 236316368684 132306 269 308 94 -4 +1 -5 +2 +18 1.2
202730 MLBCOL 100% 622552 14127516 5316312 145 255334409743 154330 269 315 99 -1 +1 -5 +2 +18 1.5
▸ Career Totals
Career 34253066 7581463177 24784179 9435 247320390710 143314 257 313 98 -9 +5 -10 +14 +97 9.8
/ 162G 650582 14528615 4716015 187 249321395717 146316 257 313 98 -2 +1 -2 +3 +18 1.8
Career 60415511 133924854118 3411473114 18269 243301372672 129308 246 293 83 -119 +9 -10 +20 +171 7.2
/ 162G 650593 14527613 3715812 207 245302376678 132310 246 293 83 -13 +1 -1 +2 +18 0.8

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
201417 ROKAZL Indians 170155 37532 6334 94 239285348633 110292 194 276 70 -6 +0 +5 -0.1
201619 ALake County Captains 548518 1342187 19963 1611 259289371660 112302 183 289 80 -13 -1 +16 0.2
201720 A+Lynchburg Hillcats 510469 13624311 28907 199 290339424764 134336 185 337 116 +9 +0 +14 2.4
201720 INTLLeones del Escogido 3129 13101 250 10 4484845861.070 138522 166 475 221 +4 +0 +1 0.5
201821 AAAToledo Mud Hens 2121 6000 050 10 286286286571 375 240 259 56 -1 +0 +1 -0.0
201821 AAErie SeaWolves 524476 1252949 341094 175 263317397714 134323 216 313 98 -1 +1 +15 1.5
201821 INTLLeones del Escogido 10397 23432 3221 10 237267402669 165284 213 288 78 -3 +0 +3 0.1
201922 MLBDetroit Tigers 110100 23611 6342 01 230287340627 110333 315 278 71 -4 -0 -1 +8 +3 0.6
201922 AAAToledo Mud Hens 525465 14028811 3711014 174 301370467837 166369 217 366 138 +23 +2 +15 4.0
201922 INTLLeones del Escogido 9486 19200 6170 10 221272244516 23268 186 236 38 -7 +0 +3 -0.4
202023 MLBDetroit Tigers 140129 45426 7381 01 349387550937 202448 275 402 166 +10 -0 -2 +2 +4 1.4
202124 MLBDetroit Tigers 450413 911569 231098 94 220275351626 131275 245 277 70 -15 +0 +1 +2 +13 0.1
202124 AAAToledo Mud Hens 2323 9201 020 20 3913916091.000 217400 90 438 193 +2 +0 +1 0.4
202124 INTLLeones del Escogido 3129 5001 052 10 172226276502 103174 160 231 35 -2 +0 +1 -0.1
202225 MLBDetroit Tigers 392365 881828 15828 94 241286367653 126288 214 290 80 -9 +0 +0 -5 +11 -0.2
202225 AAAToledo Mud Hens 3634 9200 2100 31 265306324629 59375 286 286 77 -1 +0 +1 0.0
202326 MLBMinnesota Twins 409358 921859 349912 335 257342411752 154328 248 334 114 +6 +5 +2 -4 +12 2.1
202427 MLBMinnesota Twins 635558 13831512 5115021 149 247333385719 138315 248 323 106 +4 -1 +2 +7 +18 3.1
202528 MLBChicago Cubs 454402 9117311 4011111 104 226313366679 139286 249 308 94 -3 +0 -7 +2 +13 0.5
▸ Career Totals (raw MLB only — historical actual)
MLB Career 25902325 5681092456 17662363 7528 244315384699 140308 247 312 97 -10 +4 -4 +11 +73 7.5

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
#1Cameron Maybinlast yr '20
ASSS
career totals — 13 seasons, 4,182 PA
134,18272182254322375+9+613.112.8
/1626641129+1.4+1.02.1pk7: 13
#2Kevin Pillarlast yr '24
career totals — 11 seasons, 4,353 PA
114,353114108256294407+9+1612.612.4
/1626641716+1.4+2.51.9pk7: 12
#3Marwin Gonzalezlast yr '22
career totals — 11 seasons, 3,882 PA
113,88210744252310399-10+1710.910.9
/162664188-1.6+2.81.9pk7: 11
OGOGILVIE CAREER PROJECTION
career totals — every cell rolls up across 10 projected seasons
104,06188110244314382+6+010.09.8
/1626641418+0.9+0.01.6pk7: 10
#4Logan Forsythelast yr '19
career totals — 9 seasons, 3,502 PA
93,5027042246327370+5-118.69.2
/162664138+0.9-2.21.6pk7: 10
#5Manuel Margotlast yr '24
career totals — 8 seasons, 3,154 PA
83,1545694254307380-5+278.48.8
/1626641220-1.1+5.61.8pk7: 9
#6Damion Easleylast yr '08
career totals — 9 seasons, 2,995 PA
92,9957733247323396-2-157.88.3
/162664177-0.5-3.31.7pk7: 9

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
Willi Castro (OGILVIE) 29 45 45 55 45 256/330/385 130340 1211 27% 8% 100 +1.8
Phillip Ervin
2021 · MLB
29 47→50 47→50 49→55 48 234/310/381 147295 1413 25% 8% 95 +1.4 204/279/332 128279 1516 30% 9% 70 -0.3 158/235/263105215152133%9%31-1.3
Cooper Hummel
2023 · MLB
28 45→49 49→50 48→55 53 226/316/384 158294 1610 27% 11% 99 +1.7 225/326/370 145307 1218 28% 12% 100 +1.7 222/332/370148300121927%12%99+1.1
George Lombard
2005 · MLB
29 47→44 47→50 55 45 237/295/377 140297 1517 25% 7% 88 +0.9 228/299/385 157314 1723 31% 8% 92 +1.2 220/293/373153305172732%8%84+0.4
Abraham Almonte
2018 · MLB
29 51→55 44→55 56→55 49 245/304/380 135300 915 21% 8% 92 +1.2 215/294/369 154267 1412 24% 10% 85 +0.7 227/326/416190273221124%13%108+1.4
Skye Bolt
2023 · MLB
29 46→39 51→50 54→50 43 236/295/396 160293 2014 26% 6% 93 +1.3 232/300/353 121326 1210 30% 8% 84 +0.6 229/307/327973398532%9%78+0.1
Ehire Adrianza
2019 · MLB
29 50→49 44→50 49→50 47 246/300/373 127294 1111 20% 7% 89 +0.9 243/316/374 131294 116 20% 9% 96 +1.5 241/326/37313228911119%10%97+0.5
Jonathan Davis
2021 · MLB
29 46→52 46→45 54→55 45 227/308/358 131295 1219 26% 7% 89 +1.0 216/308/331 115293 1123 28% 9% 82 +0.5 224/306/341117313112229%9%81+0.2
Collin Cowgill
2015 · MLB
29 49→56 45→50 51→55 46 241/304/362 121303 1310 24% 7% 88 +0.9 216/273/318 102285 1010 26% 6% 63 -0.8 182/252/31813624517932%7%53-0.7
Tyler Neslony
2023 · AAA
29 53→47 50→55 51→55 44 259/312/429 170333 1517 26% 7% 108 +2.3 221/276/341 120304 1219 29% 7% 71 -0.3 195/255/29398273102231%7%47-0.9
Drew Ferguson
2021 · AAA
28 50→49 44→45 54→55 48 240/322/359 120321 1221 27% 9% 95 +1.4 213/282/319 106334 1021 36% 8% 68 -0.5 147/237/1874027443543%11%12-0.8
BJ Boyd
2022 · AAA
29 49→56 49→45 56→50 42 249/296/395 146309 1713 25% 5% 93 +1.3 259/317/404 145308 1512 20% 7% 104 +2.0 289/354/441153330141016%8%125+1.7
Dan Black
2016 · AAA
29 49→52 47→50 47→45 48 244/311/380 137310 155 26% 9% 95 +1.4 234/295/344 110308 127 26% 8% 79 +0.3 228/291/3108130210326%8%68-0.3
Bobby Scales
2008 · AAA
30 53→57 46→50 53→50 44 254/311/393 140329 1111 26% 7% 98 +1.6 252/323/386 134320 1210 24% 8% 102 +1.8 248/329/38013231112823%9%100+1.4
Moisés Sierra
2018 · AAA
29 54→55 44→50 52→50 43 259/309/378 119324 1117 23% 6% 94 +1.3 246/312/378 132300 1413 22% 7% 95 +1.4 244/319/376132292151221%8%96+1.0
Josh Rojas
2023 · MLB
29 53→54 45→50 53→55 54 255/333/381 126315 1118 22% 10% 105 +2.1 236/306/347 111297 1016 22% 9% 85 +0.7 221/291/3209928091523%9%69-0.2
Reid Gorecki
2010 · MLB
29 50→51 45→50 52→55 44 248/298/378 130304 1219 23% 6% 89 +1.0 225/281/339 114291 918 25% 7% 72 -0.2 210/272/3079827762225%7%56-1.0
Niko Goodrum
2022 · MLB
30 45→54 49→55 53→55 46 224/298/374 150315 1619 32% 9% 89 +1.0 229/321/362 133325 1415 31% 12% 95 +1.4 235/336/360125330131429%13%98+0.6
Todd Linden
2008 · MLB
28 51→53 47→55 53→45 48 245/322/386 141327 1410 28% 9% 102 +1.8 252/321/402 150345 158 29% 8% 105 +2.1 248/314/40615833816530%8%99+1.2
Xavier Paul
2014 · MLB
29 52→58 47→45 48→55 49 254/317/395 141310 1413 22% 8% 102 +1.8 208/263/332 124277 146 29% 6% 63 -0.8 164/211/2579423412135%5%19-2.3
Jason Conti
2002 · MLB
27 49→41 47→45 56→50 46 237/304/380 143315 1313 28% 8% 92 +1.2 239/298/371 132310 119 25% 7% 87 +0.8 220/270/33311328810627%6%63-0.4