Buddy Kennedy

3B Rochester Red Wings
Age 28 R/R 5'10" / 213 lbs AAA Svc 0.842 · Ctrl thru 2032
Overview
AAAPre-ArbFA 2033
YearAgeLvl / TeamPAAVG/OBP/SLGHRSBwRC+WARMLE AVG/OBP/SLG
202425AAAPHI463.272/.381/.45813494—.238/.319/.382
202425MLBPHI26.190/.320/.38111900.3
202526AAATOR384.280/.381/.4128482—.232/.312/.334
202526MLBLAD32.069/.156/.10300-19-0.3
202627AAAWSH273.291/.399/.4919699—.241/.325/.382
202627MLBSF49.116/.224/.1400013-0.3
2027PROJ10% MLB28MLBWSH24.236/.316/.391111000.1
2028PROJ33% MLB29MLBWSH87.233/.313/.38433980.2
2029PROJ46% MLB30MLBWSH123.230/.310/.37534940.2
Last 3 seasons WAR -0.3  ·  Next 3 projected WAR 0.4Projected rows: MLB playing time only, park and league context applied.
ContractESTIMATED
Control thru2032Service0.842First FA2033
2027Pre-Arb$0.8M2028Pre-Arb$0.8M2029Pre-Arb$0.8M2030Ext$0.9M2031Ext$2M2032Ext$2M
Skills · percentileMiLB Statcast 2026 AAA
Z-Con%90
K%88
Whiff%87
Chase%71
Speed70
BB%64
CompsManuel Margot (age 27) · Alex Call (age 28) · Phillip Ervin (age 28)
2027 FULL-SEASON PROJECTIONstats below = full-season projection
showingPROJ
wRC+†100
AVG/OBP/SLG.236 / .316 / .391
PA24
HR1
K%21
BB%8
BABIP268
ISO182
MLB%10%
Value2027 · WAR
BAT: +0.1 runs (wOBA-derived runs vs avg)+0BATRUN: +1.6 runs (SB/CS + UBR baserunning)+2RUNFLD: -0.2 runs (Defensive runs vs avg)-0FLDPOS: +0.8 runs (Positional adjustment)+1POSREP: +5.2 runs (Replacement-level credit)+5REPTotal WAR: +0.40+0.4WAR
0.00.51.00.00.20.227282930313233343536
━ projected WAR━ paid WAR ($/8M) surplus deficit+$1M ctrl surplus
Tools · ContractCON 60 / POW 45
Toolsscout grade · Statcast %ile · 2024-2026
CONTACT60
xAVG
100.187
POWER45
Barrel%
599.6
Avg EV
1686.5
Bat Spd
3669.9
EYE55
scouting grade only
SPEED45
Sprint
6628.1
Contract ESTIMATED · service-time + WAR-based estimator (needs verification)
Status   Pre-Arb
MLB Debut   2022
Service   0.842 yrs.days
Team Control Through   2032
First FA Year   2033
YearStatusSalary Proj WAR Value Surplus
2027Pre-Arb$0.8M+0.0$0.2M+$0.0M (cut)
2028Pre-Arb$0.8M+0.2$0.7M+$0.0M
2029Pre-Arb$0.8M+0.2$0.7M+$0.0M
2030Extbeyond projection horizon · no WAR estimate
2031Extbeyond projection horizon · no WAR estimate
2032Extbeyond projection horizon · no WAR estimate
Totals $2M $2M +$0.0M

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.

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)
201718 ROKACL D-backs — 201178 48980 19472 72 270347410757 140361 239 335 39 — — — — — —
201819 ROKMissoula Osprey — 255226 741714 26341 20 327399465864 137368 1310 383 67 — — — — — —
201920 AKane County Cougars — 438385 1011847 47812 44 262346384730 122312 1811 328 59 — — — — — —
202122 AAAmarillo Sod Poodles — 279237 666217 39732 72 278385536921 257331 2614 402 84 — — — — — —
202122 A+Hillsboro Hops — 127111 35505 11253 92 315392495887 180361 209 388 85 — — — — — —
202122 INTLSalt River Rafters — 6455 13302 7161 00 236333400733 164289 2511 326 107 — — — — — —
202223 MLBArizona Diamondbacks — 9483 18221 8231 00 217293325619 108279 249 276 67 -4 +0 +1 +2 +2 0.1
202223 AAAReno Aces — 394330 861437 54763 84 261370385754 124311 1914 339 81 — — — — — —
202324 MLBArizona Diamondbacks — 2924 4100 461 00 167310208519 42222 2114 259 58 -1 +0 +1 +2 +1 0.2
202324 AAALas Vegas Aviators — 463374 1152485 76819 33 307436455890 147377 1716 398 109 — — — — — —
202425 MLBPhiladelphia Phillies — 2621 4101 470 10 190320381701 190214 2715 306 90 -0 +0 +1 +2 +1 0.3
202425 AAALehigh Valley IronPigs — 463389 10631113 60848 42 272381458838 185312 1813 370 94 — — — — — —
202526 MLBLos Angeles Dodgers — 3229 2100 281 00 69156103260 3495 256 135 -19 -5 +0 -1 +1 +1 -0.3
202526 AAABuffalo Bisons — 384328 921718 435510 41 280381412792 131313 1411 357 82 — — — — — —
202627 MLBSan Francisco Giants — 4943 5100 5151 00 116224140364 23179 3110 186 13 -5 +0 +0 +1 +1 -0.3
202627 AAARochester Red Wings — 273230 671719 33388 60 291399491890 200315 1412 393 99 — — — — — —
▸ Career Totals (raw MLB only — historical actual)
MLB Career— — 230200 33622 23594 10 165264245509 80218 2610 239 48 -14 +0 +2 +8 +5 0.1
▸ Career — adjusted (every ACTUAL line translated to park/league-neutral MLB equivalents)
201718 ROK MLEACL D-backs — 201185 34650 12682 72 184241270511 86280 346 226 39 — — — — — —
201819 ROK MLEMissoula Osprey — 255236 551113 16491 20 233285326611 93275 196 267 67 — — — — — —
201920 A MLEKane County Cougars — 438403 841536 291112 44 208265305570 97267 257 256 59 — — — — — —
202122 AA MLEAmarillo Sod Poodles — 279249 535210 27942 72 213295369664 157293 3410 293 84 — — — — — —
202122 A+ MLEHillsboro Hops — 127114 27304 8353 92 237304368672 132291 286 294 85 — — — — — —
202223 MLB MLEArizona Diamondbacks — 9483 18221 8231 00 217293325619 108279 249 267 67 -4 +0 +1 +2 +2 0.1
202223 AAA MLEReno Aces — 394346 791235 38913 84 228310324634 95282 2310 288 81 — — — — — —
202324 MLB MLEArizona Diamondbacks — 2924 4100 461 00 167310208519 42222 2114 254 58 -1 +0 +1 +2 +1 0.2
202324 AAA MLELas Vegas Aviators — 463400 1071974 50959 33 268362380742 112333 2111 330 109 — — — — — —
202425 MLB MLEPhiladelphia Phillies — 2621 4101 470 10 190320381701 190214 2715 302 90 -0 +0 +1 +2 +1 0.3
202425 AAA MLELehigh Valley IronPigs — 463408 9727110 41998 42 238319382702 145278 219 307 94 — — — — — —
202526 MLB MLELos Angeles Dodgers — 3229 2100 281 00 69156103260 3495 256 139 -19 -5 +0 -1 +1 +1 -0.3
202526 AAA MLEBuffalo Bisons — 384341 791217 306710 41 232312334647 103265 178 289 82 — — — — — —
202627 MLB MLESan Francisco Giants — 4943 5100 5151 00 116224140364 23179 3110 187 13 -5 +0 +0 +1 +1 -0.3
202627 AAA MLERochester Red Wings — 273241 581416 22468 60 241325382706 141270 178 314 99 — — — — — —
201718 ROK MLEACL D-backs — 201185 34650 12682 72 184241270511 86286 346 226 39 — — — — — —
201718 ROK RAWACL D-backs — 201178 48980 19472 72 270347410757 140361 239 335 39 — — — — — —
201819 ROK MLEMissoula Osprey — 255236 551113 16491 20 233285326611 93280 196 267 67 — — — — — —
201819 ROK RAWMissoula Osprey — 255226 741714 26341 20 327399465864 137368 1310 383 67 — — — — — —
201920 A MLEKane County Cougars — 438403 841536 291112 44 208265305570 97269 257 256 59 — — — — — —
201920 A RAWKane County Cougars — 438385 1011847 47812 44 262346384730 122312 1811 328 59 — — — — — —
202122 AA MLE3 teams — 470420 939217 401496 164 221298374672 152295 329 293 85 — — — — — —
202122 AA RAW3 teams — 470403 11414224 571146 164 283380506886 223335 2412 388 85 — — — — — —
202223 AAA MLE2 teams — 488429 971447 461144 84 226307326633 100284 239 284 78 — — — — — —
202223 AAA RAW2 teams — 488413 1041658 62994 84 252355373728 121305 2013 327 78 — — — — — —
202324 AAA MLE2 teams — 492424 1112074 5410110 33 262359370729 108331 2111 326 106 — — — — — —
202324 AAA RAW2 teams — 492398 1192585 808710 33 299428440868 141368 1816 390 106 — — — — — —
202425 AAA MLE2 teams — 489429 10128111 451068 52 235320382702 147282 229 307 94 — — — — — —
202425 AAA RAW2 teams — 489410 11032114 64918 52 268378454831 185308 1913 367 94 — — — — — —
202526 AAA MLE2 teams — 416370 821417 327511 41 222303322624 100258 188 277 74 — — — — — —
202526 AAA RAW2 teams — 416357 941818 456311 41 263363387750 123298 1511 340 74 — — — — — —
202627 AAA MLE2 teams — 322284 631516 27619 60 222309345654 123261 198 295 86 — — — — — —
202627 AAA RAW2 teams — 322273 721819 38539 60 264372436808 172297 1612 361 86 — — — — — —
201718 ROK MLEACL D-backs — 201185 34650 12682 72 184241270511 86280 346 226 39 — — — — — —
201819 ROK MLEMissoula Osprey — 255236 551113 16491 20 233285326611 93275 196 267 67 — — — — — —
201920 A MLEKane County Cougars — 438404 841536 291112 44 208265304569 97267 257 256 59 — — — — — —
202122 AA MLE3 teams — 470421 939217 401496 164 221298373671 152292 329 293 85 — — — — — —
202223 AAA MLE2 teams — 488435 971447 461144 84 223307322629 99281 239 284 78 — — — — — —
202324 AAA MLE2 teams — 492425 1112074 5410110 33 261359369728 108326 2111 326 106 — — — — — —
202425 AAA MLE2 teams — 489433 10128111 451068 52 233320379698 145275 229 307 94 — — — — — —
202526 AAA MLE2 teams — 416370 821417 327511 41 222303322624 100252 188 277 74 — — — — — —
202627 AAA MLE2 teams — 322283 631516 27619 60 223309346656 124256 198 295 86 — — — — — —
▸ Model inputs — neutral MLE (past 3 seasons)
202425 AAA MLE2 teams — 489433 10128111 451068 52 233320379698 145275 229 307 94 — — — — — —
202526 AAA MLE2 teams — 416370 821417 327511 41 222303322624 100252 188 277 74 — — — — — —
202627 AAA MLE2 teams — 322283 631516 27619 60 223309346656 124256 198 295 86 — — — — — —
▸ 2027 season
▸ 2027 — full MLE projection (neutral park, full availability)
202728 MLB MLEWSH 10% 372330 7715111 31738 163 236316391707 155267 208 316 100 +0 +2 -0 +1 +8 0.4
▸ 2027 — real world (MLB)
202728 MLB CTXWSH 10% 2422 5101 250 10 236316391707 155268 218 316 100 +0 +0 -0 +0 +1 0.1
▸ Career projection (2028+) — MLB context, MLB playing time (PA × MLB%)
202829 MLB MLEWSH 33% 266237 561118 22535 102 233313384697 151266 208 312 98 -1 +1 -2 +1 +6 0.6
202930 MLB MLEWSH 46% 268239 561118 22545 92 230309375685 146264 208 307 94 -2 +1 -2 +1 +6 0.4
202829 MLB CTXWSH 33% 8778 19403 7172 31 233313384697 150266 208 312 98 -0 +0 -1 +0 +2 0.2
202930 MLB CTXWSH 46% 123110 24503 10252 41 230310375685 145264 208 307 94 -1 +0 -1 +0 +3 0.2
▸ Career Totals
▸ Career totals — MLB only (actual + projected)
Career— A+C — 440388 761528 401018 82 196284307591 111240 239 272 83 -15 +1 +0 +9 +10 0.4
/ 162G— A+C — 650573 11222312 5914912 123 195284307591 112239 239 272 83 -23 +1 +1 +13 +14 0.6
Career— MLE — 43433867 8821642884 36598768 8426 228306350656 122281 238 291 83 -17 +4 -2 +11 +22 1.7
/ 162G— MLE — 650579 13325413 5514810 134 230308354662 124283 238 291 83 -11 +2 -1 +7 +14 1.1

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 AAARochester Red Wings · 273 PAwOBA .383 → .314 (−69)K% 13.9% → 16.7%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA13.92%÷1.000×1.200——16.70%
BB% (unintentional) /PA11.72%÷1.000×0.690—×0.9928.02%
HBP% /PA2.93%—×0.940—×0.9922.73%
Singles /BIP20.83%÷1.000×0.930×0.973×0.99218.70%
Doubles /BIP8.85%÷1.000×0.830×0.973×0.9927.09%
Triples /BIP0.52%÷1.000×0.970×0.973×0.9920.49%
Home runs /BIP4.69%÷1.000×0.700—×0.9923.25%

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 28 vs a level average of 27.2 → −0.8% on BB/HBP/hit rates (0.8 yr older than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.973.

Result: wOBA .383 → .314; ISO .200 → .154; BABIP .315 → .270. 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 AAABuffalo Bisons · 384 PAwOBA .351 → .289 (−62)K% 14.3% → 17.4%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA14.32%÷0.988×1.200——17.40%
BB% (unintentional) /PA11.20%÷0.984×0.690—×1.0037.87%
HBP% /PA2.60%—×0.940—×1.0032.46%
Singles /BIP24.18%÷1.007×0.930×0.950×1.00321.27%
Doubles /BIP6.23%÷1.098×0.830×0.950×1.0034.49%
Triples /BIP0.37%÷0.986×0.970×0.950×1.0030.34%
Home runs /BIP2.93%÷0.847×0.700—×1.0032.43%

Factors used: league row International League. Park (home-season share, regressed): HR 69, 1B 101, 2B 120, 3B 97, K 98, BB 97 — applied at half strength. Age: age 27 vs a level average of 27.2 → +0.3% on BB/HBP/hit rates (0.2 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.950.

Result: wOBA .351 → .289; ISO .131 → .105; BABIP .313 → .265. 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 AAALehigh Valley IronPigs · 463 PAwOBA .365 → .307 (−58)K% 18.1% → 21.3%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA18.14%÷1.022×1.200——21.30%
BB% (unintentional) /PA12.74%÷1.021×0.690—×1.0188.76%
HBP% /PA1.73%—×0.940—×1.0181.65%
Singles /BIP20.00%÷0.985×0.930×0.966×1.01818.56%
Doubles /BIP10.16%÷0.960×0.830×0.966×1.0188.64%
Triples /BIP0.33%÷1.150×0.970×0.966×1.0180.27%
Home runs /BIP4.26%÷0.989×0.700—×1.0183.07%

Factors used: league row International League. Park (home-season share, regressed): HR 98, 1B 97, 2B 92, 3B 130, K 104, BB 104 — applied at half strength. Age: age 26 vs a level average of 27.2 → +1.8% on BB/HBP/hit rates (1.2 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.966.

Result: wOBA .365 → .307; ISO .185 → .149; BABIP .312 → .278. 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).

2023 AAALas Vegas Aviators · 463 PAwOBA .391 → .330 (−61)K% 17.5% → 20.6%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA17.49%÷1.017×1.200——20.63%
BB% (unintentional) /PA15.98%÷1.055×0.690—×1.03310.80%
HBP% /PA1.94%—×0.940—×1.0331.89%
Singles /BIP26.62%÷0.993×0.930×0.968×1.03324.92%
Doubles /BIP8.19%÷1.124×0.830×0.968×1.0336.05%
Triples /BIP2.73%÷1.133×0.970×0.968×1.0332.34%
Home runs /BIP1.71%÷0.996×0.700—×1.0331.24%

Factors used: league row International League. Park (home-season share, regressed): HR 99, 1B 99, 2B 125, 3B 127, K 103, BB 111 — applied at half strength. Age: age 25 vs a level average of 27.2 → +3.3% on BB/HBP/hit rates (2.2 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.968.

Result: wOBA .391 → .330; ISO .147 → .119; BABIP .377 → .333. 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).

2022 AAAReno Aces · 394 PAwOBA .336 → .288 (−48)K% 19.3% → 23.1%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA19.29%÷1.004×1.200——23.05%
BB% (unintentional) /PA13.71%÷1.020×0.690—×1.0489.72%
HBP% /PA0.76%—×0.940—×1.0480.75%
Singles /BIP24.41%÷1.025×0.930×0.975×1.04822.64%
Doubles /BIP5.51%÷0.996×0.830×0.975×1.0484.70%
Triples /BIP1.18%÷1.100×0.970×0.975×1.0481.06%
Home runs /BIP2.76%÷0.965×0.700—×1.0482.10%

Factors used: league row International League. Park (home-season share, regressed): HR 93, 1B 105, 2B 99, 3B 120, K 101, BB 104 — 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.975.

Result: wOBA .336 → .288; ISO .124 → .104; BABIP .311 → .282. 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).

2021 AAAmarillo Sod Poodles · 279 PAwOBA .391 → .293 (−98)K% 26.2% → 33.8%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA26.16%÷0.946×1.220——33.75%
BB% (unintentional) /PA13.62%÷0.992×0.690—×1.0279.73%
HBP% /PA0.72%—×0.850—×1.0270.63%
Singles /BIP25.00%÷1.025×0.940×0.986×1.02723.21%
Doubles /BIP3.66%÷1.034×0.870×0.986×1.0273.12%
Triples /BIP1.22%÷0.945×0.920×0.986×1.0271.20%
Home runs /BIP10.37%÷1.271×0.780—×1.0276.53%

Factors used: level-wide AA factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 154, 1B 105, 2B 107, 3B 89, K 89, BB 98 — 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). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.986.

