Cam Sanders

P Norfolk Tides
Age 30 RHP 6'2" / 215 lbs AAA peak 0.5 · 2027
Overview
AAARP40-MANROOKIE
YearAgeLvl / TeamGGSIPERAFIPK%BB%WARMLE rates
202427MIX2 levels491545.834.6729.6%17.3%—K 24.9% · BB 16.0% · FIP 4.83
202528MIX3 levels470582.813.5027.8%12.7%0.7K 25.6% · BB 12.3% · FIP 3.50
202629MIX2 levels561603.903.0034.6%14.1%1.1K 31.9% · BB 13.4% · FIP 3.22
2027PROJ30MLBBAL860903.843.7633.7%14.3%0.9
2028PROJ81% MLB31MLBBAL690723.984.0431.8%14.0%0.4
2029PROJ85% MLB32MLBBAL550584.194.3130.3%13.9%0.2
Last 3 seasons WAR 1.8  ·  Next 3 projected WAR 1.5Projected rows: MLB playing time only, park and league context applied.
Contract
No contract data on file.
Skills · percentileStatcast 2026
K%90
FB Velo71
xwOBA vs60
Form2.95 ERA (proj 3.84) · K 32.1% (proj 33.7%) · BB 12.8% (proj 14.3%) · last 90d · 18 IP through Oct 27
Career WAR0.0 WAR median (P10 -0.0 / P90 1.2, comp-based) · star 0% · didn't stick 97%
CompsArmando Rivero (age 28) · Spencer Patton (age 28) · Jake Cousins (age 30)
2027 FULL-SEASON PROJECTIONrates below = full-season projection
showingPROJ
wRC+ AGAINSTvL 10597vR 88
ERA3.84
FIP3.76
K%33.7%
BB%14.3%
K-BB%19.4%
Proj IP121
Value2027 · WAR
Runs saved vs league avg · 121 IP
K: +21.5 runs (Runs saved by strikeouts vs lg-avg K%)+21KBB: -15.9 runs (Runs saved by walk suppression vs lg-avg BB%)-16BBCONTACT: +0.1 runs (Runs saved on contact quality (HR suppression) vs lg)+0CONTACTSTAM: +16.4 runs (Replacement credit for innings volume)+16STAMTotal WAR: +2.32 (121 IP)+2.3WAR
1.20.40.2272829
Grades · Statcast · Contract
Scouting Grades
STUF7575
CTRL2020
CMD5050
K†7070
Statcast Percentiles
FB Velo
p7196.0
Whiff%
p9037.0%
K%
p9030.5%
xwOBA vs
p600.302

Contract

No contract data on file. Pre-MLB players and minor-league free agents do not yet have salary projections — entries are added at first 40-man roster placement.

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 WAR & MLE are computed

Stats are park-neutral MLB equivalents. The "TEAM" column shows current org affiliation only — we do NOT project at that team's park.
Rates (K%, BB%, HR-BF) are park-stripped; MiLB stat lines are translated to their MLB-equivalent via per-level MLE factors.
WAR is computed from projected runs prevented vs a replacement pitcher (the marginal arm a team would call up if this pitcher were unavailable) — calibrated to the standard WAR scale.

