Brandon Forrester

2B Fayetteville Woodpeckers
Age 23 S/R 5'9" / 171 lbs A HR -6% Svc 0.0 · Ctrl thru 2037
Overview
APROSPECTMiLBFA 2038
MLB%0%
YearAgeLvl / TeamPAAVG/OBP/SLGHRSBwRC+WARMLE AVG/OBP/SLG
202521AHOU67.177/.239/.210045—.159/.209/.190
202622AA/A/ROKHOU111.219/.312/.29201127—.177/.238/.236
2027PROJMLE23MLBHOU221.208/.268/.3043561-0.1
2028PROJ30% MLB24MLBHOU52.214/.275/.3181166-0.1
Next 2 projected WAR -0.2Projected rows: MLB playing time only, park and league context applied.
ContractESTIMATED
Control thru2037Service0.0First FA2038
2027MiLB2028MiLB2029Ext$0.0M2030Ext$0.0M2031Ext$0.0M2032Ext$0.9M2033Ext$0.9M2034Ext$1.0M+3
Skills · percentileMiLB Statcast 2026 A
Z-Con%82
Speed82
Whiff%79
Chase%61
K%49
BB%43
Career WAR0.0 WAR median (P10 0.0 / P90 0.0, comp-based) · star 0% · didn't stick 100%
CompsYasel Antuna (age 23) · Kaden Polcovich (age 23) · Arquímedes Gamboa (age 23)
2027 FULL-SEASON PROJECTIONpark-neutral Marcel · 100 proj PA
wRC+†61
AVG/OBP/SLG.206 / .266 / .301
PA100
HR1
K%30
BB%7
ISO96
MLB%0%
Value2027 · WAR
BAT: -4.6 runs (wOBA-derived runs vs avg)-5BATRUN: +0.5 runs (SB/CS + UBR baserunning)+0RUNFLD: +0.0 runs (Defensive runs vs avg)+0FLDPOS: +0.4 runs (Positional adjustment)+0POSREP: +2.2 runs (Replacement-level credit)+2REPTotal WAR: -0.10-0.1WAR
trajectory · projected WAR by year
-0.1-0.12728
Tools · Contract
Contract ESTIMATED · service-time + WAR-based estimator (needs verification)
Status   MiLB
MLB Debut   2032
Service   0 yrs (est)
Team Control Through   2037
First FA Year   2038
YearStatusSalary Proj WAR Value Surplus
2027MiLBstill in minors · estimated debut 2032
2028MiLBstill in minors · estimated debut 2032
2029Extbeyond projection horizon · no WAR estimate
2030Extbeyond projection horizon · no WAR estimate
2031Extbeyond projection horizon · no WAR estimate
2032Extbeyond projection horizon · no WAR estimate
2033Extbeyond projection horizon · no WAR estimate
2034Extbeyond projection horizon · no WAR estimate
2035Extbeyond projection horizon · no WAR estimate
2036Extbeyond projection horizon · no WAR estimate
2037Extbeyond projection horizon · no WAR estimate
Totals $0.0M $0.0M +$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)
202521 AFayetteville Woodpeckers — 6762 11010 4141 43 177239210448 32229 216 212 5 — — — — — —
202622 AACorpus Christi Hooks — 2622 3000 3110 10 136240136376 273 4212 185 -14 — — — — — —
202622 AFayetteville Woodpeckers — 7061 11110 8170 52 180275230505 49244 2411 237 11 — — — — — —
202622 ROKFCL Astros — 1513 7210 220 50 5386008461.446 308636 1313 613 174 — — — — — —
▸ Career — adjusted (every ACTUAL line translated to park/league-neutral MLB equivalents)
202521 A MLEFayetteville Woodpeckers — 6763 10010 3191 43 159209190399 32223 284 175 5 — — — — — —
202622 AA MLECorpus Christi Hooks — 2623 3000 2130 10 130200130330 258 508 148 -14 — — — — — —
202622 A MLEFayetteville Woodpeckers — 7064 10110 5230 52 156217203421 47218 337 185 11 — — — — — —
202622 ROK MLEFCL Astros — 1514 5110 130 50 357400571971 214477 207 426 174 — — — — — —
202521 A MLEFayetteville Woodpeckers — 6763 10010 3191 43 159209190399 32227 284 175 5 — — — — — —
202521 A RAWFayetteville Woodpeckers — 6762 11010 4141 43 177239210448 32229 216 212 5 — — — — — —
202622 A MLE3 teams — 111100 17220 9390 112 170239230469 60274 358 209 28 — — — — — —
202622 A RAW3 teams — 11196 21320 13300 112 219312292604 73313 2712 276 28 — — — — — —
202521 A MLEFayetteville Woodpeckers — 6763 10010 3191 43 159209190399 32223 284 175 5 — — — — — —
202622 A MLE3 teams — 111101 17220 9390 112 168239228466 59262 358 209 28 — — — — — —
▸ Model inputs — neutral MLE (past 3 seasons)
202521 A MLEFayetteville Woodpeckers — 6763 10010 3191 43 159209190399 32223 284 175 5 — — — — — —
202622 A MLE3 teams — 111101 17220 9390 112 168239228466 59262 358 209 28 — — — — — —
▸ 2027 season
▸ 2027 — full MLE projection (neutral park, full availability)
202723 MLB MLEHOU 0% 221202 43723 15652 51 208268304572 96288 297 259 61 -10 +1 +0 +1 +5 -0.1
▸ Career projection (2028+) — MLB context, MLB playing time (PA × MLB%)
202824 MLB MLEHOU 30% 173158 34523 12501 41 212273315587 103289 297 265 66 -7 +0 +0 +1 +4 -0.2
202824 MLB CTXHOU 30% 5248 10201 4150 10 214275318593 104293 298 267 66 -2 +0 +0 +0 +1 -0.1
▸ Career Totals
▸ Career totals — MLB only (actual + projected)
Career— A+C — 5248 10201 4150 10 208269312582 104281 298 267 46 -2 +0 +0 +0 +1 -0.1
/ 162G— A+C — 650600 12525012 501880 120 208269310579 102282 298 267 46 -27 +2 +0 +2 +14 -0.8
Career— MLE — 451413 801064 311383 216 194255276531 82278 317 237 46 -12 +1 +0 +1 +6 -0.4
/ 162G— MLE — 650595 1151496 451994 309 193255277532 84277 317 237 46 -28 +2 +0 +2 +14 -1.0

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 AFayetteville Woodpeckers · 70 PAwOBA .236 → .185 (−50)K% 24.3% → 33.0%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA24.29%÷1.000×1.360——33.03%
BB% (unintentional) /PA11.43%÷1.000×0.690—×0.9907.81%
HBP% /PA0.00%—×0.780—×0.9900.00%
Singles /BIP20.45%÷1.000×0.920×0.993×0.99018.49%
Doubles /BIP2.27%÷1.000×0.830×0.993×0.9901.85%
Triples /BIP2.27%÷1.000×0.910×0.993×0.9902.03%
Home runs /BIP0.00%÷1.000×0.800—×0.9900.00%

