Player development / Hitting Lab
Player development / Hitting Lab

Is it a swing-decision problem or a bat problem?

Pittsburgh hit .701 OPS against left-handed pitching (17th) and .749 against righties (6th). Against lefties that was about −12 runs (≈ −1.2 wins) against an average lineup: −6 from swing decisions, −7 from contact, and +1 from the lineup’s handedness (30% of the pitches lefties threw went to left-handed hitters, against 34% for the league). Keystone splits each hitter into swing decisions and contact because each needs a different fix. The Lineup Lab checks how much of the gap the 2027 platoons close.
For hitting coordinator, MLB hitting coach, manager Model card 2026 regular season · Statcast pitch & bat tracking
Swing decisions vs LHP −6.5 runs decision value −0.17 per 100 pitches, about 0.49 runs each · 22nd of 30 · 7,774 pitches
Contact vs LHP −6.5 runs −0.17 per 100 swings · 19th of 30
Handedness mix vs LHP +1.1 runs vs. an average lineup · 30% of pitches to left-handed hitters (league 34%) · 11th of 30
Swing decisions vs RHP +8.2 runs decision value +0.10 per 100 pitches · 13th of 30 · contact −4.0 runs (18th)

Where the 2027 lineup loses runs to lefties

The Winter Plan’s hitters (decisions feed), each one’s regressed skill against left-handers over the pitches he should see from them in 2027. Against same-side peers: what coaching can change.

The plan’s chain (if Lowe declines the qualifying offer), at the plate, handedness included: Nick Gonzales takes second from Brandon Lowe (+0.5 runs against left-handers, −21.6 against right-handers over 535 PA), and Isaac Paredes plays third instead of the in-house option, Jared Triolo (+3.2 and +12.9 over 562 PA). Together: +3.7 runs against left-handers and −8.6 against right-handers. Offense only; the Winter Plan adds defense, and the Lineup Lab sets the order.

Decisions × contact · vs LHP

Regressed estimates (2025–26 pooled, the split against one hand shrunk on its own) with ±1 SD. Skill against same-side peers. Circle size = plate appearances behind the estimate (min 100). Dashed: a tentative tag.

−1.5−1−0.50+0.5+1+1.5−2−10+1+2Better swing decisions (value/100 pitches) →Decisions, value/100 pitches →Better contact (runs/100 swings) →↑ Contact, runs/100 swingsCoreApproach fixContact fixLimit exposureO'HearnMangumLoweCruzReynoldsTrioloDavisHorwitzGonzalesValdez

Jake Mangum

CF · bats S · vs LHP · 2027: Bench · 476 PA

Limit exposure · tentative

Below the line on both halves against both hands, even after regressing: a defense or bench bat, not a platoon.

57% chance both halves are really below the line (−0.55): under 70%, so treat the tag as a lead, not a plan.

Decisions est. ± SD · 2026 raw
−1.45 ± 0.30 · −1.92 value/100 pitches
Contact est. ± SD · 2026 raw
−0.67 ± 0.72 · −0.88 /100 swings
With the matchup
−1.09 runs/100 pitches, handedness included
PA 2026 · pooled
134 · 229
wOBA / xwOBA
.313 / .289
Chase
46.4%
Hittable pitches taken
25.1%
Zone contact
86.7%
Bat speed
68.5 mph
Squared-up / swing
20.8%
EV90 · Barrel
101.8 · 4.2%
Full profile

Pittsburgh hitters · vs LHP

Sorted by 2026 plate appearances. Decisions and contact are regressed estimates ± SD (2026 raw in the detail panel); a diagnosis needs 100 pooled PA. 2027 roles from the Winter Plan.

Hitter2027PAxwOBADecisionsContactChaseTakesZ-ContactEV90Diagnosis
Bryan Reynolds LF · SLF · 602 PA240.345+0.96 ±0.3+0.69 ±0.727%23%83%106.7Core
Brandon Lowe 2B · LLeaving if he declines the QO211.266−0.33 ±0.3+0.60 ±0.741%29%78%104.7Core
Nick Gonzales 3B · R2B · 535 PA195.299+0.29 ±0.3−0.56 ±0.731%18%83%100.8Contact fix ?
Jared Triolo SS · RBench · 415 PA143.330+0.44 ±0.3−0.94 ±0.826%33%89%102.5Contact fix ?
Ryan O'Hearn RF · L1B · 474 PA140.280−0.26 ±0.3+0.11 ±0.733%41%86%102.1Core ?
Oneil Cruz CF · LCF · 458 PA138.315−0.76 ±0.3+0.70 ±0.830%43%81%111.2Approach fix
Jake Mangum CF · SBench · 476 PA134.289−1.45 ±0.3−0.67 ±0.746%25%87%101.8Limit exposure ?
Esmerlyn Valdez RF · RRF · 344 PA111.370+1.36 ±0.4−0.06 ±0.921%29%66%108.6Core
Henry Davis C · RRelease by Nov 1792.235+0.43 ±0.3−1.26 ±0.838%14%85%104.5Contact fix
Konnor Griffin SS · RSS · 369 PA91.359−0.87 ±0.4+0.57 ±0.937%33%82%107.8Small sample
Spencer Horwitz 1B · LDH · 461 PA90.294+0.58 ±0.3−0.70 ±0.824%35%88%101.2Contact fix ?
Rafael Flores Jr. C · RC · 266 PA77.342+0.08 ±0.4+0.97 ±1.027%36%78%105.5Small sample
Nick Yorke 3B · RCall-up · 10 PA61.270−0.18 ±0.4−0.79 ±1.033%29%78%103.8Small sample
Jacob Gonzalez SS · LTraded to HOU33.295−0.37 ±0.4+0.03 ±1.030%19%80%106.1Small sample
Endy Rodríguez C · SBench · 289 PA28.298+0.41 ±0.4−0.57 ±1.031%38%79%102.9Small sample
Ronny Simon RF · SBench · 78 PA24.382−0.32 ±0.5+0.01 ±1.148%20%97%104.8Small sample
Tyler Callihan LF · LMinors7.365+0.45 ±0.5−1.53 ±1.122%18%80%92.0Small sample

