Happ, Ian
Batters grouped by swing shape — bat speed and swing length for power, attack angle and path tilt for loft — from Statcast bat tracking.
The number beside each metric is the gap to league average across the 583 batters with enough tracked swings to measure.
A description, not a prediction. The model does not use it.
Bat speed, barrel rate, exit velocity and chase rate over the last 30 games against this player's own last 100, so it reads as “is he himself right now” rather than “is he good”.
Flagged only when it has moved further than three quarters of hitters do. Movement in either direction counts.
Descriptive — the model does not use it.
Where this player ranks against the league over the same games. 100 is the best in baseball, 50 is average, and right is always better.
Rows marked ↓ are ones where a low number is good, so the bar is flipped. The figure on the right is always the real value.
Windows count games played, not calendar days.
2026-07-19 to 2026-08-19 · 394 qualified playersWhere every base hit landed, over this player's recent games. Outs are not plotted.
Dots outside the foul lines are real. Statcast records where a ball was fielded, not where it landed, so a grounder chased into the corner plots there. About 4% of hits.
20 hits · 30 games · 2026-07-19 to 2026-08-19Hover or tap any hit for how it was struck — distance, exit velocity, launch angle, the pitch, and what that batted ball was expected to be worth.
One row per plate appearance, newest first. Strikeouts and walks included.
Expected stats say what a batted ball was worth given how hard and at what angle it was hit, whether or not it found a glove.
xBA is blank on strikeouts and walks — there is no batted ball to judge. xwOBA counts them.
119 PA · 30 games · 2026-07-19 to 2026-08-19| Date | Result | Count | Pitch | Velo | Exit Velo | Angle | Dist | Location | xBA | xSLG | xwOBA | Pitcher |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2026-08-19 | Out ground ball | 1-2 | CH | 84.1 | 74.6 | -5° | 15 | Infield | 0.104 | 0.117 | 0.108 | Urquidy, José |
| 2026-08-19 | Strikeout swinging | 1-2 | CU | 78.9 | — | — | — | — | — | — | 0.000 | Urquidy, José |
| 2026-08-19 | Strikeout swinging | 3-2 | CH | 82.6 | — | — | — | — | — | — | 0.000 | Urquidy, José |
| 2026-08-18 | Out fly ball | 3-2 | FF | 92.5 | 99.8 | 53° | 324 | RF | 0.014 | 0.031 | 0.020 | Richards, Trevor |
| 2026-08-18 | Out fly ball | 3-1 | CH | 91.4 | 91.1 | 38° | 350 | RF gap | 0.026 | 0.056 | 0.036 | Brazobán, Huascar |
| 2026-08-18 | Out fly ball | 0-0 | FC | 92.5 | 91.2 | 26° | 330 | RF | 0.094 | 0.190 | 0.114 | Fedde, Erick |
| 2026-08-18 | Single ground ball | 3-1 | CH | 89.2 | 99.0 | -1° | 23 | RF | 0.448 | 0.496 | 0.403 | Fedde, Erick |
| 2026-08-17 | Walk | 3-2 | FF | 100.0 | — | — | — | — | — | — | 0.698 | Hicks, Jordan |
| 2026-08-17 | Sac Bunt ground ball | 0-0 | SL | 87.9 | 21.6 | -68° | 1 | RF corner | — | — | — | Schweitzer, Tyler |
| 2026-08-17 | Force Out ground ball | 1-2 | CH | 87.1 | 97.5 | -15° | 4 | Infield | 0.264 | 0.289 | 0.252 | Castillo, Luis |
| 2026-08-17 | Out fly ball | 2-2 | SI | 96.2 | 100.0 | 27° | 377 | CF | 0.511 | 1.610 | 0.871 | Castillo, Luis |
| 2026-08-17 | Single ground ball | 0-1 | CH | 88.5 | 94.5 | 6° | 107 | RF gap | 0.520 | 0.584 | 0.487 | Castillo, Luis |
| 2026-08-16 | Force Out ground ball | 1-2 | CH | 81.4 | 64.4 | -31° | 4 | RF corner | 0.055 | 0.056 | 0.050 | Gastelum, Luis |
| 2026-08-16 | Single line drive | 2-2 | FF | 94.7 | 96.6 | 9° | 171 | LF | 0.594 | 0.643 | 0.538 | Dobbins, Hunter |
| 2026-08-16 | Out ground ball | 1-0 | SL | 86.5 | 73.4 | -1° | 31 | Infield | 0.111 | 0.118 | 0.106 | Dobbins, Hunter |
| 2026-08-15 | Out fly ball | 0-0 | SL | 87.4 | 90.1 | 41° | 292 | LF gap | 0.009 | 0.025 | 0.014 | Stanek, Ryne |
| 2026-08-15 | Strikeout swinging | 3-2 | CU | 79.9 | — | — | — | — | — | — | 0.000 | McGreevy, Michael |
| 2026-08-15 | Walk | 3-1 | CH | 87.2 | — | — | — | — | — | — | 0.698 | McGreevy, Michael |
| 2026-08-15 | Out ground ball | 2-2 | CH | 87.8 | 97.5 | -6° | 10 | Infield | 0.264 | 0.295 | 0.247 | McGreevy, Michael |
| 2026-08-14 | Out ground ball | 3-1 | SI | 90.9 | 90.1 | -12° | 11 | Infield | 0.114 | 0.129 | 0.103 | Strzelecki, Peter |
| 2026-08-14 | Strikeout looking | 3-2 | SI | 95.3 | — | — | — | — | — | — | 0.000 | Liberatore, Matthew |
| 2026-08-14 | Strikeout swinging | 1-2 | SL | 85.6 | — | — | — | — | — | — | 0.000 | Liberatore, Matthew |
| 2026-08-13 | Out line drive | 0-1 | KC | 87.1 | 71.7 | 19° | 184 | CF | 0.926 | 0.988 | 0.852 | Cavalli, Cade |
| 2026-08-13 | Out popup | 1-0 | ST | 88.7 | 57.4 | 60° | 128 | LF corner | 0.003 | 0.003 | 0.003 | Cavalli, Cade |
| 2026-08-13 | Strikeout swinging | 2-2 | ST | 87.4 | — | — | — | — | — | — | 0.000 | Cavalli, Cade |
| 2026-08-12 | Force Out ground ball | 3-2 | FF | 90.6 | 91.6 | -23° | 6 | RF | 0.092 | 0.096 | 0.083 | Williams, Trevor |
| 2026-08-12 | Out ground ball | 2-1 | FF | 88.3 | 104.0 | -8° | 14 | Infield | 0.341 | 0.366 | 0.324 | Williams, Trevor |
| 2026-08-12 | Single line drive | 0-1 | FF | 89.3 | 106.0 | 16° | 274 | LF | 0.566 | 1.003 | 0.662 | Cosgrove, Tom |
| 2026-08-11 | Out popup | 3-2 | SI | 93.3 | 96.2 | 61° | 203 | CF | 0.020 | 0.027 | 0.021 | Mikolas, Miles |
| 2026-08-11 | Walk | 3-0 | CH | 88.1 | — | — | — | — | — | — | 0.698 | Ribalta, Orlando |
| 2026-08-11 | Out fly ball | 2-2 | SL | 87.1 | 90.3 | 44° | 295 | LF gap | 0.011 | 0.017 | 0.014 | Kranick, Max |
| 2026-08-11 | Walk | 3-1 | FF | 92.0 | — | — | — | — | — | — | 0.698 | Irvin, Jake |
| 2026-08-11 | Single ground ball | 0-1 | CH | 88.3 | 99.6 | 3° | 73 | RF | 0.540 | 0.605 | 0.501 | Irvin, Jake |
| 2026-08-09 | Strikeout swinging | 0-2 | FF | 96.5 | — | — | — | — | — | — | 0.000 | Erceg, Lucas |
| 2026-08-09 | Home Run fly ball | 0-0 | FF | 92.5 | 100.3 | 35° | 401 | RF | 0.351 | 1.329 | 0.688 | McGee, Easton |
| 2026-08-09 | Out ground ball | 1-1 | CH | 84.0 | 94.3 | -7° | 13 | Infield | 0.246 | 0.275 | 0.228 | Dobnak, Randy |
| 2026-08-09 | Single ground ball | 2-1 | SI | 91.1 | 104.2 | 4° | 105 | CF | 0.563 | 0.625 | 0.519 | Dobnak, Randy |
| 2026-08-09 | Single ground ball | 1-2 | CH | 83.5 | 47.9 | -24° | 5 | Infield | 0.165 | 0.166 | 0.149 | Dobnak, Randy |
| 2026-08-08 | Double line drive | 3-2 | FC | 94.7 | 106.7 | 19° | 310 | RF | 0.646 | 1.469 | 0.884 | Cruz, Steven |
| 2026-08-08 | Home Run fly ball | 2-1 | CU | 79.7 | 98.2 | 33° | 381 | RF | 0.220 | 0.806 | 0.423 | Lugo, Seth |
| 2026-08-08 | Out line drive | 0-1 | CH | 84.4 | 101.0 | 16° | 314 | LF gap | 0.594 | 0.881 | 0.632 | Lugo, Seth |
| 2026-08-08 | Strikeout swinging | 0-2 | CU | 79.5 | — | — | — | — | — | — | 0.000 | Lugo, Seth |
| 2026-08-07 | Strikeout looking | 3-2 | FF | 93.5 | — | — | — | — | — | — | 0.000 | Black, Mason |
| 2026-08-07 | Strikeout swinging | 0-2 | FF | 93.9 | — | — | — | — | — | — | 0.000 | Black, Mason |
| 2026-08-07 | Strikeout looking | 2-2 | ST | 82.7 | — | — | — | — | — | — | 0.000 | Cuas, Jose |
| 2026-08-07 | Strikeout swinging | 3-2 | CH | 85.4 | — | — | — | — | — | — | 0.000 | Lynch IV, Daniel |
| 2026-08-06 | Out ground ball | 1-1 | CH | 92.7 | 99.3 | -10° | 8 | Infield | 0.258 | 0.279 | 0.232 | Varland, Louis |
| 2026-08-06 | Out popup | 0-2 | FF | 97.9 | 68.5 | 75° | 71 | LF corner | 0.006 | 0.007 | 0.007 | Cease, Dylan |
| 2026-08-06 | Strikeout swinging | 1-2 | SI | 95.6 | — | — | — | — | — | — | 0.000 | Cease, Dylan |
| 2026-08-06 | Out fly ball | 3-2 | SL | 87.6 | 80.6 | 47° | 238 | LF | 0.023 | 0.038 | 0.027 | Cease, Dylan |
| 2026-08-05 | Strikeout swinging | 1-2 | FF | 96.7 | — | — | — | — | — | — | 0.000 | Hurt, Kyle |
| 2026-08-05 | Strikeout swinging | 2-2 | FF | 99.7 | — | — | — | — | — | — | 0.000 | Henriquez, Edgardo |
| 2026-08-05 | Out ground ball | 3-2 | FC | 88.4 | 89.8 | -8° | 14 | Infield | 0.158 | 0.187 | 0.142 | Lauer, Eric |
| 2026-08-05 | Out fly ball | 2-2 | FC | 89.0 | 82.6 | 64° | 193 | LF gap | 0.006 | 0.006 | 0.005 | Lauer, Eric |
| 2026-08-04 | Walk | 3-2 | FF | 96.4 | — | — | — | — | — | — | 0.698 | Díaz, Edwin |
| 2026-08-03 | Strikeout looking | 3-2 | SL | 88.1 | — | — | — | — | — | — | 0.000 | Hernández, Jonathan |
| 2026-08-03 | Walk | 3-2 | FF | 100.5 | — | — | — | — | — | — | 0.698 | Henriquez, Edgardo |
| 2026-08-02 | Out fly ball | 0-2 | FF | 96.3 | 75.3 | 39° | 220 | LF gap | 0.174 | 0.239 | 0.180 | Bednar, David |
| 2026-08-02 | Walk | 3-2 | FF | 97.5 | — | — | — | — | — | — | 0.698 | Cole, Gerrit |
| 2026-08-02 | Out ground ball | 3-1 | FF | 96.5 | 78.9 | -1° | 27 | Infield | 0.165 | 0.186 | 0.155 | Cole, Gerrit |
| 2026-08-02 | Strikeout swinging | 2-2 | FF | 97.9 | — | — | — | — | — | — | 0.000 | Cole, Gerrit |
| 2026-08-01 | Out ground ball | 0-0 | SL | 91.3 | 69.2 | -17° | 7 | Infield | 0.068 | 0.072 | 0.064 | Cruz, Yovanny |
| 2026-08-01 | Out line drive | 2-1 | SL | 83.2 | 99.6 | 19° | 299 | LF | 0.351 | 0.673 | 0.428 | Cruz, Fernando |
| 2026-08-01 | Out ground ball | 0-2 | CU | 74.7 | 69.9 | -44° | 3 | Infield | 0.168 | 0.169 | 0.151 | Fried, Max |
| 2026-08-01 | Strikeout swinging | 3-2 | FC | 91.0 | — | — | — | — | — | — | 0.000 | Fried, Max |
| 2026-07-31 | Single ground ball | 2-1 | CU | 82.1 | 93.2 | 5° | 92 | RF | 0.531 | 0.643 | 0.521 | Warren, Will |
| 2026-07-31 | Out line drive | 2-2 | CU | 81.6 | 80.3 | 26° | 281 | RF gap | 0.243 | 0.296 | 0.226 | Warren, Will |
| 2026-07-31 | Strikeout looking | 3-2 | FF | 93.2 | — | — | — | — | — | — | 0.000 | Warren, Will |
| 2026-07-30 | Double line drive | 0-1 | CH | 81.2 | 79.0 | 18° | 190 | RF corner | 0.994 | 1.107 | 0.926 | Gastelum, Luis |
| 2026-07-30 | Out ground ball | 2-1 | FF | 97.2 | 97.7 | -15° | 9 | Infield | 0.264 | 0.289 | 0.252 | Soriano, George |
| 2026-07-30 | Out ground ball | 1-1 | FF | 96.6 | 97.4 | -18° | 9 | CF | 0.152 | 0.170 | 0.137 | Pallante, Andre |
| 2026-07-30 | Out fly ball | 0-1 | KC | 80.4 | 100.3 | 37° | 383 | RF gap | 0.209 | 0.781 | 0.390 | Pallante, Andre |
| 2026-07-30 | Out ground ball | 2-1 | FF | 95.0 | 90.7 | -24° | 5 | Infield | 0.068 | 0.075 | 0.061 | Pallante, Andre |
| 2026-07-29 | Strikeout swinging | 2-2 | ST | 81.7 | — | — | — | — | — | — | 0.000 | O'Brien, Riley |
| 2026-07-29 | Strikeout swinging | 3-2 | FS | 88.0 | — | — | — | — | — | — | 0.000 | Stanek, Ryne |
| 2026-07-29 | Out fly ball | 0-0 | FC | 92.8 | 96.9 | 29° | 365 | LF gap | 0.254 | 0.799 | 0.434 | May, Dustin |
| 2026-07-29 | Out ground ball | 3-2 | ST | 87.1 | 81.1 | -9° | 15 | RF corner | 0.124 | 0.159 | 0.117 | May, Dustin |
| 2026-07-28 | Double fly ball | 2-2 | SI | 97.7 | 100.8 | 24° | 377 | CF | 0.546 | 1.479 | 0.835 | Svanson, Matt |
| 2026-07-28 | Strikeout looking | 2-2 | CH | 80.4 | — | — | — | — | — | — | 0.000 | Bruihl, Justin |
| 2026-07-28 | Out ground ball | 1-1 | CH | 88.0 | 84.8 | 7° | 105 | Infield | 0.443 | 0.513 | 0.427 | Graceffo, Gordon |
| 2026-07-28 | Walk | 3-2 | FF | 92.2 | — | — | — | — | — | — | 0.698 | McGreevy, Michael |
| 2026-07-28 | Double line drive | 3-2 | SI | 93.7 | 103.6 | 20° | 364 | RF | 0.543 | 1.134 | 0.699 | McGreevy, Michael |
| 2026-07-27 | Out fly ball | 2-1 | FF | 93.3 | 81.4 | 33° | 287 | LF gap | 0.049 | 0.102 | 0.066 | Dobbins, Hunter |
| 2026-07-27 | Walk | 3-0 | SI | 90.8 | — | — | — | — | — | — | 0.698 | Dobbins, Hunter |
| 2026-07-27 | Force Out ground ball | 0-1 | FS | 86.7 | 92.9 | -36° | 3 | Infield | 0.055 | 0.062 | 0.050 | Dobbins, Hunter |
| 2026-07-27 | Strikeout swinging | 2-2 | SL | 86.0 | — | — | — | — | — | — | 0.000 | Liberatore, Matthew |
| 2026-07-27 | Strikeout looking | 3-2 | FF | 94.3 | — | — | — | — | — | — | 0.000 | Liberatore, Matthew |
| 2026-07-26 | Strikeout swinging | 2-2 | FF | 99.2 | — | — | — | — | — | — | 0.000 | Montgomery, Mason |
| 2026-07-26 | Single line drive | 1-2 | FS | 86.9 | 77.0 | 28° | 254 | LF gap | 0.323 | 0.388 | 0.303 | Mlodzinski, Carmen |
| 2026-07-26 | Out fly ball | 2-0 | SL | 89.4 | 101.0 | 43° | 346 | RF | 0.071 | 0.249 | 0.125 | Ashcraft, Braxton |
| 2026-07-26 | Grounded Into DP ground ball | 0-0 | SL | 90.5 | 89.4 | 6° | 92 | Infield | 0.449 | 0.504 | 0.414 | Ashcraft, Braxton |
| 2026-07-26 | Strikeout swinging | 2-2 | CU | 85.7 | — | — | — | — | — | — | 0.000 | Ashcraft, Braxton |
| 2026-07-25 | Walk | 3-2 | CH | 81.7 | — | — | — | — | — | — | 0.698 | Marinaccio, Ron |
| 2026-07-25 | Out ground ball | 2-2 | CH | 88.5 | 82.9 | -4° | 17 | RF corner | 0.168 | 0.183 | 0.151 | Skenes, Paul |
| 2026-07-25 | Strikeout swinging | 2-2 | FF | 96.6 | — | — | — | — | — | — | 0.000 | Skenes, Paul |
| 2026-07-25 | Strikeout looking | 3-2 | SL | 88.0 | — | — | — | — | — | — | 0.000 | Skenes, Paul |
| 2026-07-24 | Out popup | 3-2 | SL | 84.4 | 71.3 | 50° | 199 | CF | 0.183 | 0.260 | 0.200 | Soto, Gregory |
| 2026-07-24 | Single ground ball | 0-2 | SL | 88.9 | 50.3 | -32° | 2 | Infield | 0.158 | 0.162 | 0.144 | Dotel, Wilber |
| 2026-07-24 | Strikeout looking | 1-2 | FF | 98.5 | — | — | — | — | — | — | 0.000 | Jones, Jared |
| 2026-07-24 | Strikeout looking | 1-2 | FF | 98.6 | — | — | — | — | — | — | 0.000 | Jones, Jared |
| 2026-07-22 | Walk | 3-2 | FC | 93.1 | — | — | — | — | — | — | 0.698 | Jansen, Kenley |
| 2026-07-22 | Single ground ball | 0-2 | CH | 91.5 | 81.1 | -61° | 1 | Infield | 0.317 | 0.318 | 0.285 | Anderson, Drew |
| 2026-07-22 | Double ground ball | 1-1 | KC | 79.5 | 78.3 | -27° | 5 | RF corner | 0.044 | 0.045 | 0.040 | Montero, Keider |
| 2026-07-22 | Strikeout swinging | 1-2 | KC | 80.9 | — | — | — | — | — | — | 0.000 | Montero, Keider |
| 2026-07-21 | Hit By Pitch | 3-1 | EP | 51.5 | — | — | — | — | — | — | 0.729 | — |
| 2026-07-21 | Walk | 3-0 | FA | 70.1 | — | — | — | — | — | — | 0.698 | — |
| 2026-07-21 | Out line drive | 2-1 | FC | 86.2 | 94.1 | 22° | 306 | CF | 0.180 | 0.334 | 0.215 | Madden, Ty |
| 2026-07-21 | Strikeout swinging | 0-2 | FF | 95.9 | — | — | — | — | — | — | 0.000 | Madden, Ty |
| 2026-07-21 | Single fly ball | 3-1 | SI | 92.6 | 92.6 | 57° | 171 | RF | 0.017 | 0.033 | 0.020 | Valdez, Framber |
| 2026-07-20 | Out fly ball | 1-0 | FC | 88.2 | 97.0 | 47° | 343 | CF | 0.011 | 0.025 | 0.016 | Holton, Tyler |
| 2026-07-20 | Home Run fly ball | 0-1 | FF | 96.3 | 104.8 | 32° | 432 | RF gap | 1.000 | 4.000 | 2.000 | Finnegan, Kyle |
| 2026-07-20 | Out line drive | 1-2 | SL | 83.1 | 94.4 | 16° | 301 | LF | 0.780 | 0.952 | 0.746 | Sommers, Drew |
| 2026-07-20 | Incomplete PA | 0-1 | FF | 95.0 | — | — | — | — | — | — | — | Sommers, Drew |
| 2026-07-20 | Out fly ball | 2-1 | FF | 92.2 | 74.1 | 41° | 254 | LF gap | 0.237 | 0.288 | 0.229 | Flaherty, Jack |
| 2026-07-20 | Walk | 3-2 | FF | 93.2 | — | — | — | — | — | — | 0.698 | Flaherty, Jack |
| 2026-07-19 | Out fly ball | 1-1 | CH | 87.0 | 89.2 | 28° | 329 | LF gap | 0.077 | 0.192 | 0.115 | Adams, Travis |
| 2026-07-19 | Grounded Into DP ground ball | 2-1 | FF | 95.7 | 94.9 | -22° | 6 | Infield | 0.111 | 0.140 | 0.114 | Adams, Travis |
| 2026-07-19 | Walk | 3-2 | SL | 87.8 | — | — | — | — | — | — | 0.698 | Matthews, Zebby |
| 2026-07-19 | Strikeout swinging | 2-2 | CH | 88.0 | — | — | — | — | — | — | 0.000 | Matthews, Zebby |
How the stat settles as the window lengthens. Exact values are in the table below.
The x-axis is how many previous games are counted — 1 game on the left, 100 on the right, evenly spaced rather than to scale.
Short windows jump around; longer ones flatten out. Where a line stops moving is roughly where that stat becomes trustworthy.
Choose stats & windows
How windows work
Windows count games, not days, and never include the game
shown.
Short windows are noisier than they look — a 1-game window is fewer than
four plate appearances.
Rates like BABIP and ISO aren't calculated over spans too short to mean
anything, so a stat can show fewer columns than the window selected.
— 56 of 56 metrics,
11 of 11 windows
Dimmed cells are based on thin data — read them with caution.
Stats with almost no data anywhere in the league are left out of this table entirely. Dimmed cells clear that bar but still fall short of what the models demand. Hover any cell to see how much of the league actually has it.
| stat | 1g | 2g | 3g | 5g | 7g | 10g | 15g | 20g | 30g | 50g | 100g |
|---|---|---|---|---|---|---|---|---|---|---|---|
| ab_game | 3.000 | 7.000 | 12.000 | 19.000 | 25.000 | 38.000 | 55.000 | 73.000 | 119.000 | 202.000 | 418.000 |
| air_ball_rate | · | · | · | · | · | 0.370 | 0.429 | 0.426 | 0.471 | 0.513 | 0.539 |
| appearances | 1.000 | 2.000 | 3.000 | 5.000 | 7.000 | 10.000 | 15.000 | 20.000 | 30.000 | 50.000 | 100.000 |
| ba | 0.000 | 0.143 | 0.200 | 0.188 | 0.136 | 0.242 | 0.204 | 0.185 | 0.196 | 0.191 | 0.204 |
| babip | 0.000 | 0.200 | 0.222 | 0.214 | 0.176 | 0.269 | 0.242 | 0.222 | 0.254 | 0.261 | 0.276 |
| babip_den | 1.000 | 5.000 | 9.000 | 14.000 | 17.000 | 26.000 | 33.000 | 45.000 | 67.000 | 111.000 | 217.000 |
| babip_num | 0.000 | 1.000 | 2.000 | 3.000 | 3.000 | 7.000 | 8.000 | 10.000 | 17.000 | 29.000 | 60.000 |
| barrel | 0.000 | 0.000 | 1.000 | 1.000 | 1.000 | 1.000 | 2.000 | 2.000 | 7.000 | 10.000 | 29.000 |
| barrel_per_ab | 0.000 | 0.000 | 0.083 | 0.053 | 0.040 | 0.026 | 0.036 | 0.027 | 0.042 | 0.040 | 0.053 |
| bat_speed | 70.475 | 71.740 | 67.619 | 68.261 | 69.116 | 69.510 | 70.160 | 69.238 | 69.328 | 70.331 | 70.405 |
| bip_per_pa | 0.333 | 0.714 | 0.750 | 0.737 | 0.680 | 0.711 | 0.636 | 0.644 | 0.588 | 0.569 | 0.550 |
| blast | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 |
| blast_per_ab | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 |
| chase | 3.000 | 4.000 | 11.000 | 13.000 | 16.000 | 20.000 | 32.000 | 38.000 | 74.000 | 110.000 | 223.000 |
| chase_rate | 0.429 | 0.222 | 0.355 | 0.277 | 0.271 | 0.233 | 0.246 | 0.222 | 0.248 | 0.225 | 0.235 |
| contact | 3.000 | 7.000 | 12.000 | 19.000 | 25.000 | 38.000 | 55.000 | 73.000 | 119.000 | 202.000 | 418.000 |
| estimated_ba_using_speedangle | 0.104 | 0.137 | 0.220 | 0.215 | 0.239 | 0.257 | 0.253 | 0.261 | 0.263 | 0.285 | 0.300 |
| estimated_ba_using_speedangle_sum | 0.104 | 0.686 | 1.981 | 3.014 | 4.057 | 6.952 | 8.863 | 12.250 | 18.390 | 32.797 | 68.937 |
| estimated_slg_using_speedangle | 0.117 | 0.178 | 0.375 | 0.322 | 0.331 | 0.376 | 0.395 | 0.394 | 0.440 | 0.466 | 0.558 |
| estimated_woba_using_speedangle | 0.108 | 0.136 | 0.255 | 0.232 | 0.247 | 0.274 | 0.278 | 0.282 | 0.300 | 0.321 | 0.364 |
| estimated_woba_using_speedangle_sum | 0.117 | 0.890 | 3.373 | 4.510 | 5.630 | 10.139 | 13.812 | 18.512 | 30.833 | 53.571 | 128.337 |
| ev_max | 78.600 | 89.200 | 92.800 | 94.500 | 90.614 | 94.410 | 92.913 | 93.160 | 93.967 | 95.646 | 96.423 |
| fly_ball | 0.000 | 3.000 | 4.000 | 5.000 | 5.000 | 7.000 | 10.000 | 12.000 | 21.000 | 35.000 | 78.000 |
| ground_ball | 1.000 | 2.000 | 5.000 | 8.000 | 9.000 | 15.000 | 17.000 | 24.000 | 33.000 | 50.000 | 89.000 |
| hard_hit | 0.000 | 2.000 | 4.000 | 6.000 | 6.000 | 13.000 | 17.000 | 22.000 | 31.000 | 50.000 | 119.000 |
| hh_ab | 0.000 | 0.286 | 0.333 | 0.316 | 0.240 | 0.342 | 0.309 | 0.301 | 0.261 | 0.248 | 0.285 |
| hit | 0.000 | 1.000 | 2.000 | 3.000 | 3.000 | 8.000 | 10.000 | 12.000 | 20.000 | 33.000 | 73.000 |
| hit_distance | 15.000 | 208.400 | 170.111 | 145.643 | 138.941 | 138.926 | 150.857 | 144.787 | 162.557 | 169.278 | 178.713 |
| hr | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 2.000 | 3.000 | 4.000 | 13.000 |
| hr_per_fb | · | · | · | · | · | · | · | · | 0.091 | 0.068 | 0.105 |
| hr_platoon | · | · | · | · | · | · | · | 2.000 | 3.000 | 4.000 | 12.000 |
| hr_rate | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.026 | 0.036 | 0.027 | 0.025 | 0.020 | 0.031 |
| iso | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.091 | 0.143 | 0.123 | 0.137 | 0.116 | 0.171 |
| la_contact | 1.000 | 5.000 | 9.000 | 14.000 | 17.000 | 27.000 | 35.000 | 47.000 | 70.000 | 115.000 | 230.000 |
| launch_speed | 74.600 | 91.140 | 85.478 | 85.093 | 82.971 | 86.848 | 87.760 | 87.300 | 87.386 | 87.686 | 88.853 |
| launch_speed_angle_sum | -5.000 | 22.200 | 6.778 | 5.214 | 8.235 | 8.926 | 13.629 | 10.681 | 11.343 | 12.043 | 15.883 |
| launch_speed_sum | 357.300 | 810.100 | 1260.800 | 1835.600 | 2193.700 | 3292.200 | 4897.800 | 6682.800 | 12167.100 | 20249.500 | 42243.100 |
| line_drive | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 3.000 | 5.000 | 8.000 | 12.000 | 24.000 | 46.000 |
| out_of_zone | 7.000 | 18.000 | 31.000 | 47.000 | 59.000 | 86.000 | 130.000 | 171.000 | 298.000 | 488.000 | 949.000 |
| pull | 1.000 | 4.000 | 5.000 | 7.000 | 8.000 | 13.000 | 17.000 | 25.000 | 38.000 | 61.000 | 115.000 |
| slg | 0.000 | 0.143 | 0.200 | 0.188 | 0.136 | 0.333 | 0.347 | 0.308 | 0.333 | 0.306 | 0.375 |
| slug_window_ab | 0.000 | 0.000 | 0.083 | 0.053 | 0.040 | 0.079 | 0.109 | 0.096 | 0.118 | 0.109 | 0.112 |
| square_per_ab | 0.000 | 0.286 | 0.417 | 0.421 | 0.360 | 0.474 | 0.418 | 0.397 | 0.353 | 0.342 | 0.335 |
| squared_up | 0.000 | 2.000 | 5.000 | 8.000 | 9.000 | 19.000 | 24.000 | 33.000 | 55.000 | 86.000 | 197.000 |
| strikeout | 2.000 | 2.000 | 2.000 | 3.000 | 6.000 | 7.000 | 15.000 | 19.000 | 33.000 | 59.000 | 129.000 |
| strikeout_rate | 0.667 | 0.286 | 0.167 | 0.158 | 0.240 | 0.184 | 0.273 | 0.260 | 0.277 | 0.292 | 0.309 |
| sweet_spot | 2.000 | 3.000 | 5.000 | 8.000 | 9.000 | 11.000 | 18.000 | 23.000 | 41.000 | 73.000 | 146.000 |
| sweet_spot_per_ab | 0.000 | 0.143 | 0.167 | 0.158 | 0.160 | 0.132 | 0.127 | 0.137 | 0.151 | 0.173 | 0.170 |
| tb | 0.000 | 1.000 | 2.000 | 3.000 | 3.000 | 11.000 | 17.000 | 20.000 | 34.000 | 53.000 | 134.000 |
| tb_platoon | · | · | · | · | · | · | · | 19.000 | 32.000 | 48.000 | 120.000 |
| walk | 0.000 | 0.000 | 1.000 | 2.000 | 2.000 | 4.000 | 5.000 | 7.000 | 14.000 | 23.000 | 49.000 |
| walk_platoon | · | · | · | · | · | · | · | 7.000 | 14.000 | 20.000 | 44.000 |
| walk_rate | 0.000 | 0.000 | 0.083 | 0.105 | 0.080 | 0.105 | 0.091 | 0.096 | 0.118 | 0.114 | 0.117 |
| xbh | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 3.000 | 4.000 | 8.000 | 12.000 | 33.000 |
| xbh_rate | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.026 | 0.055 | 0.055 | 0.067 | 0.059 | 0.079 |
| z_swing_rate | · | · | · | · | · | 0.614 | 0.598 | 0.615 | 0.610 | 0.644 | 0.662 |
| zone_rate | · | · | · | · | · | · | 0.451 | 0.464 | 0.457 | 0.463 | 0.477 |