Franklin Labour
| Year | Age | Lvl / Team | PA | AVG/OBP/SLG | HR | SB | wRC+ | WAR | MLE AVG/OBP/SLG |
|---|---|---|---|---|---|---|---|---|---|
| 2019 | 21 | AATL | 117 | .215/.282/.299 | 1 | 0 | 10 | — | .164/.214/.227 |
| 2021 | 23 | A+SF | 393 | .223/.362/.434 | 13 | 13 | 68 | — | .171/.288/.323 |
| 2022 | 24 | AASF | 238 | .177/.271/.340 | 7 | 4 | 26 | — | .134/.208/.250 |
Career Stats + Projections
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.
| Year | Age | Lvl | Team | MLB% | PA | AB | H | 2B | 3B | HR | BB | SO | HBP | SB | CS | AVG | OBP | SLG | OPS | ISO | BABIP | K% | BB% | wOBA | wRC+ | BAT | RUN | FLD | POS | REP | WAR |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ▸ Career — actual stats, one row per stint (as recorded, no adjustments) | |||||||||||||||||||||||||||||||
| 2016 | 18 | ROK | DSL Giants | — | 226 | 194 | 47 | 9 | 0 | 1 | 21 | 38 | 7 | 4 | 0 | 242 | 338 | 304 | 642 | 62 | 291 | 17 | 9 | 296 | 17 | — | — | — | — | — | — |
| 2017 | 19 | ROK | DSL Giants | — | 221 | 186 | 59 | 10 | 4 | 5 | 26 | 30 | 6 | 13 | 8 | 317 | 417 | 495 | 912 | 177 | 351 | 14 | 12 | 400 | 57 | — | — | — | — | — | — |
| 2018 | 20 | ROK | AZL Giants Black | — | 154 | 130 | 35 | 14 | 2 | 1 | 18 | 40 | 5 | 7 | 1 | 269 | 377 | 431 | 807 | 162 | 382 | 26 | 12 | 362 | 42 | — | — | — | — | — | — |
| 2019 | 21 | A | Augusta GreenJackets | — | 117 | 107 | 23 | 6 | 0 | 1 | 8 | 40 | 2 | 0 | 0 | 215 | 282 | 299 | 581 | 84 | 333 | 34 | 7 | 268 | 10 | — | — | — | — | — | — |
| 2021 | 23 | A+ | Eugene Emeralds | — | 393 | 318 | 71 | 16 | 6 | 13 | 65 | 123 | 5 | 13 | 8 | 223 | 362 | 434 | 796 | 211 | 312 | 31 | 17 | 353 | 68 | — | — | — | — | — | — |
| 2022 | 24 | AA | Richmond Flying Squirrels | — | 238 | 209 | 37 | 11 | 1 | 7 | 24 | 99 | 3 | 4 | 0 | 177 | 271 | 340 | 611 | 163 | 288 | 42 | 10 | 275 | 26 | — | — | — | — | — | — |
| ▸ Career — adjusted (every ACTUAL line translated to park/league-neutral MLB equivalents) | |||||||||||||||||||||||||||||||
| 2016 | 18 | ROK MLE | DSL Giants | — | 226 | 201 | 30 | 5 | 0 | 0 | 14 | 46 | 7 | 4 | 0 | 149 | 230 | 174 | 404 | 25 | 186 | 20 | 6 | 193 | 17 | — | — | — | — | — | — |
| 2017 | 19 | ROK MLE | DSL Giants | — | 221 | 194 | 37 | 6 | 2 | 2 | 18 | 37 | 6 | 13 | 8 | 191 | 280 | 273 | 553 | 82 | 215 | 17 | 8 | 252 | 57 | — | — | — | — | — | — |
| 2018 | 20 | ROK MLE | AZL Giants Black | — | 154 | 138 | 24 | 9 | 1 | 1 | 11 | 58 | 5 | 7 | 1 | 174 | 260 | 275 | 535 | 101 | 278 | 38 | 7 | 231 | 42 | — | — | — | — | — | — |
| 2019 | 21 | A MLE | Augusta GreenJackets | — | 117 | 110 | 18 | 4 | 0 | 1 | 5 | 54 | 2 | 0 | 0 | 164 | 214 | 227 | 441 | 64 | 288 | 46 | 4 | 183 | 10 | — | — | — | — | — | — |
| 2021 | 23 | A+ MLE | Eugene Emeralds | — | 393 | 334 | 57 | 11 | 5 | 10 | 50 | 153 | 5 | 13 | 8 | 171 | 288 | 323 | 611 | 153 | 256 | 39 | 13 | 269 | 68 | — | — | — | — | — | — |
| 2022 | 24 | AA MLE | Richmond Flying Squirrels | — | 238 | 216 | 29 | 8 | 1 | 5 | 17 | 123 | 3 | 4 | 0 | 134 | 208 | 250 | 458 | 116 | 265 | 52 | 7 | 206 | 26 | — | — | — | — | — | — |
| 2016 | 18 | ROK MLE | DSL Giants | — | 226 | 201 | 30 | 5 | 0 | 0 | 14 | 46 | 7 | 4 | 0 | 149 | 230 | 174 | 404 | 25 | 190 | 20 | 6 | 193 | 17 | — | — | — | — | — | — |
| 2016 | 18 | ROK RAW | DSL Giants | — | 226 | 194 | 47 | 9 | 0 | 1 | 21 | 38 | 7 | 4 | 0 | 242 | 338 | 304 | 642 | 62 | 291 | 17 | 9 | 296 | 17 | — | — | — | — | — | — |
| 2017 | 19 | ROK MLE | DSL Giants | — | 221 | 194 | 37 | 6 | 2 | 2 | 18 | 37 | 6 | 13 | 8 | 191 | 280 | 273 | 553 | 82 | 222 | 17 | 8 | 252 | 57 | — | — | — | — | — | — |
| 2017 | 19 | ROK RAW | DSL Giants | — | 221 | 186 | 59 | 10 | 4 | 5 | 26 | 30 | 6 | 13 | 8 | 317 | 417 | 495 | 912 | 177 | 351 | 14 | 12 | 400 | 57 | — | — | — | — | — | — |
| 2018 | 20 | ROK MLE | AZL Giants Black | — | 154 | 138 | 24 | 9 | 1 | 1 | 11 | 58 | 5 | 7 | 1 | 174 | 260 | 275 | 535 | 101 | 291 | 38 | 7 | 231 | 42 | — | — | — | — | — | — |
| 2018 | 20 | ROK RAW | AZL Giants Black | — | 154 | 130 | 35 | 14 | 2 | 1 | 18 | 40 | 5 | 7 | 1 | 269 | 377 | 431 | 807 | 162 | 382 | 26 | 12 | 362 | 42 | — | — | — | — | — | — |
| 2019 | 21 | A MLE | Augusta GreenJackets | — | 117 | 110 | 18 | 4 | 0 | 1 | 5 | 54 | 2 | 0 | 0 | 164 | 214 | 227 | 441 | 64 | 309 | 46 | 4 | 183 | 10 | — | — | — | — | — | — |
| 2019 | 21 | A RAW | Augusta GreenJackets | — | 117 | 107 | 23 | 6 | 0 | 1 | 8 | 40 | 2 | 0 | 0 | 215 | 282 | 299 | 581 | 84 | 333 | 34 | 7 | 268 | 10 | — | — | — | — | — | — |
| 2021 | 23 | A+ MLE | Eugene Emeralds | — | 393 | 334 | 57 | 11 | 5 | 10 | 50 | 153 | 5 | 13 | 8 | 171 | 288 | 323 | 611 | 153 | 269 | 39 | 13 | 269 | 68 | — | — | — | — | — | — |
| 2021 | 23 | A+ RAW | Eugene Emeralds | — | 393 | 318 | 71 | 16 | 6 | 13 | 65 | 123 | 5 | 13 | 8 | 223 | 362 | 434 | 796 | 211 | 312 | 31 | 17 | 353 | 68 | — | — | — | — | — | — |
| 2022 | 24 | AA MLE | Richmond Flying Squirrels | — | 238 | 216 | 29 | 8 | 1 | 5 | 17 | 123 | 3 | 4 | 0 | 134 | 208 | 250 | 458 | 116 | 270 | 52 | 7 | 206 | 26 | — | — | — | — | — | — |
| 2022 | 24 | AA RAW | Richmond Flying Squirrels | — | 238 | 209 | 37 | 11 | 1 | 7 | 24 | 99 | 3 | 4 | 0 | 177 | 271 | 340 | 611 | 163 | 288 | 42 | 10 | 275 | 26 | — | — | — | — | — | — |
| 2016 | 18 | ROK MLE | DSL Giants | — | 226 | 203 | 30 | 5 | 0 | 0 | 14 | 46 | 7 | 4 | 0 | 148 | 230 | 172 | 402 | 25 | 186 | 20 | 6 | 193 | 17 | — | — | — | — | — | — |
| 2017 | 19 | ROK MLE | DSL Giants | — | 221 | 195 | 37 | 6 | 2 | 2 | 18 | 37 | 6 | 13 | 8 | 190 | 280 | 272 | 552 | 82 | 215 | 17 | 8 | 252 | 57 | — | — | — | — | — | — |
| 2018 | 20 | ROK MLE | AZL Giants Black | — | 154 | 137 | 24 | 9 | 1 | 1 | 11 | 58 | 5 | 7 | 1 | 175 | 260 | 277 | 537 | 102 | 278 | 38 | 7 | 231 | 42 | — | — | — | — | — | — |
| 2019 | 21 | A MLE | Augusta GreenJackets | — | 117 | 109 | 18 | 4 | 0 | 1 | 5 | 54 | 2 | 0 | 0 | 165 | 214 | 229 | 443 | 64 | 288 | 46 | 4 | 183 | 10 | — | — | — | — | — | — |
| 2021 | 23 | A+ MLE | Eugene Emeralds | — | 393 | 335 | 57 | 11 | 5 | 10 | 50 | 153 | 5 | 13 | 8 | 170 | 288 | 322 | 610 | 152 | 256 | 39 | 13 | 269 | 68 | — | — | — | — | — | — |
| 2022 | 24 | AA MLE | Richmond Flying Squirrels | — | 238 | 216 | 29 | 8 | 1 | 5 | 17 | 123 | 3 | 4 | 0 | 134 | 208 | 250 | 458 | 116 | 265 | 52 | 7 | 206 | 26 | — | — | — | — | — | — |
| ▸ Career Totals | |||||||||||||||||||||||||||||||
| Career | — | MLE | — | 1349 | 1193 | 195 | 43 | 9 | 19 | 115 | 471 | 28 | 41 | 17 | 163 | 253 | 262 | 515 | 99 | 246 | 35 | 9 | 231 | 42 | -93 | +1 | +0 | -14 | +29 | -7.8 | |
| / 162G | — | MLE | — | 650 | 575 | 94 | 21 | 4 | 9 | 55 | 227 | 13 | 20 | 8 | 163 | 252 | 261 | 512 | 97 | 247 | 35 | 8 | 231 | 42 | -45 | +1 | +0 | -7 | +14 | -3.8 | |
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.
2022 AARichmond Flying Squirrels · 238 PAwOBA .269 → .206 (−64)K% 41.6% → 51.6%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 41.60% | ÷0.984 | ×1.220 | — | — | 51.55% |
| BB% (unintentional) /PA | 10.08% | ÷1.018 | ×0.700 | — | ×1.012 | 7.02% |
| HBP% /PA | 1.26% | — | ×0.850 | — | ×1.012 | 1.08% |
| Singles /BIP | 16.36% | ÷0.991 | ×0.970 | ×0.981 | ×1.012 | 15.90% |
| Doubles /BIP | 10.00% | ÷1.011 | ×0.860 | ×0.981 | ×1.012 | 8.45% |
| Triples /BIP | 0.91% | ÷0.900 | ×0.950 | ×0.981 | ×1.012 | 0.95% |
| Home runs /BIP | 6.36% | ÷0.929 | ×0.780 | — | ×1.012 | 5.41% |
Factors used: league row EL. Park (home-season share, regressed): HR 86, 1B 98, 2B 102, 3B 80, K 97, BB 104 — 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). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.981.
Result: wOBA .269 → .206; ISO .163 → .122; BABIP .288 → .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).
2021 A+Eugene Emeralds · 393 PAwOBA .348 → .269 (−79)K% 31.3% → 39.0%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 31.30% | ÷1.083 | ×1.350 | — | — | 39.00% |
| BB% (unintentional) /PA | 16.54% | ÷0.924 | ×0.710 | — | ×0.998 | 12.68% |
| HBP% /PA | 1.27% | — | ×0.810 | — | ×0.998 | 1.03% |
| Singles /BIP | 18.46% | ÷1.016 | ×0.910 | ×0.995 | ×0.998 | 16.42% |
| Doubles /BIP | 8.21% | ÷1.135 | ×0.830 | ×0.995 | ×0.998 | 5.96% |
| Triples /BIP | 3.08% | ÷1.029 | ×0.820 | ×0.995 | ×0.998 | 2.43% |
| Home runs /BIP | 6.67% | ÷1.049 | ×0.830 | — | ×0.998 | 5.26% |
Factors used: level-wide A+ factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 110, 1B 103, 2B 127, 3B 106, K 117, BB 85 — 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.995.
Result: wOBA .348 → .269; ISO .211 → .156; BABIP .312 → .256. 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 AAugusta GreenJackets · 117 PAwOBA .261 → .183 (−77)K% 34.2% → 45.9%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 34.19% | ÷0.997 | ×1.340 | — | — | 45.95% |
| BB% (unintentional) /PA | 6.84% | ÷1.050 | ×0.660 | — | ×1.015 | 4.36% |
| HBP% /PA | 1.71% | — | ×0.770 | — | ×1.015 | 1.34% |
| Singles /BIP | 23.88% | ÷0.958 | ×0.920 | ×0.950 | ×1.015 | 22.11% |
| Doubles /BIP | 8.96% | ÷1.108 | ×0.820 | ×0.950 | ×1.015 | 6.39% |
| Triples /BIP | 0.00% | ÷0.909 | ×0.940 | ×0.950 | ×1.015 | 0.00% |
| Home runs /BIP | 1.49% | ÷1.082 | ×0.820 | — | ×1.015 | 1.15% |
Factors used: league row SAL. Park (home-season share, regressed): HR 116, 1B 92, 2B 122, 3B 82, K 99, BB 110 — 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 .261 → .183; ISO .084 → .052; BABIP .333 → .288. 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).
2018 ROKAZL Giants Black · 154 PAwOBA .354 → .231 (−123)K% 26.0% → 37.4%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 25.97% | ÷1.000 | ×1.440 | — | — | 37.40% |
| BB% (unintentional) /PA | 11.69% | ÷1.000 | ×0.620 | — | ×0.995 | 7.21% |
| HBP% /PA | 3.25% | — | ×0.720 | — | ×0.995 | 2.33% |
| Singles /BIP | 20.00% | ÷1.000 | ×0.820 | ×0.950 | ×0.995 | 15.50% |
| Doubles /BIP | 15.56% | ÷1.000 | ×0.720 | ×0.950 | ×0.995 | 10.59% |
| Triples /BIP | 2.22% | ÷1.000 | ×0.720 | ×0.950 | ×0.995 | 1.51% |
| Home runs /BIP | 1.11% | ÷1.000 | ×0.780 | — | ×0.995 | 0.86% |
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 20 vs a level average of 19.5 → −0.5% on BB/HBP/hit rates (0.5 yr older than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.950.
Result: wOBA .354 → .231; ISO .162 → .102; BABIP .382 → .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).
2017 DSLDSL Giants · 221 PAwOBA .395 → .252 (−143)K% 13.6% → 16.6%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 13.57% | ÷1.000 | ×1.220 | — | — | 16.56% |
| BB% (unintentional) /PA | 11.76% | ÷1.000 | ×0.700 | — | ×0.995 | 8.19% |
| HBP% /PA | 2.71% | — | ×0.700 | — | ×0.995 | 1.89% |
| Singles /BIP | 25.64% | ÷1.000 | ×0.680 | ×0.951 | ×0.995 | 16.49% |
| Doubles /BIP | 6.41% | ÷1.000 | ×0.600 | ×0.951 | ×0.995 | 3.64% |
| Triples /BIP | 2.56% | ÷1.000 | ×0.600 | ×0.951 | ×0.995 | 1.46% |
| Home runs /BIP | 3.21% | ÷1.000 | ×0.470 | — | ×0.995 | 1.50% |
Factors used: level-wide DSL 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 18.5 → −0.5% on BB/HBP/hit rates (0.5 yr older than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.951.
Result: wOBA .395 → .252; ISO .177 → .096; BABIP .351 → .215. 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).
2016 DSLDSL Giants · 226 PAwOBA .291 → .193 (−98)K% 16.8% → 20.5%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 16.81% | ÷1.000 | ×1.220 | — | — | 20.51% |
| BB% (unintentional) /PA | 8.85% | ÷1.000 | ×0.700 | — | ×1.008 | 6.24% |
| HBP% /PA | 3.10% | — | ×0.700 | — | ×1.008 | 2.18% |
| Singles /BIP | 23.72% | ÷1.000 | ×0.680 | ×0.957 | ×1.008 | 15.55% |
| Doubles /BIP | 5.77% | ÷1.000 | ×0.600 | ×0.957 | ×1.008 | 3.34% |
| Triples /BIP | 0.00% | ÷1.000 | ×0.600 | ×0.957 | ×1.008 | 0.00% |
| Home runs /BIP | 0.64% | ÷1.000 | ×0.470 | — | ×1.008 | 0.30% |
Factors used: level-wide DSL 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 18 vs a level average of 18.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.957.
Result: wOBA .291 → .193; ISO .062 → .035; BABIP .291 → .186. 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).