Drew Cavanaugh

C San Francisco Giants
Age 25 L/R 6'1" / 219 lbs MLB HR -15%H -3% Svc 0.547 · Ctrl thru 2032
Overview
MLB40-MANPre-ArbFA 2033
YearAgeLvl / TeamPAAVG/OBP/SLGHRSBwRC+WARMLE AVG/OBP/SLG
202422AAA/A/INTL2 orgs223.237/.360/.3172058—.189/.292/.238
202523AAA/AA/A+/ASF402.264/.402/.45314785—.212/.321/.347
202624AAA/AASF227.311/.451/.55096133—.261/.376/.429
202624MLBSF166.229/.315/.29211750.6
2027PROJ25MLBSF155.198/.301/.30832800.2
2028PROJ82% MLB26MLBSF258.201/.303/.31953830.5
2029PROJ82% MLB27MLBSF265.202/.303/.32053830.5
Last 3 seasons WAR 0.6  ·  Next 3 projected WAR 1.3Projected rows: MLB playing time only, park and league context applied.
ContractESTIMATED
Control thru2032Service0.547First FA2033
2027Pre-Arb$0.8M2028Pre-Arb$0.8M2029Pre-Arb$0.8M2030Arb-1$1M2031Arb-2$2M2032Arb-3$2M
Skills · percentileStatcast 2026
xwOBA41
Speed27
Barrel%18
Avg EV10
Form.187/.278/.315 ▼ rolling true talent (60d window) · proj .201/.302/.317
CompsMeibrys Viloria (age 25) · Isan Díaz (age 25) · Zack Collins (age 27)
2027 FULL-SEASON PROJECTIONstats below = full-season projection
showingPROJ
wRC+†80
AVG/OBP/SLG.198 / .301 / .308
PA155
HR3
K%29
BB%10
BABIP271
ISO104
MLB%100%
Value2027 · WAR
BAT: -3.7 runs (wOBA-derived runs vs avg)-4BATRUN: -0.3 runs (SB/CS + UBR baserunning)-0RUNFLD: +0.0 runs (Defensive runs vs avg)+0FLDPOS: +2.8 runs (Positional adjustment)+3POSREP: +3.4 runs (Replacement-level credit)+3REPTotal WAR: +0.40+0.4WAR
0.00.51.00.40.50.50.40.30.227282930313233343536
━ projected WAR━ paid WAR ($/8M) surplus deficit━ post-control+$11M ctrl surplus
Tools · Recent Form · ContractCON 45 / POW 50
Toolsscout grade · Statcast %ile · 2026
CONTACT45
xAVG
310.236
POWER50
Barrel%
184.1
Avg EV
1085.2
EYE55
scouting grade only
SPEED45
Sprint
2726.4
Recent Formrolling true talent ⓘ
K%34%▼▼40% over 52 PA (60d) · proj 29%
BB%9%▼6% over 52 PA (60d) · proj 10%
ISO.128▲.170 over 47 AB (60d) · proj .116
BABIP.277·.360 over 25 BIP (60d) · proj .275
SLASH.187/.278/.315▼proj .201/.302/.317
Contract ESTIMATED · service-time + WAR-based estimator (needs verification)
Status   Pre-Arb
MLB Debut   2026
Service   0.547 yrs.days
Team Control Through   2032
First FA Year   2033
YearStatusSalary Proj WAR Value Surplus
2027Pre-Arb$0.8M+0.4$2M+$0.8M
2028Pre-Arb$0.8M+0.5$2M+$1M
2029Pre-Arb$0.8M+0.5$2M+$1M
2030Arb-1$1M+0.4$1M+$0.3M
2031Arb-2$2M+0.3$0.9M+$0.0M (cut)
2032Arb-3$2M+0.2$0.5M+$0.0M (cut)
Totals $4M $8M +$3M

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 = full-season projection (no games played yet). 2028+ via Advanced Marcel + aging curve. Catcher framing: only 2027 Statcast framing is modeled (Baseball Savant server-caches the leaderboard to the current season); prior-year framing is unmodeled — projections for established framers may run 1-3 WAR low.

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)
202321 ASan Jose Giants — 2420 5000 370 10 250348250598 357 2912 276 32 — — — — — —
202321 ROKACL Giants Black — 4030 9100 7103 00 300475333808 33450 2518 390 65 — — — — — —
202422 AAASacramento River Cats — 3530 9000 471 00 300400300700 391 2011 333 93 — — — — — —
202422 ASan Jose Giants — 154126 29702 23454 00 230366333699 103338 2915 326 49 — — — — — —
202422 INTLScottsdale Scorpions — 3430 6200 4100 00 200294267561 67300 2912 264 65 — — — — — —
202523 AAASacramento River Cats — 5349 9101 4150 00 184245265511 82242 288 236 15 — — — — — —
202523 AARichmond Flying Squirrels — 5643 8201 8155 10 186375302677 116259 2714 329 69 — — — — — —
202523 A+Eugene Emeralds — 162131 39616 22465 42 298418496914 198398 2814 397 107 — — — — — —
202523 ASan Jose Giants — 13199 29616 27343 20 2934575561.013 263377 2621 438 93 — — — — — —
202624 MLBSan Francisco Giants — 166144 33411 18500 10 229315292606 63344 3011 276 75 -5 +0 +0 +7 +4 0.6
202624 AAASacramento River Cats — 137112 37906 18346 30 3304495711.020 241425 2513 445 137 — — — — — —
202624 AARichmond Flying Squirrels — 9068 19703 17215 32 279456515970 235364 2319 432 128 — — — — — —
▸ Career Totals (raw MLB only — historical actual)
MLB Career— — 166144 33411 18500 10 229315292606 63344 3011 276 73 -5 +0 +0 +7 +4 0.6
▸ Career — adjusted (every ACTUAL line translated to park/league-neutral MLB equivalents)
202321 A MLESan Jose Giants — 2421 4000 2100 10 190261190451 315 428 216 32 — — — — — —
202321 ROK MLEACL Giants Black — 4033 7100 4143 00 212350242592 30342 3510 264 65 — — — — — —
202422 AAA MLESacramento River Cats — 3531 9000 381 00 290371290662 391 239 306 93 — — — — — —
202422 A MLESan Jose Giants — 154133 22501 16644 00 165275226500 60300 4210 240 49 — — — — — —
202523 AAA MLESacramento River Cats — 5350 8101 3180 00 160208240448 80227 346 191 15 — — — — — —
202523 AA MLERichmond Flying Squirrels — 5645 8201 6185 10 178339289628 111247 3211 270 69 — — — — — —
202523 A+ MLEEugene Emeralds — 162137 34515 16585 42 248348409757 161345 3610 326 107 — — — — — —
202523 A MLESan Jose Giants — 131109 22413 17483 20 202326339665 138306 3713 305 93 — — — — — —
202624 MLB MLESan Francisco Giants — 166144 33411 18500 10 229315292606 63344 3011 279 75 -5 +0 +0 +7 +4 0.6
202624 AAA MLESacramento River Cats — 137117 33804 13416 30 282382453835 171392 309 370 137 — — — — — —
202624 AA MLERichmond Flying Squirrels — 9074 17602 11265 32 230367392759 162334 2912 357 128 — — — — — —
202321 ROK MLE2 teams — 6454 11100 6253 10 204317222540 19367 399 246 53 — — — — — —
202321 ROK RAW2 teams — 6450 14100 10173 10 280429300729 20412 2716 347 53 — — — — — —
202422 A MLE3 teams — 223195 38602 22855 00 195293256549 62330 3810 252 57 — — — — — —
202422 A RAW3 teams — 223186 44902 31625 00 237360317678 81341 2814 318 57 — — — — — —
202523 A+ MLE4 teams — 402340 7111210 4314213 72 209321341662 132314 3511 294 85 — — — — — —
202523 A+ RAW4 teams — 402322 8515214 6111013 72 264402453855 189348 2715 380 85 — — — — — —
202624 MLB MLE3 teams — 393335 851818 4211611 72 254356385741 131363 3011 329 109 +4 +1 +0 +7 +9 2.1
202624 MLB RAW3 teams — 393324 8920110 5310511 72 275394435830 160376 2713 371 109 +4 +1 +0 +7 +9 2.1
202321 ROK MLE2 teams — 6455 11100 6253 10 200317218536 18332 399 246 53 — — — — — —
202422 A MLE3 teams — 223194 38602 22855 00 196293258551 62317 3810 252 57 — — — — — —
202523 A+ MLE4 teams — 402343 7111210 4314213 72 207321338659 131303 3511 294 85 — — — — — —
202624 MLB MLE3 teams — 393337 851818 4211611 72 252356383738 131358 3011 329 109 — — — — — —
▸ Model inputs — neutral MLE (past 3 seasons)
202422 A MLE3 teams — 223194 38602 22855 00 196293258551 62317 3810 252 57 — — — — — —
202523 A+ MLE4 teams — 402343 7111210 4314213 72 207321338659 131303 3511 294 85 — — — — — —
202624 MLB MLE3 teams — 393337 851818 4211611 72 252356383738 131358 3011 329 109 — — — — — —
▸ 2027 season
▸ 2027 — full MLE projection (neutral park, full availability)
202725 MLB MLESF 100% 380329 671318 391119 52 201304317621 116275 2910 286 80 -9 +0 +0 +7 +8 0.4
▸ 2027 — real world (MLB)
202725 MLB CTXSF 100% 155134 26503 16454 21 198301308609 111271 2910 281 80 -4 +0 +0 +3 +3 0.2
▸ Career projection (2028+) — MLB context, MLB playing time (PA × MLB%)
202826 MLB MLESF 82% 315273 561117 32917 41 205306329635 123276 2910 291 83 -6 +0 +0 +6 +7 0.7
202927 MLB MLESF 82% 323280 571117 33927 41 206306330636 124276 2810 291 83 -6 +0 +0 +6 +7 0.7
203028 MLB MLESF 82% 324281 581117 33927 31 206305329634 123276 2810 290 82 -7 +0 -1 +6 +7 0.6
203129 MLB MLESF 82% 314274 571117 31896 21 206303327629 121275 2810 288 81 -7 +0 -1 +6 +7 0.4
203230 MLB MLESF 82% 305266 551116 30876 11 205300323623 118274 2910 285 79 -8 -0 -2 +5 +7 0.2
203331 MLB MLESF 82% 272238 47915 27795 10 200295313608 112270 2910 279 75 -8 +0 -3 +5 +6 0.0
202826 MLB CTXSF 82% 258223 45915 27746 31 201303319622 118272 2910 286 83 -5 +0 +0 +5 +6 0.5
202927 MLB CTXSF 82% 265230 46915 27766 31 202303320623 118272 2910 286 83 -5 +0 +0 +5 +6 0.5
203028 MLB CTXSF 82% 266231 46915 27766 21 202301320621 117272 2910 285 82 -6 +0 -1 +5 +6 0.4
203129 MLB CTXSF 82% 257224 45915 26735 21 202299317617 115271 2810 283 81 -6 +0 -1 +5 +6 0.3
203230 MLB CTXSF 82% 250218 45915 25715 11 201296314610 113270 2810 280 79 -6 -0 -2 +4 +5 0.2
203331 MLB CTXSF 82% 223195 38804 22644 10 197292304596 107267 2910 274 75 -7 +0 -2 +4 +5 0.0
▸ Career Totals
▸ Career totals — MLB only (actual + projected)
Career— A+C — 16851465 29857630 17248432 135 203301312613 109280 2910 282 82 -40 +1 -6 +34 +37 2.6
/ 162G— A+C — 650565 11522212 6618712 52 204300313613 110280 2910 282 82 -15 +0 -2 +13 +14 1.0
Career— MLE — 30902670 561105962 31594374 3210 210311326636 116296 3110 290 82 -51 +1 -7 +43 +47 3.3
/ 162G— MLE — 650562 11822213 6619816 72 210311326636 116296 3010 290 82 -15 +0 -2 +13 +14 1.0