YearAge LvlTeam GGSIPBF KBBHR GS%IP/G K%BB%K-BB%HR% ERAFIP WAR
▸ Career — actual stats, one row per year (as recorded, no adjustments)
▸ Career — adjusted (each season translated to a park/league-neutral MLB-equivalent line; levels combined per year)
▸ Model inputs — neutral MLE (past 3 seasons + 2027 so far)
201821ROK MLEAZL Cubs 210162300%0.733.3%50.0%-16.7%0.0%0.006.62—
201821ROK RAWAZL Cubs 210162300%0.733.3%50.0%-16.7%0.0%0.0010.60—
201922A MLESouth Bend Cubs21201014298453895%4.814.5%14.6%-0.1%2.7%2.945.18—
201922A RAWSouth Bend Cubs21201014298453895%4.819.6%12.4%7.2%1.9%2.944.04—
202124AA MLETennessee Smokies1818903861074416100%5.022.5%12.5%9.9%4.7%5.325.39—
202124AA RAWTennessee Smokies1818903861074416100%5.027.7%11.4%16.3%4.1%5.324.51—
202225MIX MLE2 levels351798429111601249%2.822.2%14.8%7.4%3.1%4.944.83—
202225MIX RAW2 levels351798429111601249%2.825.9%14.0%11.9%2.8%4.944.26—
202326AAA MLEIowa Cubs51065311976760%1.326.8%19.4%7.4%2.2%5.154.50—
202326AAA RAWIowa Cubs51065311976760%1.331.2%21.5%9.6%1.9%5.154.41—
202427MIX MLE2 levels49154260774582%1.124.9%16.0%8.9%3.3%5.834.83—
202427MIX MLE2 levels49154260774582%1.124.9%16.0%8.9%3.3%5.834.83—
202427MIX RAW2 levels49154260774582%1.129.6%17.3%12.3%3.1%5.834.67—
202528MIX MLE3 levels47058237663050%1.225.6%12.3%13.4%1.8%2.813.50+0.7
202528MIX MLE3 levels47058237663050%1.225.6%12.3%13.4%1.8%2.813.50+0.7
202528MIX RAW3 levels47058237663050%1.227.8%12.7%15.2%2.1%2.813.50+0.7
202629MIX MLE2 levels56160263913752%1.131.9%13.4%18.5%2.0%3.903.22+1.0
202629MIX MLE2 levels56160263913752%1.131.9%13.4%18.5%2.0%3.903.22+1.0
202629MIX RAW2 levels56160263913752%1.134.6%14.1%20.5%1.9%3.903.00+1.1
▸ Career totals (raw MLB only — as recorded)
MLB Career—34036165442430%1.126.7%14.5%12.1%1.8%5.253.74+0.3
▸ 2027 season — projected remainder (no 2027 stats recorded)
202730MLBBAL860903801285490%1.033.7%14.3%19.4%2.4%3.843.76+0.9
▸ Career projection (2028+) — MLB context, MLB playing time (IP × MLB%)
202831MLB MLEBAL8508937511952100%1.031.8%14.0%17.8%2.7%3.984.04+0.5
202932MLB MLEBAL65068286874080%1.030.3%13.9%16.4%3.0%4.194.31+0.2
202831MLB CTXBAL69072304974280%1.031.8%14.0%17.8%2.7%3.984.04+0.4
202932MLB CTXBAL55058245743470%1.130.3%13.9%16.4%3.0%4.194.31+0.2
▸ Career totals — MLB only (actual + projected)
Career— RAW1570166712214100180%1.130.1%14.1%16.0%2.6%4.333.76+1.6
/ 200 IP— RAW1900200860259121220%1.130.1%14.1%16.0%2.6%4.333.76+1.9
Career— MLE2785752623215393446821%1.923.2%14.8%8.4%2.9%4.384.63+1.1
/ 200 IP— MLE106222008832051312621%1.923.2%14.8%8.4%2.9%4.384.63+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 AAANorfolk Tides · 31 IPFIP 3.23 → 3.68 (+0.45)K% 38.6% → 33.2%
ComponentRawPark ÷Level factor ×= MLE
K% /BF38.64%—×0.86033.23%
BB% (unintentional) /BF13.64%—×0.90012.27%
HR / BF /BF3.03%÷1.000×1.1003.33%

Factors used: pitcher AAA level factors (Triple-A 2023+ robo-zone set: walks improve on promotion) — K ×0.86, BB ×0.90, HR ×1.10. Pitcher translation is level-wide (no per-league rows, no age adjustment); HR/BF is park-adjusted at half strength (park HR factor 100).

Result: FIP 3.23 → 3.68, computed from the rates in the table with the same formula before and after. The MLE line is not regressed to the mean — regression is applied when seasons are blended into a projection (how).

2025 AAAIndianapolis Indians · 27 IPFIP 2.83 → 3.27 (+0.45)K% 33.3% → 28.7%
ComponentRawPark ÷Level factor ×= MLE
K% /BF33.33%—×0.86028.67%
BB% (unintentional) /BF12.04%—×0.90010.83%
HR / BF /BF1.85%÷0.915×1.1002.23%

Factors used: pitcher AAA level factors (Triple-A 2023+ robo-zone set: walks improve on promotion) — K ×0.86, BB ×0.90, HR ×1.10. Pitcher translation is level-wide (no per-league rows, no age adjustment); HR/BF is park-adjusted at half strength (park HR factor 83).

Result: FIP 2.83 → 3.27, computed from the rates in the table with the same formula before and after. The MLE line is not regressed to the mean — regression is applied when seasons are blended into a projection (how).

2025 AAAltoona Curve · 24 IPFIP 2.97 → 3.77 (+0.80)K% 27.4% → 22.2%
ComponentRawPark ÷Level factor ×= MLE
K% /BF27.37%—×0.81022.17%
BB% (unintentional) /BF12.63%—×1.10013.89%
HR / BF /BF1.05%÷0.891×1.2001.42%

Factors used: pitcher AA level factors — K ×0.81, BB ×1.10, HR ×1.20. Pitcher translation is level-wide (no per-league rows, no age adjustment); HR/BF is park-adjusted at half strength (park HR factor 78).

Result: FIP 2.97 → 3.77, computed from the rates in the table with the same formula before and after. The MLE line is not regressed to the mean — regression is applied when seasons are blended into a projection (how).

2024 AAAIowa Cubs · 32 IPFIP 5.72 → 5.82 (+0.10)K% 28.7% → 24.7%
ComponentRawPark ÷Level factor ×= MLE
K% /BF28.74%—×0.86024.71%
BB% (unintentional) /BF22.41%—×0.90020.17%
HR / BF /BF4.02%÷1.079×1.1004.10%

