Bobby Witt Jr.

SS Kansas City Royals
Age 27 R/R 6'1" / 200 lbs MLB HR -15%K -8% Svc 5.000 · Ctrl thru 2034
Overview
MLB40-MANExtFA 2035
YearAgeLvl / TeamPAAVG/OBP/SLGHRSBwRC+WAR
202424MLBKC709.332/.394/.588323117110.1
202525MLBKC687.295/.354/.50123381377.9
202626MLBKC632.281/.361/.44118451235.0
2027PROJ27MLBKC594.292/.351/.48621451396.4
2028PROJ28MLBKC614.290/.349/.48222421376.3
2029PROJ29MLBKC614.286/.345/.47421381345.9
Last 3 seasons WAR 23.1  ·  Next 3 projected WAR 18.6Projected rows: MLB playing time only, park and league context applied.
ContractCONFIRMED
Control thru2034Service5.000First FA2035Options1
2027Ext$19M2028Ext$30M2029Ext$30M2030Ext$30M2031Ext$30M2032Ext$30M2033Ext$30M2034Ext$30M
Skills · percentileStatcast 2024-2026
xwOBA90
Avg EV90
Speed90
Barrel%81
Bat Spd69
Form.288/.356/.456 ▼ rolling true talent (60d window) · proj .296/.352/.499
CompsCarlos Gómez (age 28) · Trea Turner (age 27) · Jacoby Ellsbury (age 28)
2027 FULL-SEASON PROJECTIONstats below = full-season projection
showingPROJ
wRC+†vL 142139vR 129
AVG/OBP/SLG.292 / .351 / .486
PA594
HR21
SB45
K%17
BB%7
BABIP322
ISO194
MLB%100%
Value2027 · WAR
BAT: +27.3 runs (wOBA-derived runs vs avg)+27BATRUN: +9.4 runs (SB/CS + UBR baserunning)+9RUNFLD: +9.2 runs (Defensive runs vs avg)+9FLDPOS: +6.4 runs (Positional adjustment)+6POSREP: +12.9 runs (Replacement-level credit)+13REPTotal WAR: +6.70+6.7WAR
0.03.57.06.76.35.95.44.74.02.71.727282930313233343536
━ projected WAR━ paid WAR ($/8M) surplus deficit━ post-control+$70M ctrl surplus
Tools · Recent Form · Splits · ContractCON 60 / POW 60
Toolsscout grade · Statcast %ile · 2024-2026
CONTACT60
xAVG
900.299
POWER60
Barrel%
8112.8
Avg EV
9092.7
Bat Spd
6973.3
EYE45
scouting grade only
SPEED60
Sprint
9030.1
Recent Formrolling true talent ⓘ
K%16%▲16% over 114 PA (60d) · proj 17%
BB%9%▲11% over 114 PA (60d) · proj 7%
ISO.168▼▼.110 over 100 AB (60d) · proj .204
HR/BB4.0%▼2.4% over 83 BBE (60d) · proj 5.2%
BABIP.321·.284 over 81 BIP (60d) · proj .325
SLASH.288/.356/.456▼proj .296/.352/.499
Platoon Splits2024-2026 · 1510 PA
vs LHP
vs RHP
Edge
PA
315
1195
—
wRC+
138
149
▶R
wOBA
373
388
▶R
ISO
171
233
▶▶R
BABIP
383
335
◀L
K%
16.2%
16.8%
◀L
BB%
4.8%
7.1%
▶▶R
Contract CONFIRMED · hand-curated extension
Status   Arb-3
MLB Debut   2022
Service   5.000 yrs.days
Team Control Through   2034
First FA Year   2035
OPT
YearStatusSalary Proj WAR Value Surplus
2027Ext$19M+6.7$80M+$61M
2028Ext$30M+6.3$70M+$43M
2029Ext$30M+5.9$61M+$37M
2030Ext$30M+5.4$52M+$30M
2031Ext$30M+4.7$42M+$22M
2032Ext$30M+4.0$30M+$12M
2033Ext$30M+2.7$14M-$2M
2034Ext$30M+1.7$8M-$6M
Totals $229M $357M +$197M
Options · projected decision
2030PLAYER OPT$30.0M / $0.0M buyoutDECLINE
Why some years run red
On long-term deals the salary is locked in regardless of how the player ages. Late years are red whenever projected production drops below the AAV — that's expected, not a sign the deal is bad. The honest scorecard is the Net Surplus over the whole contract, not any single year.

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)
201919 ROKAZL Royals — 180164 43251 13351 91 262320354674 91323 197 301 26 — — — — — —
202121 AAAOmaha Storm Chasers — 285253 7224017 26642 153 285356581937 296314 229 399 95 — — — — — —
202121 AANorthwest Arkansas Naturals — 279244 7211416 25676 148 295375570944 275339 249 404 118 — — — — — —
202222 MLBKansas City Royals — 632591 15031620 301356 307 254297428725 174295 215 317 103 +2 +3 -5 +7 +14 2.1
202323 MLBKansas City Royals — 694641 177281130 401214 4915 276323495817 218295 176 353 129 +24 +4 +13 +7 +15 6.5
202424 MLBKansas City Royals — 709636 211451132 571068 3112 332394588982 256354 158 422 171 +60 +1 +15 +8 +15 10.1
202525 MLBKansas City Royals — 687623 18447623 491258 389 295354501855 205334 187 372 137 +30 +4 +21 +7 +15 7.9
202626 MLBKansas City Royals — 632558 15733118 671093 458 281361441802 159320 1711 357 123 +17 +6 +6 +7 +14 5.0
▸ Career Totals (raw MLB only — historical actual)
MLB Career— — 33543049 87918435123 24359629 19351 288347493839 204320 187 365 133 +133 +18 +51 +36 +73 31.7
▸ Career — adjusted (every ACTUAL line translated to park/league-neutral MLB equivalents)
201919 ROK MLEAZL Royals — 180169 31131 8501 91 183225243467 59248 284 207 26 — — — — — —
202121 AAA MLEOmaha Storm Chasers — 285261 5920012 18782 153 226281441722 215264 276 309 95 — — — — — —
202121 AA MLENorthwest Arkansas Naturals — 279251 659314 18796 148 259324486810 227308 286 343 118 — — — — — —
202222 MLB MLEKansas City Royals — 632593 15331622 281356 307 258298442740 184295 214 321 103 +2 +3 -5 +7 +14 2.1
202323 MLB MLEKansas City Royals — 694642 179281032 391214 4915 279324503827 224295 176 359 129 +24 +4 +13 +7 +15 6.5
202424 MLB MLEKansas City Royals — 709645 214451035 481068 3112 332385595981 264354 157 421 171 +60 +1 +15 +8 +15 10.1
202525 MLB MLEKansas City Royals — 687631 18747625 411258 389 296347509856 212334 186 370 137 +30 +4 +21 +7 +15 7.9
202626 MLB MLEKansas City Royals — 632570 15933119 551093 458 279346440786 161320 179 349 123 +17 +6 +6 +7 +14 5.0
201919 ROK MLEAZL Royals — 180169 31131 8501 91 183225243467 59250 284 207 26 — — — — — —
201919 ROK RAWAZL Royals — 180164 43251 13351 91 262320354674 91323 197 301 26 — — — — — —
202121 AAA MLE2 teams — 564511 12429326 371578 2911 243304464768 221293 287 326 107 — — — — — —
202121 AAA RAW2 teams — 564497 14435433 511318 2911 290365575941 286326 239 402 107 — — — — — —
202222 MLB MLEKansas City Royals — 632593 15331622 281356 307 258298442740 184297 214 321 103 +2 +3 -5 +7 +14 2.1
202222 MLB RAWKansas City Royals — 632591 15031620 301356 307 254297428725 174295 215 317 103 +2 +3 -5 +7 +14 2.1
202323 MLB MLEKansas City Royals — 694642 179281032 391214 4915 279324503827 224296 176 359 129 +24 +4 +13 +7 +15 6.5
202323 MLB RAWKansas City Royals — 694641 177281130 401214 4915 276323495817 218295 176 353 129 +24 +4 +13 +7 +15 6.5
202424 MLB MLEKansas City Royals — 709645 214451035 481068 3112 332385595981 264350 157 421 171 +60 +1 +15 +8 +15 10.1
202424 MLB RAWKansas City Royals — 709636 211451132 571068 3112 332394588982 256354 158 422 171 +60 +1 +15 +8 +15 10.1
202525 MLB MLEKansas City Royals — 687631 18747625 411258 389 296347509856 212332 186 370 137 +30 +4 +21 +7 +15 7.9
202525 MLB RAWKansas City Royals — 687623 18447623 491258 389 295354501855 205334 187 372 137 +30 +4 +21 +7 +15 7.9
202626 MLB MLEKansas City Royals — 632570 15933119 551093 458 279346440786 161314 179 349 123 +17 +6 +6 +7 +14 5.0
202626 MLB RAWKansas City Royals — 632558 15733118 671093 458 281361441802 159320 1711 357 123 +17 +6 +6 +7 +14 5.0
201919 ROK MLEAZL Royals — 180169 31131 8501 91 183225243467 59248 284 207 26 — — — — — —
202121 AAA MLE2 teams — 564514 12429326 371578 2911 241304461765 220286 287 326 107 — — — — — —
202222 MLB MLEKansas City Royals — 632593 15331622 281356 307 258298442740 184295 214 321 103 — — — — — —
202323 MLB MLEKansas City Royals — 694646 179281032 391214 4915 277324500824 223295 176 359 129 — — — — — —
202424 MLB MLEKansas City Royals — 709647 214451035 481068 3112 331385594979 263354 157 421 171 — — — — — —
202525 MLB MLEKansas City Royals — 687633 18747625 411258 389 295347507854 212334 186 370 137 — — — — — —
202626 MLB MLEKansas City Royals — 632569 15933119 551093 458 279346441787 162320 179 349 123 — — — — — —
▸ Model inputs — neutral MLE (past 3 seasons)
202424 MLB MLEKansas City Royals — 709647 214451035 481068 3112 331385594979 263354 157 421 171 — — — — — —
202525 MLB MLEKansas City Royals — 687633 18747625 411258 389 295347507854 212334 186 370 137 — — — — — —
202626 MLB MLEKansas City Royals — 632569 15933119 551093 458 279346441787 162320 179 349 123 — — — — — —
▸ 2027 season
▸ 2027 — full MLE projection (neutral park, full availability)
202727 MLB MLEKC 100% 636578 17134525 471076 487 296355499854 203325 177 373 139 +29 +7 +10 +7 +14 6.7
▸ 2027 — real world (MLB)
202727 MLB CTXKC 100% 594540 15832521 441005 456 292351486837 195322 177 366 139 +27 +7 +9 +6 +13 6.4
▸ Career projection (2028+) — MLB context, MLB playing time (PA × MLB%)
202828 MLB MLEKC 100% 614558 16333423 461055 426 294353495848 201324 177 370 137 +27 +6 +9 +7 +13 6.3
202929 MLB MLEKC 100% 614559 16233423 451075 385 290349487836 197321 177 366 134 +25 +6 +8 +7 +13 5.9
203030 MLB MLEKC 100% 613558 15932422 451095 325 286344478822 191318 187 360 130 +22 +4 +7 +7 +13 5.4
203131 MLB MLEKC 100% 590538 15230421 431074 244 282339467807 186315 187 354 125 +18 +3 +6 +6 +13 4.7
203232 MLB MLEKC 100% 568519 14228319 401054 163 276332454786 178311 187 345 120 +13 +2 +5 +6 +12 4.0
203333 MLB MLEKC 100% 468429 11522315 33903 82 268324436760 168305 197 335 113 +7 +1 +3 +5 +10 2.7
203434 MLB MLEKC 100% 411378 9718212 28822 31 258313415728 157297 207 321 104 +2 +0 +1 +4 +9 1.7
203535 MLB MLEKC 100% 342315 781429 22712 01 247300391692 144288 216 307 94 -3 -0 -0 +4 +7 0.8
202828 MLB CTXKC 100% 614558 16333522 461055 426 290349482831 192321 177 364 137 +27 +6 +9 +7 +13 6.3
202929 MLB CTXKC 100% 614559 16033421 451075 385 286345474820 188319 177 359 134 +25 +6 +8 +7 +13 5.9
203030 MLB CTXKC 100% 613558 15832421 451095 325 282341465806 183315 187 353 130 +22 +4 +7 +7 +13 5.4
203131 MLB CTXKC 100% 590538 14930419 431074 244 278336455791 178312 187 347 125 +18 +3 +6 +6 +13 4.7
203232 MLB CTXKC 100% 568519 14228418 401054 163 272329442771 170308 187 339 120 +13 +2 +5 +6 +12 4.0
203333 MLB CTXKC 100% 468429 11422314 33903 82 264320425746 161302 197 329 113 +7 +1 +3 +5 +10 2.7
203434 MLB CTXKC 100% 411378 9518211 28822 31 255310405714 150295 207 316 104 +2 +0 +1 +4 +9 1.7
203535 MLB CTXKC 100% 342315 781429 22712 01 244297382679 138286 216 302 94 -3 -0 -0 +4 +7 0.8
▸ Career Totals
▸ Career totals — MLB only (actual + projected)
Career— A+C — 75746903 193839463258 545137259 35678 281339468807 187315 187 353 124 +244 +40 +91 +81 +164 63.2
/ 162G— A+C — 650592 16634522 471185 317 280339466805 186315 187 353 124 +21 +3 +8 +7 +14 5.4
Career— MLE — 89128155 227445669327 602167973 43996 279334472806 193313 197 352 124 +271 +47 +100 +88 +177 69.6
/ 162G— MLE — 650595 16633524 441225 327 279334472806 193313 197 352 124 +22 +4 +8 +7 +14 5.5

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.