How the minor-league lines were translated

One row per minor-league stint. Open a row to see each step: the raw rate, the park adjustment, the league/level factor, the age adjustment (hitters) and the resulting MLE rate. Factors are the same ones listed on the MLE Factors page.

2026 AAASacramento River Cats · 137 PAwOBA .436 → .370 (−66)K% 24.8% → 29.8%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA24.82%÷1.000×1.200——29.78%
BB% (unintentional) /PA13.14%÷1.000×0.690—×1.0489.50%
HBP% /PA4.38%—×0.940—×1.0484.31%
Singles /BIP28.21%÷1.000×0.930×0.999×1.04827.47%
Doubles /BIP11.54%÷1.000×0.830×0.999×1.04810.03%
Triples /BIP0.00%÷1.000×0.970×0.999×1.0480.00%
Home runs /BIP7.69%÷1.000×0.700—×1.0485.64%

Factors used: league row International League. Park (home-season share, regressed): no park row on file (treated as neutral) — applied at half strength. Age: age 24 vs a level average of 27.2 → +4.8% on BB/HBP/hit rates (3.2 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.999.

Result: wOBA .436 → .370; ISO .241 → .186; BABIP .425 → .392. Both wOBAs use the same linear weights, so the change is the translation alone. The MLE line is not regressed to the mean — regression happens later, when seasons are blended into a projection (how).

2026 AARichmond Flying Squirrels · 90 PAwOBA .419 → .357 (−62)K% 23.3% → 28.5%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA23.33%÷1.000×1.220——28.47%
BB% (unintentional) /PA17.78%÷1.000×0.700—×1.01212.59%
HBP% /PA5.56%—×0.850—×1.0124.78%
Singles /BIP19.15%÷1.000×0.970—×1.01218.80%
Doubles /BIP14.89%÷1.000×0.860—×1.01212.96%
Triples /BIP0.00%÷1.000×0.950—×1.0120.00%
Home runs /BIP6.38%÷1.000×0.780—×1.0125.04%

Factors used: league row EL. Park (home-season share, regressed): no park row on file (treated as neutral) — applied at half strength. Age: age 24 vs a level average of 24.8 → +1.2% on BB/HBP/hit rates (0.8 yr younger than average).

Result: wOBA .419 → .357; ISO .235 → .201; BABIP .364 → .334. Both wOBAs use the same linear weights, so the change is the translation alone. The MLE line is not regressed to the mean — regression happens later, when seasons are blended into a projection (how).

2025 A+Eugene Emeralds · 162 PAwOBA .397 → .326 (−71)K% 28.4% → 35.8%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA28.40%÷1.070×1.350——35.83%
BB% (unintentional) /PA13.58%÷0.950×0.710—×0.99810.13%
HBP% /PA3.09%—×0.810—×0.9982.50%
Singles /BIP30.59%÷1.011×0.910×0.999×0.99827.44%
Doubles /BIP7.06%÷1.048×0.830×0.999×0.9985.57%
Triples /BIP1.18%÷0.909×0.820×0.999×0.9981.06%
Home runs /BIP7.06%÷0.980×0.830—×0.9985.96%

Factors used: level-wide A+ factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 96, 1B 102, 2B 110, 3B 82, K 114, BB 90 — applied at half strength. Age: age 23 vs a level average of 22.8 → −0.2% on BB/HBP/hit rates (0.2 yr older than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.999.

Result: wOBA .397 → .326; ISO .198 → .163; BABIP .398 → .345. Both wOBAs use the same linear weights, so the change is the translation alone. The MLE line is not regressed to the mean — regression happens later, when seasons are blended into a projection (how).

2025 ASan Jose Giants · 131 PAwOBA .434 → .305 (−129)K% 26.0% → 36.7%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA25.95%÷0.962×1.360——36.71%
BB% (unintentional) /PA20.61%÷1.055×0.690—×0.99013.35%
HBP% /PA2.29%—×0.780—×0.9901.77%
Singles /BIP24.62%÷1.007×0.920×0.981×0.99021.84%
Doubles /BIP9.23%÷1.138×0.830×0.981×0.9906.54%
Triples /BIP1.54%÷0.902×0.910×0.981×0.9901.51%
Home runs /BIP9.23%÷1.358×0.800—×0.9905.38%

Factors used: level-wide A factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 172, 1B 101, 2B 128, 3B 80, K 92, BB 111 — applied at half strength. Age: age 23 vs a level average of 22.0 → −1.0% on BB/HBP/hit rates (1.0 yr older than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.981.

Result: wOBA .434 → .305; ISO .263 → .164; BABIP .377 → .306. Both wOBAs use the same linear weights, so the change is the translation alone. The MLE line is not regressed to the mean — regression happens later, when seasons are blended into a projection (how).

2025 AARichmond Flying Squirrels · 56 PAwOBA .322 → .270 (−52)K% 26.8% → 32.1%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA26.79%÷1.018×1.220——32.11%
BB% (unintentional) /PA14.29%÷0.962×0.700—×1.02710.68%
HBP% /PA8.93%—×0.850—×1.0277.79%
Singles /BIP17.86%÷1.004×0.970—×1.02717.72%
Doubles /BIP7.14%÷0.992×0.860—×1.0276.36%
Triples /BIP0.00%÷1.150×0.950—×1.0270.00%
Home runs /BIP3.57%÷1.183×0.780—×1.0272.42%

Factors used: league row EL. Park (home-season share, regressed): HR 137, 1B 101, 2B 98, 3B 130, K 104, BB 92 — applied at half strength. Age: age 23 vs a level average of 24.8 → +2.7% on BB/HBP/hit rates (1.8 yr younger than average).

Result: wOBA .322 → .270; ISO .116 → .088; BABIP .259 → .247. Both wOBAs use the same linear weights, so the change is the translation alone. The MLE line is not regressed to the mean — regression happens later, when seasons are blended into a projection (how).

2025 AAASacramento River Cats · 53 PAwOBA .230 → .191 (−39)K% 28.3% → 33.6%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA28.30%÷1.010×1.200——33.61%
BB% (unintentional) /PA7.55%÷1.011×0.690—×1.0505.41%
HBP% /PA0.00%—×0.940—×1.0500.00%
Singles /BIP20.59%÷1.030×0.930—×1.05019.52%
Doubles /BIP2.94%÷0.959×0.830—×1.0502.67%
Triples /BIP0.00%÷0.900×0.970—×1.0500.00%
Home runs /BIP2.94%÷0.938×0.700—×1.0502.30%

Factors used: league row International League. Park (home-season share, regressed): HR 88, 1B 106, 2B 92, 3B 80, K 102, BB 102 — applied at half strength. Age: age 23 vs a level average of 27.2 → +5.0% on BB/HBP/hit rates (4.2 yr younger than average).

Result: wOBA .230 → .191; ISO .082 → .063; BABIP .242 → .227. Both wOBAs use the same linear weights, so the change is the translation alone. The MLE line is not regressed to the mean — regression happens later, when seasons are blended into a projection (how).

2024 ASan Jose Giants · 154 PAwOBA .318 → .240 (−78)K% 29.2% → 41.5%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA29.22%÷0.957×1.360——41.54%
BB% (unintentional) /PA14.29%÷0.966×0.690——10.20%
HBP% /PA2.60%—×0.780——2.03%
Singles /BIP24.69%÷0.961×0.920×0.972—22.96%
Doubles /BIP8.64%÷1.012×0.830×0.972—6.88%
Triples /BIP0.00%÷1.000×0.910×0.972—0.00%
Home runs /BIP2.47%÷0.959×0.800——2.06%

Factors used: level-wide A factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 92, 1B 92, 2B 102, 3B 100, K 91, BB 93 — applied at half strength. Age: age 22 vs a level average of 22.0 → +0.0% on BB/HBP/hit rates (0.0 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.972.

Result: wOBA .318 → .240; ISO .103 → .074; BABIP .338 → .300. Both wOBAs use the same linear weights, so the change is the translation alone. The MLE line is not regressed to the mean — regression happens later, when seasons are blended into a projection (how).

2024 AAASacramento River Cats · 35 PAwOBA .326 → .306 (−19)K% 20.0% → 22.2%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA20.00%÷1.081×1.200——22.20%
BB% (unintentional) /PA11.43%÷1.032×0.690—×1.0508.03%
HBP% /PA2.86%—×0.940—×1.0502.82%
Singles /BIP39.13%÷0.976×0.930—×1.05039.15%
Doubles /BIP0.00%÷1.052×0.830—×1.0500.00%
Triples /BIP0.00%÷1.091×0.970—×1.0500.00%
Home runs /BIP0.00%÷1.010×0.700—×1.0500.00%

Factors used: league row International League. Park (home-season share, regressed): HR 102, 1B 95, 2B 110, 3B 118, K 116, BB 106 — applied at half strength. Age: age 22 vs a level average of 27.2 → +5.0% on BB/HBP/hit rates (5.2 yr younger than average).

Result: wOBA .326 → .306; ISO .000 → .000; BABIP .391 → .391. Both wOBAs use the same linear weights, so the change is the translation alone. The MLE line is not regressed to the mean — regression happens later, when seasons are blended into a projection (how).