Gabriel Rodriguez
| Year | Age | Lvl / Team | PA | AVG/OBP/SLG | HR | SB | wRC+ | WAR | MLE AVG/OBP/SLG |
|---|---|---|---|---|---|---|---|---|---|
| 2022 | 20 | A+CLE | 361 | .272/.347/.416 | 9 | 4 | 83 | — | .247/.308/.354 |
| 2023 | 21 | AACLE | 300 | .192/.315/.288 | 4 | 2 | 53 | — | .181/.278/.262 |
| 2024 | 22 | AACLE | 37 | .139/.162/.194 | 0 | 0 | -27 | — | .111/.135/.167 |
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) | |||||||||||||||||||||||||||||||
| 2019 | 17 | ROK | AZL Indians Red | — | 243 | 208 | 48 | 10 | 4 | 3 | 19 | 49 | 11 | 4 | 2 | 231 | 328 | 361 | 688 | 130 | 280 | 20 | 8 | 308 | 36 | — | — | — | — | — | — |
| 2021 | 19 | A | Lynchburg Hillcats | — | 406 | 373 | 88 | 18 | 1 | 3 | 25 | 111 | 3 | 3 | 3 | 236 | 289 | 314 | 603 | 78 | 326 | 27 | 6 | 272 | 36 | — | — | — | — | — | — |
| 2022 | 20 | A+ | Lake County Captains | — | 361 | 320 | 87 | 15 | 2 | 9 | 34 | 72 | 3 | 4 | 2 | 272 | 347 | 416 | 763 | 144 | 321 | 20 | 9 | 339 | 83 | — | — | — | — | — | — |
| 2023 | 21 | AA | Akron RubberDucks | — | 300 | 250 | 48 | 8 | 2 | 4 | 38 | 88 | 7 | 2 | 1 | 192 | 315 | 288 | 603 | 96 | 273 | 29 | 13 | 281 | 53 | — | — | — | — | — | — |
| 2024 | 22 | AA | Akron RubberDucks | — | 37 | 36 | 5 | 2 | 0 | 0 | 0 | 16 | 1 | 0 | 0 | 139 | 162 | 194 | 357 | 56 | 250 | 43 | 0 | 163 | -27 | — | — | — | — | — | — |
| ▸ Career — adjusted (every ACTUAL line translated to park/league-neutral MLB equivalents) | |||||||||||||||||||||||||||||||
| 2019 | 17 | ROK MLE | AZL Indians Red | — | 243 | 215 | 36 | 7 | 3 | 2 | 12 | 70 | 11 | 4 | 2 | 167 | 248 | 256 | 504 | 88 | 216 | 29 | 5 | 222 | 36 | — | — | — | — | — | — |
| 2021 | 19 | A MLE | Lynchburg Hillcats | — | 406 | 381 | 76 | 15 | 1 | 2 | 17 | 150 | 3 | 3 | 3 | 199 | 239 | 260 | 499 | 60 | 313 | 37 | 4 | 221 | 36 | — | — | — | — | — | — |
| 2022 | 20 | A+ MLE | Lake County Captains | — | 361 | 328 | 81 | 13 | 2 | 6 | 26 | 90 | 3 | 4 | 2 | 247 | 308 | 354 | 662 | 107 | 309 | 25 | 7 | 291 | 83 | — | — | — | — | — | — |
| 2023 | 21 | AA MLE | Akron RubberDucks | — | 300 | 260 | 47 | 8 | 2 | 3 | 28 | 110 | 7 | 2 | 1 | 181 | 278 | 262 | 540 | 81 | 279 | 37 | 9 | 246 | 53 | — | — | — | — | — | — |
| 2024 | 22 | AA MLE | Akron RubberDucks | — | 37 | 36 | 4 | 2 | 0 | 0 | 0 | 20 | 1 | 0 | 0 | 111 | 135 | 167 | 302 | 56 | 248 | 54 | 0 | 128 | -27 | — | — | — | — | — | — |
| 2019 | 17 | ROK MLE | AZL Indians Red | — | 243 | 215 | 36 | 7 | 3 | 2 | 12 | 70 | 11 | 4 | 2 | 167 | 248 | 256 | 504 | 88 | 230 | 29 | 5 | 222 | 36 | — | — | — | — | — | — |
| 2019 | 17 | ROK RAW | AZL Indians Red | — | 243 | 208 | 48 | 10 | 4 | 3 | 19 | 49 | 11 | 4 | 2 | 231 | 328 | 361 | 688 | 130 | 280 | 20 | 8 | 308 | 36 | — | — | — | — | — | — |
| 2021 | 19 | A MLE | Lynchburg Hillcats | — | 406 | 381 | 76 | 15 | 1 | 2 | 17 | 150 | 3 | 3 | 3 | 199 | 239 | 260 | 499 | 60 | 320 | 37 | 4 | 221 | 36 | — | — | — | — | — | — |
| 2021 | 19 | A RAW | Lynchburg Hillcats | — | 406 | 373 | 88 | 18 | 1 | 3 | 25 | 111 | 3 | 3 | 3 | 236 | 289 | 314 | 603 | 78 | 326 | 27 | 6 | 272 | 36 | — | — | — | — | — | — |
| 2022 | 20 | A+ MLE | Lake County Captains | — | 361 | 328 | 81 | 13 | 2 | 6 | 26 | 90 | 3 | 4 | 2 | 247 | 308 | 354 | 662 | 107 | 318 | 25 | 7 | 291 | 83 | — | — | — | — | — | — |
| 2022 | 20 | A+ RAW | Lake County Captains | — | 361 | 320 | 87 | 15 | 2 | 9 | 34 | 72 | 3 | 4 | 2 | 272 | 347 | 416 | 763 | 144 | 321 | 20 | 9 | 339 | 83 | — | — | — | — | — | — |
| 2023 | 21 | AA MLE | Akron RubberDucks | — | 300 | 260 | 47 | 8 | 2 | 3 | 28 | 110 | 7 | 2 | 1 | 181 | 278 | 262 | 540 | 81 | 293 | 37 | 9 | 246 | 53 | — | — | — | — | — | — |
| 2023 | 21 | AA RAW | Akron RubberDucks | — | 300 | 250 | 48 | 8 | 2 | 4 | 38 | 88 | 7 | 2 | 1 | 192 | 315 | 288 | 603 | 96 | 273 | 29 | 13 | 281 | 53 | — | — | — | — | — | — |
| 2024 | 22 | AA MLE | Akron RubberDucks | — | 37 | 36 | 4 | 2 | 0 | 0 | 0 | 20 | 1 | 0 | 0 | 111 | 135 | 167 | 302 | 56 | 250 | 54 | 0 | 128 | -27 | — | — | — | — | — | — |
| 2024 | 22 | AA RAW | Akron RubberDucks | — | 37 | 36 | 5 | 2 | 0 | 0 | 0 | 16 | 1 | 0 | 0 | 139 | 162 | 194 | 357 | 56 | 250 | 43 | 0 | 163 | -27 | — | — | — | — | — | — |
| 2019 | 17 | ROK MLE | AZL Indians Red | — | 243 | 218 | 36 | 7 | 3 | 2 | 12 | 70 | 11 | 4 | 2 | 165 | 248 | 252 | 500 | 87 | 216 | 29 | 5 | 222 | 36 | — | — | — | — | — | — |
| 2021 | 19 | A MLE | Lynchburg Hillcats | — | 406 | 383 | 76 | 15 | 1 | 2 | 17 | 150 | 3 | 3 | 3 | 198 | 239 | 258 | 498 | 60 | 313 | 37 | 4 | 221 | 36 | — | — | — | — | — | — |
| 2022 | 20 | A+ MLE | Lake County Captains | — | 361 | 329 | 81 | 13 | 2 | 6 | 26 | 90 | 3 | 4 | 2 | 246 | 308 | 353 | 661 | 106 | 309 | 25 | 7 | 291 | 83 | — | — | — | — | — | — |
| 2023 | 21 | AA MLE | Akron RubberDucks | — | 300 | 262 | 47 | 8 | 2 | 3 | 28 | 110 | 7 | 2 | 1 | 179 | 278 | 260 | 538 | 80 | 279 | 37 | 9 | 246 | 53 | — | — | — | — | — | — |
| 2024 | 22 | AA MLE | Akron RubberDucks | — | 37 | 36 | 4 | 2 | 0 | 0 | 0 | 20 | 1 | 0 | 0 | 111 | 135 | 167 | 302 | 56 | 248 | 54 | 0 | 128 | -27 | — | — | — | — | — | — |
| ▸ Model inputs — neutral MLE (past 3 seasons) | |||||||||||||||||||||||||||||||
| 2024 | 22 | AA MLE | Akron RubberDucks | — | 37 | 36 | 4 | 2 | 0 | 0 | 0 | 20 | 1 | 0 | 0 | 111 | 135 | 167 | 302 | 56 | 248 | 54 | 0 | 128 | -27 | — | — | — | — | — | — |
| ▸ Career Totals | |||||||||||||||||||||||||||||||
| Career | — | MLE | — | 1347 | 1220 | 244 | 45 | 8 | 13 | 83 | 440 | 25 | 13 | 8 | 200 | 265 | 282 | 547 | 82 | 296 | 33 | 6 | 243 | 51 | -79 | -1 | +0 | +14 | +29 | -3.7 | |
| / 162G | — | MLE | — | 650 | 589 | 118 | 22 | 4 | 6 | 40 | 212 | 12 | 6 | 4 | 200 | 265 | 282 | 547 | 81 | 296 | 33 | 6 | 243 | 51 | -38 | -0 | +0 | +7 | +14 | -1.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.
2024 AAAkron RubberDucks · 37 PAwOBA .158 → .128 (−30)K% 43.2% → 53.8%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 43.24% | ÷0.980 | ×1.220 | — | — | 53.85% |
| BB% (unintentional) /PA | 0.00% | ÷0.987 | ×0.700 | — | ×1.042 | 0.00% |
| HBP% /PA | 2.70% | — | ×0.850 | — | ×1.042 | 2.39% |
| Singles /BIP | 15.00% | ÷0.993 | ×0.970 | — | ×1.042 | 15.27% |
| Doubles /BIP | 10.00% | ÷0.944 | ×0.860 | — | ×1.042 | 9.49% |
| Triples /BIP | 0.00% | ÷1.023 | ×0.950 | — | ×1.042 | 0.00% |
| Home runs /BIP | 0.00% | ÷0.966 | ×0.780 | — | ×1.042 | 0.00% |
Factors used: league row EL. Park (home-season share, regressed): HR 93, 1B 99, 2B 89, 3B 105, K 96, BB 97 — applied at half strength. Age: age 22 vs a level average of 24.8 → +4.2% on BB/HBP/hit rates (2.8 yr younger than average).
Result: wOBA .158 → .128; ISO .056 → .043; BABIP .250 → .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).
2023 AAAkron RubberDucks · 300 PAwOBA .276 → .246 (−30)K% 29.3% → 36.6%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 29.33% | ÷0.977 | ×1.220 | — | — | 36.61% |
| BB% (unintentional) /PA | 12.33% | ÷0.988 | ×0.700 | — | ×1.050 | 9.17% |
| HBP% /PA | 2.33% | — | ×0.850 | — | ×1.050 | 2.08% |
| Singles /BIP | 20.99% | ÷0.995 | ×0.970 | ×1.015 | ×1.050 | 21.79% |
| Doubles /BIP | 4.94% | ÷0.933 | ×0.860 | ×1.015 | ×1.050 | 4.85% |
| Triples /BIP | 1.23% | ÷1.053 | ×0.950 | ×1.015 | ×1.050 | 1.19% |
| Home runs /BIP | 2.47% | ÷0.909 | ×0.780 | — | ×1.050 | 2.23% |
Factors used: league row EL. Park (home-season share, regressed): HR 82, 1B 99, 2B 87, 3B 111, K 95, 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 ×1.015.
Result: wOBA .276 → .246; ISO .096 → .087; BABIP .273 → .279. 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 A+Lake County Captains · 361 PAwOBA .334 → .291 (−43)K% 19.9% → 25.0%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 19.94% | ÷1.015 | ×1.270 | — | — | 24.96% |
| BB% (unintentional) /PA | 9.42% | ÷0.975 | ×0.710 | — | ×1.042 | 7.15% |
| HBP% /PA | 0.83% | — | ×0.790 | — | ×1.042 | 0.68% |
| Singles /BIP | 24.60% | ÷0.983 | ×0.920 | ×1.027 | ×1.042 | 24.62% |
| Doubles /BIP | 6.05% | ÷1.005 | ×0.810 | ×1.027 | ×1.042 | 5.22% |
| Triples /BIP | 0.81% | ÷0.970 | ×0.850 | ×1.027 | ×1.042 | 0.76% |
| Home runs /BIP | 3.63% | ÷1.134 | ×0.800 | — | ×1.042 | 2.67% |
Factors used: league row Midwest League. Park (home-season share, regressed): HR 127, 1B 97, 2B 101, 3B 94, K 103, BB 95 — applied at half strength. Age: age 20 vs a level average of 22.8 → +4.2% on BB/HBP/hit rates (2.8 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×1.027.
Result: wOBA .334 → .291; ISO .144 → .112; BABIP .321 → .309. 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 ALynchburg Hillcats · 406 PAwOBA .266 → .221 (−45)K% 27.3% → 36.9%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 27.34% | ÷1.008 | ×1.360 | — | — | 36.90% |
| BB% (unintentional) /PA | 6.16% | ÷1.024 | ×0.690 | — | ×1.045 | 4.34% |
| HBP% /PA | 0.74% | — | ×0.780 | — | ×1.045 | 0.60% |
| Singles /BIP | 25.19% | ÷1.014 | ×0.920 | ×1.033 | ×1.045 | 24.66% |
| Doubles /BIP | 6.87% | ÷0.988 | ×0.830 | ×1.033 | ×1.045 | 6.23% |
| Triples /BIP | 0.38% | ÷1.150 | ×0.910 | ×1.033 | ×1.045 | 0.33% |
| Home runs /BIP | 1.15% | ÷0.950 | ×0.800 | — | ×1.045 | 1.01% |
Factors used: level-wide A factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 90, 1B 103, 2B 98, 3B 130, K 102, BB 105 — applied at half strength. Age: age 19 vs a level average of 22.0 → +4.5% on BB/HBP/hit rates (3.0 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×1.033.
Result: wOBA .266 → .221; ISO .078 → .063; BABIP .326 → .313. 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 Indians Red · 243 PAwOBA .307 → .222 (−85)K% 20.2% → 29.0%
| Component | Raw | Park ÷ | Level factor × | GB/FB × | Age × | = MLE |
|---|---|---|---|---|---|---|
| K% /PA | 20.16% | ÷1.000 | ×1.440 | — | — | 29.04% |
| BB% (unintentional) /PA | 7.82% | ÷1.000 | ×0.620 | — | ×1.038 | 5.03% |
| HBP% /PA | 4.53% | — | ×0.720 | — | ×1.038 | 3.38% |
| Singles /BIP | 19.50% | ÷1.000 | ×0.820 | ×0.950 | ×1.038 | 15.76% |
| Doubles /BIP | 6.29% | ÷1.000 | ×0.720 | ×0.950 | ×1.038 | 4.46% |
| Triples /BIP | 2.52% | ÷1.000 | ×0.720 | ×0.950 | ×1.038 | 1.79% |
| Home runs /BIP | 1.89% | ÷1.000 | ×0.780 | — | ×1.038 | 1.53% |
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 17 vs a level average of 19.5 → +3.8% on BB/HBP/hit rates (2.5 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.950.
Result: wOBA .307 → .222; ISO .130 → .092; BABIP .280 → .216. 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).