Result: wOBA .391 → .293; ISO .257 → .165; BABIP .331 → .293. 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).

2021 A+Hillsboro Hops · 127 PAwOBA .384 → .294 (−90)K% 19.7% → 27.4%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA19.69%÷0.970×1.350——27.41%
BB% (unintentional) /PA8.66%÷1.011×0.710—×0.9986.07%
HBP% /PA2.36%—×0.810—×0.9981.91%
Singles /BIP29.07%÷1.033×0.910×0.970×0.99824.78%
Doubles /BIP5.81%÷1.304×0.830×0.970×0.9983.58%
Triples /BIP0.00%÷1.108×0.820×0.970×0.9980.00%
Home runs /BIP5.81%÷0.972×0.830—×0.9984.96%

Factors used: level-wide A+ factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 94, 1B 107, 2B 161, 3B 122, K 94, BB 102 — 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.970.

Result: wOBA .384 → .294; ISO .180 → .136; BABIP .361 → .291. 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).

2019 AKane County Cougars · 438 PAwOBA .321 → .256 (−65)K% 18.5% → 25.4%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA18.49%÷0.990×1.360——25.42%
BB% (unintentional) /PA10.27%÷1.083×0.690—×1.0156.65%
HBP% /PA0.46%—×0.780—×1.0150.36%
Singles /BIP23.68%÷1.038×0.920×0.950×1.01520.24%
Doubles /BIP5.92%÷0.920×0.830×0.950×1.0155.15%
Triples /BIP1.32%÷1.056×0.910×0.950×1.0151.09%
Home runs /BIP2.30%÷0.875×0.800—×1.0152.14%

Factors used: level-wide A factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 75, 1B 108, 2B 84, 3B 111, K 98, BB 117 — applied at half strength. Age: age 21 vs a level average of 22.0 → +1.5% on BB/HBP/hit rates (1.0 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.950.

Result: wOBA .321 → .256; ISO .122 → .106; BABIP .312 → .267. 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).

Not traceable per stint: some stints lack the counting stats the component translation needs. Level-wide factors that apply instead — .