One xBA value, the entire width of the field
Every ball in a cell left the bat at nearly the same speed and angle, so the model assigns them all nearly the same value — the flat dashed line. The solid line is what happened, against spray angle.
xBA by exit velocity and launch angle
.00 1.00 paler = fewer ballsLeague-wide. Click any cell to drive the chart at right.
Actual outcome by spray angle
Every line is one ballpark, plotted against the direction the ball was hit. Green is the park you have selected; blue is every other ballpark, and clicking one selects it; grey is the league mean across all of them. The dashed rule is xBA, which is flat because direction is not one of its inputs. Green whiskers are the selected park’s 95% interval, and the bars along the baseline are how many league balls fall in each bin.
The same cell, on the field
Where the outs live
Every batted ball placed where it came down, binned by direction and distance, coloured by how far the outcome fell short of or beat xBA.
Field
−.30 +.30 faded = interval spans zeroLeague average, same bins
Side by side, the park’s signature is the difference between these two fans, not the shape of either one.
Carry: the part defense cannot explain
Each ball hit in the air against the league’s median distance for its exact exit velocity and launch angle. Positioning cannot change how far a ball flies, so this isolates the park from its defence. Coors Field on top is the control.
Carry versus league expectation, feet
It does not eat home runs
Each hit type as a share of balls in play, against the league’s share of the same. Read the hit counts before the bars — triples are half a percent of all contact, so a huge percentage there is a handful of hits, while a small percentage on singles is many.
Hit types vs league
Shortfall by batted-ball type
BA − xBA relative to league, split by how the ball was struck. A carry effect should bite on balls hit in the air and leave ground balls alone.
How much of it is the building
The chart above counts hit types. This one prices them, which asks a different question: not what a park removes but what it cost. Because mean wOBA is a weighted sum of outcome rates, the shortfall splits exactly — every bar is that outcome’s own contribution, and they add to the total underneath. Splitting the same total the other way separates the part contact quality accounts for from the part it does not, and the second is the park. Left is every ballpark on wOBA − xwOBA; right is the selected one, taken apart.
wOBA − xwOBA relative to league
Coors Field and Sutter Health Park at the bottom are the control: both should be strongly positive and both are.
Where the wOBA went
wOBA points, against the leagueContact never made
Personnel held fixed: each park scored once by following the home club’s hitters in and out of the building, once by following its pitchers, then averaged. 1.00 is neutral; 1.10 is ten percent more strikeouts than the same people manage elsewhere.
Strikeout park factor, personnel held fixed
Every park, measured against its own contact quality
Measured against the league rather than zero — xBA runs slightly under reality on this population, so league average is a small positive number. The adjusted column divides out the hitters, charging each batted ball against that batter’s own record in every other park.
BA − xBA relative to league
Park table
Is it stable?
A park effect that flips sign every year is noise. One that holds is a building.