2021 AAAOmaha Storm Chasers · 285 PAwOBA .391 → .309 (−82)K% 22.5% → 27.4%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA22.46%÷0.985×1.200——27.37%
BB% (unintentional) /PA8.77%÷0.990×0.690—×1.0506.42%
HBP% /PA0.70%—×0.940—×1.0500.69%
Singles /BIP16.40%÷1.056×0.930×0.950×1.05014.40%
Doubles /BIP12.70%÷0.978×0.830×0.950×1.05010.75%
Triples /BIP0.00%÷0.936×0.920×0.950×1.0500.00%
Home runs /BIP8.99%÷1.027×0.700—×1.0506.44%

Factors used: level-wide AAA factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 105, 1B 111, 2B 96, 3B 87, K 97, BB 98 — applied at half strength. Age: age 21 vs a level average of 27.2 → +5.0% on BB/HBP/hit rates (6.2 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.950.

Result: wOBA .391 → .309; ISO .296 → .222; BABIP .314 → .264. 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 AANorthwest Arkansas Naturals · 279 PAwOBA .399 → .343 (−56)K% 24.0% → 28.3%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA24.01%÷1.035×1.220——28.31%
BB% (unintentional) /PA8.96%÷0.988×0.690—×1.0506.57%
HBP% /PA2.15%—×0.850—×1.0501.92%
Singles /BIP23.16%÷0.980×0.940×0.959×1.05022.38%
Doubles /BIP6.21%÷1.117×0.870×0.959×1.0504.87%
Triples /BIP2.26%÷1.150×0.920×0.959×1.0501.82%
Home runs /BIP9.04%÷0.957×0.780—×1.0507.74%

Factors used: level-wide AA factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 91, 1B 96, 2B 123, 3B 130, K 107, BB 98 — applied at half strength. Age: age 21 vs a level average of 24.8 → +5.0% on BB/HBP/hit rates (3.8 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.959.

Result: wOBA .399 → .343; ISO .275 → .229; BABIP .339 → .308. 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 ROKAZL Royals · 180 PAwOBA .297 → .207 (−90)K% 19.4% → 28.0%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA19.44%÷1.000×1.440——28.00%
BB% (unintentional) /PA7.22%÷1.000×0.620—×1.0084.51%
HBP% /PA0.56%—×0.720—×1.0080.40%
Singles /BIP27.13%÷1.000×0.820×0.950×1.00821.29%
Doubles /BIP1.55%÷1.000×0.720×0.950×1.0081.07%
Triples /BIP3.88%÷1.000×0.720×0.950×1.0082.67%
Home runs /BIP0.78%÷1.000×0.780—×1.0080.61%

Factors used: level-wide ROK factors (no league-specific row for this league/era). Park (home-season share, regressed): no park row on file (treated as neutral) — applied at half strength. Age: age 19 vs a level average of 19.5 → +0.8% on BB/HBP/hit rates (0.5 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.950.

Result: wOBA .297 → .207; ISO .091 → .061; BABIP .323 → .248. 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).