Factors used: level-wide A 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 23 vs a level average of 22.0 → −1.0% on BB/HBP/hit rates (1.0 yr older than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×0.993.

Result: wOBA .236 → .185; ISO .049 → .040; BABIP .244 → .218. 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).

2026 AACorpus Christi Hooks · 26 PAwOBA .181 → .148 (−33)K% 42.3% → 51.6%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA42.31%÷1.000×1.220——51.62%
BB% (unintentional) /PA11.54%÷1.000×0.700—×1.0278.29%
HBP% /PA0.00%—×0.870—×1.0270.00%
Singles /BIP27.27%÷1.000×0.920—×1.02725.77%
Doubles /BIP0.00%÷1.000×0.840—×1.0270.00%
Triples /BIP0.00%÷1.000×0.940—×1.0270.00%
Home runs /BIP0.00%÷1.000×0.800—×1.0270.00%

Factors used: league row TL. Park (home-season share, regressed): no park row on file (treated as neutral) — 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).

Result: wOBA .181 → .148; ISO .000 → .000; BABIP .273 → .258. 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).

2026 ROKFCL Astros · 15 PAwOBA .597 → .426 (−171)K% 13.3% → 19.2%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA13.33%÷1.000×1.440——19.20%
BB% (unintentional) /PA13.33%÷1.000×0.620—×0.9657.98%
HBP% /PA0.00%—×0.720—×0.9650.00%
Singles /BIP36.36%÷1.000×0.820—×0.96528.77%
Doubles /BIP18.18%÷1.000×0.720—×0.96512.63%
Triples /BIP9.09%÷1.000×0.720—×0.9656.32%
Home runs /BIP0.00%÷1.000×0.780—×0.9650.00%

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 23 vs a level average of 19.5 → −3.5% on BB/HBP/hit rates (3.5 yr older than average).

Result: wOBA .597 → .426; ISO .308 → .212; BABIP .636 → .477. 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 AFayetteville Woodpeckers · 67 PAwOBA .207 → .175 (−32)K% 20.9% → 28.5%
ComponentRawPark ÷Level factor ×GB/FB ×Age ×= MLE
K% /PA20.90%÷0.996×1.360——28.54%
BB% (unintentional) /PA5.97%÷1.072×0.690——3.84%
HBP% /PA1.49%—×0.780——1.16%
Singles /BIP20.83%÷0.979×0.920×1.034—20.25%
Doubles /BIP0.00%÷1.035×0.830×1.034—0.00%
Triples /BIP2.08%÷0.953×0.910×1.034—2.06%
Home runs /BIP0.00%÷1.005×0.800——0.00%

Factors used: level-wide A factors (no league-specific row for this league/era). Park (home-season share, regressed): HR 101, 1B 96, 2B 107, 3B 91, K 99, BB 114 — applied at half strength. Age: age 22 vs a level average of 22.0 → +0.0% on BB/HBP/hit rates (0.0 yr younger than average). Ground-ball/fly-ball mix moves 1B/2B/3B by ×1.034.

Result: wOBA .207 → .175; ISO .032 → .030; BABIP .229 → .223. 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).