? = tentative: under a 70% chance the true value is past the line (for Limit exposure, that both halves are). The line (−0.55) is about the bottom fifth of regressed values against left-handers (−0.60 for decisions, −0.60 for contact among 240 hitters).

Who hits left-handed pitching · outside the org

100+ PA vs LHP in 2026, ranked by estimated runs per 100 pitches against lefties with the matchup added back (a left-handed hitter facing a lefty starts about 0.41 runs per 100 pitches behind a right-hander; decision value counts at 0.49 runs a unit). Players their clubs are unlikely to trade are left out (22 in this range).

HitterTeamPA vs Lvs LHPSkillxwOBA2027 WARAgeAvailable?2027 cost
Isaac Paredes 3B · R · the plan’s acquisitionHOU158+0.29 81st+0.27 100th.3283.3 plan28At a priceClub option $13.3M
Seiya Suzuki RF · RCHC165+1.25 4th+1.23 7th.3892.632Free agent4 yr × $31.3M est.
Gleyber Torres 2B · RDET124+1.17 6th+1.15 8th.3841.130Free agent2 yr × $7.5M est.
Heriberto Hernández LF · RMIA163+0.95 12th+0.93 15th.4001.627At a pricePre-arb $780K
Jo Adell RF · RCLE190+0.83 19th+0.80 26th.3990.728At a priceArb $5.2M
Yandy Díaz DH · RTB197+0.79 23rd+0.77 32nd.3511.135At a priceVesting option $13.0M
George Springer DH · RTOR159+0.75 25th+0.73 35th.2860.737Free agent1 yr × $6.3M est.
Paul Goldschmidt 1B · RNYY181+0.74 27th+0.71 37th.3710.039Free agent1 yr × $2.3M est.
Taylor Ward DH · RSEA192+0.69 29th+0.67 44th.3511.233Free agent2 yr × $9.2M est.
Jahmai Jones DH · RBOS156+0.69 30th+0.67 45th.3530.329At a priceArb $1.1M
Andrew Vaughn 1B · RMIL132+0.69 31st+0.66 46th.3490.629At a priceArb $7.7M
Jake Bauers 1B · LMIL160+0.65 35th+1.03 11th.3621.731Free agent2 yr × $17.7M est.
Ty France 1B · RSD138+0.60 37th+0.58 55th.3371.032Free agent2 yr × $10.8M est.

“vs LHP” adds back the league’s value for his batting side against lefties; “Skill” leaves it out, which is right for coaching but not for choosing who faces a lefty. The Lineup Lab asks the same question against a named 2027 incumbent and in runs per season, and the FA Board and Opportunity Finder price the fit.

Does it hold up?

2024–25 estimates against what the same hitters did in 2026

Swing decisions, 247 hitters with 300+ PA
r = 0.77 for the estimate, 0.73 for the raw 2025 value; chase rate alone −0.73. Error 0.54 vs. 0.63 decision value per 100 pitches.
Contact
r = 0.63 vs. 0.57 raw; zone contact rate alone −0.06. Error 1.02 vs. 1.30; slope 0.81 (estimates still a little too spread out).
Against left-handers, 231 hitters with 100+ PA
Error with the split 0.791 vs. 0.816 using his overall estimate alone (decisions); 1.396 vs. 1.411 (contact).

Read it this way: the estimates beat last season’s raw numbers, and decision value carries about the same signal as chase rate alone. The split against one hand cuts the error by 3% (decisions) and 1% (contact) over the hitter’s overall estimate, so a diagnosis against lefties is mostly his overall diagnosis. The swing models are cross-fit by season, so the 2024–25 values were scored by models trained on the other seasons, 2026 included. The models don’t know who is batting, so that leak is league-level only.

Keystone is an independent portfolio project. It is not affiliated with Major League Baseball or any club. Data: MLB Stats API, Baseball Savant, FanGraphs. Used under their terms for individual, non-commercial use.