Factors used: pitcher AAA level factors (Triple-A 2023+ robo-zone set: walks improve on promotion) — K ×0.86, BB ×0.90, HR ×1.10. Pitcher translation is level-wide (no per-league rows, no age adjustment); HR/BF is park-adjusted at half strength (park HR factor 116).

Result: FIP 5.72 → 5.82, computed from the rates in the table with the same formula before and after. The MLE line is not regressed to the mean — regression is applied when seasons are blended into a projection (how).

2024 AATennessee Smokies · 22 IPFIP 1.97 → 2.82 (+0.85)K% 31.4% → 25.4%
ComponentRawPark ÷Level factor ×= MLE
K% /BF31.40%—×0.81025.43%
BB% (unintentional) /BF6.98%—×1.1007.67%
HR / BF /BF1.16%÷0.854×1.2001.63%

Factors used: pitcher AA level factors — K ×0.81, BB ×1.10, HR ×1.20. Pitcher translation is level-wide (no per-league rows, no age adjustment); HR/BF is park-adjusted at half strength (park HR factor 71).

Result: FIP 1.97 → 2.82, computed from the rates in the table with the same formula before and after. The MLE line is not regressed to the mean — regression is applied when seasons are blended into a projection (how).

2023 AAAIowa Cubs · 65 IPFIP 4.25 → 4.50 (+0.24)K% 31.2% → 26.8%
ComponentRawPark ÷Level factor ×= MLE
K% /BF31.19%—×0.86026.82%
BB% (unintentional) /BF21.54%—×0.90019.39%
HR / BF /BF1.93%÷0.965×1.1002.20%

Factors used: pitcher AAA level factors (Triple-A 2023+ robo-zone set: walks improve on promotion) — K ×0.86, BB ×0.90, HR ×1.10. Pitcher translation is level-wide (no per-league rows, no age adjustment); HR/BF is park-adjusted at half strength (park HR factor 93).

Result: FIP 4.25 → 4.50, computed from the rates in the table with the same formula before and after. The MLE line is not regressed to the mean — regression is applied when seasons are blended into a projection (how).

2022 AAAIowa Cubs · 74 IPFIP 4.56 → 5.04 (+0.48)K% 22.8% → 20.1%
ComponentRawPark ÷Level factor ×= MLE
K% /BF22.80%—×0.88020.06%
BB% (unintentional) /BF14.89%—×1.05015.64%
HR / BF /BF2.74%÷0.996×1.1003.02%

Factors used: pitcher AAA level factors — K ×0.88, BB ×1.05, HR ×1.10. Pitcher translation is level-wide (no per-league rows, no age adjustment); HR/BF is park-adjusted at half strength (park HR factor 99).

Result: FIP 4.56 → 5.04, computed from the rates in the table with the same formula before and after. The MLE line is not regressed to the mean — regression is applied when seasons are blended into a projection (how).

2022 AATennessee Smokies · 24 IPFIP 3.10 → 4.13 (+1.03)K% 36.0% → 29.2%
ComponentRawPark ÷Level factor ×= MLE
K% /BF36.00%—×0.81029.16%
BB% (unintentional) /BF11.00%—×1.10012.10%
HR / BF /BF3.00%÷1.010×1.2003.56%

Factors used: pitcher AA level factors — K ×0.81, BB ×1.10, HR ×1.20. Pitcher translation is level-wide (no per-league rows, no age adjustment); HR/BF is park-adjusted at half strength (park HR factor 102).

Result: FIP 3.10 → 4.13, computed from the rates in the table with the same formula before and after. The MLE line is not regressed to the mean — regression is applied when seasons are blended into a projection (how).

Career Comps

Completed MLB careers (no pro action in 2+ yrs) whose totals — actual + projected — most resemble this player's. Pool: 2,161 pitcher careers (1,251 from 1990-2025 + 910 historical, 1901-2023), also matched on career-to-date at the same age. * Historical (Lahman) careers: rates era-adjusted to 2001-24 league levels; WAR is an OGILVIE proxy.

Player162sIP/yrK%BB%HR/9ERA
OGILVIE CAREER PROJECTION1.67831.6%14.2%0.984.12
Kyle Barraclough ('23)1.45628.2%13.9%0.993.86
Rod Scurry ('80-'88, 5 WAR*)2.35829.6%*13.6%*0.91*3.67*
Matt Mantei ('05)1.65428.0%14.1%0.844.07
Rex Brothers ('21)1.65427.6%13.5%0.984.08
Mark Littell ('73-'82, 7 WAR*)2.76630.7%*13.4%*0.74*3.75*
Mark Clear ('79-'90, 7 WAR*)4.08033.4%*15.2%*0.78*3.89*