Dustin Harris LHB SDN
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 610 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-08-25 to 2026-10-06 · 367 qualified playersDustin Harris’s last 30 games, ending 2026-10-06 — 11 days ago. Ranked against the league as it stood that day.
Where every base hit landed, over this player's recent games. Outs are not plotted.
Distance is read off the dotted rings, not a drawn fence -- real fences vary by 100+ feet park to park, so one drawn wall would be accurate for none of them.
Statcast records where a ball was FIELDED, not where it landed, so about 4% of hits (a grounder run down in foul ground, say) are pulled back to the foul line here rather than plotted past it.
31 hits · 30 games · 2026-08-25 to 2026-10-06Hover 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.
113 PA · 30 games · 2026-08-25 to 2026-10-06| Date | Result | Count | Pitch | Velo | Exit Velo | Angle | Dist | Location | xBA | xSLG | xwOBA | Pitcher |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2026-10-06 | Strikeout looking | 1-2 | SI | 95.0 | — | — | — | — | — | — | 0.000 | JoJo Romero |
| 2026-10-06 | Out fly ball | 3-2 | FC | 94.4 | 88.0 | 63° | 190 | LF | 0.014 | 0.019 | 0.015 | Dustin May |
| 2026-10-04 | Out fly ball | 1-1 | KC | 86.0 | 97.3 | 43° | 313 | RF gap | 0.029 | 0.094 | 0.050 | Trevor Megill |
| 2026-10-04 | Out fly ball | 2-2 | SI | 96.6 | 74.8 | 56° | 197 | LF | 0.086 | 0.123 | 0.094 | Abner Uribe |
| 2026-10-04 | Force Out ground ball | 1-1 | CH | 83.5 | 69.6 | 5° | 64 | Infield | 0.203 | 0.238 | 0.183 | Logan Henderson |
| 2026-10-04 | Out popup | 1-2 | FF | 94.2 | 56.2 | 45° | 157 | Infield | 0.094 | 0.095 | 0.085 | Logan Henderson |
| 2026-10-04 | Strikeout swinging | 0-2 | CH | 85.0 | — | — | — | — | — | — | 0.000 | Logan Henderson |
| 2026-10-03 | Single ground ball | 3-2 | FF | 99.9 | 81.2 | 8° | 101 | RF | 0.340 | 0.367 | 0.306 | Trevor Megill |
| 2026-10-03 | Out fly ball | 2-2 | SI | 100.0 | 83.8 | 40° | 286 | LF gap | 0.006 | 0.010 | 0.005 | Abner Uribe |
| 2026-10-03 | Single ground ball | 1-2 | SI | 98.6 | 71.6 | -55° | 1 | RF corner | 0.310 | 0.313 | 0.279 | Antonio Senzatela |
| 2026-10-03 | Walk | 3-2 | FF | 101.2 | — | — | — | — | — | — | 0.698 | Jacob Misiorowski |
| 2026-10-03 | Out ground ball | 3-2 | CU | 87.9 | 99.0 | 5° | 112 | Infield | 0.574 | 0.641 | 0.540 | Jacob Misiorowski |
| 2026-09-30 | Out line drive | 0-0 | ST | 86.5 | 30.3 | 25° | 48 | Infield | 0.329 | 0.332 | 0.296 | Ryan Zeferjahn |
| 2026-09-30 | Out line drive | 1-1 | FF | 96.9 | 98.5 | 22° | 323 | RF | 0.311 | 0.632 | 0.393 | Daniel Palencia |
| 2026-09-30 | Out line drive | 3-1 | FF | 92.3 | 99.9 | 21° | 330 | RF | 0.360 | 0.759 | 0.464 | Kevin Gausman |
| 2026-09-30 | Out fly ball | 0-0 | FF | 92.8 | 82.4 | 43° | 287 | RF gap | 0.011 | 0.016 | 0.012 | Kevin Gausman |
| 2026-09-29 | Single ground ball | 3-2 | FC | 89.4 | 94.2 | -11° | 13 | Infield | 0.187 | 0.224 | 0.182 | Aaron Civale |
| 2026-09-29 | Out popup | 2-1 | FC | 91.2 | 83.6 | 66° | 146 | Infield | 0.006 | 0.007 | 0.006 | Javier Assad |
| 2026-09-27 | Single ground ball | 1-0 | FF | 96.3 | 102.2 | 7° | 137 | RF gap | 0.683 | 0.752 | 0.630 | Ryne Nelson |
| 2026-09-27 | Out fly ball | 0-2 | ST | 87.5 | 80.7 | 32° | 298 | RF gap | 0.040 | 0.058 | 0.036 | Brandyn Garcia |
| 2026-09-27 | Single line drive | 1-2 | SV | 80.0 | 95.8 | 13° | 201 | RF gap | 0.957 | 1.122 | 0.907 | Michael Soroka |
| 2026-09-27 | Out ground ball | 0-2 | FF | 94.7 | 86.9 | -15° | 12 | Infield | 0.091 | 0.103 | 0.089 | Michael Soroka |
| 2026-09-27 | Out line drive | 1-2 | SV | 79.8 | 85.7 | 27° | 301 | RF | 0.069 | 0.127 | 0.079 | Michael Soroka |
| 2026-09-26 | Out fly ball | 1-2 | SL | 86.0 | 75.8 | 51° | 217 | LF gap | 0.060 | 0.079 | 0.055 | Dennis Santana |
| 2026-09-26 | Out ground ball | 3-1 | FF | 99.8 | 101.5 | 0° | 52 | Infield | 0.414 | 0.467 | 0.386 | Juan Morillo |
| 2026-09-26 | Out popup | 0-0 | CH | 87.0 | 27.0 | 70° | 28 | RF corner | 0.049 | 0.049 | 0.044 | Jose Cabrera |
| 2026-09-26 | Triple line drive | 1-1 | CH | 90.5 | 92.3 | 19° | 291 | RF gap | 0.440 | 0.553 | 0.403 | Jonathan Loáisiga |
| 2026-09-26 | Single line drive | 0-2 | FC | 94.7 | 94.3 | 16° | 232 | RF | 0.780 | 0.952 | 0.746 | Taylor Clarke |
| 2026-09-25 | Walk | 3-1 | FF | 93.3 | — | — | — | — | — | — | 0.698 | Brandon Pfaadt |
| 2026-09-25 | Out ground ball | 0-0 | CH | 85.1 | 79.7 | 6° | 85 | Infield | 0.326 | 0.379 | 0.314 | Brandon Pfaadt |
| 2026-09-25 | Out ground ball | 1-1 | FC | 92.0 | 91.3 | 4° | 76 | Infield | 0.417 | 0.470 | 0.391 | Brandon Pfaadt |
| 2026-09-25 | Single line drive | 1-2 | CH | 86.1 | 68.0 | 24° | 201 | LF gap | 0.960 | 1.005 | 0.870 | Brandon Pfaadt |
| 2026-09-24 | Out ground ball | 1-2 | SL | 87.8 | 94.5 | -20° | 6 | Infield | 0.143 | 0.158 | 0.129 | Justin Wrobleski |
| 2026-09-24 | Sac Fly fly ball | 0-0 | SL | 89.6 | 85.6 | 36° | 322 | CF | — | — | 0.015 | Tyler Glasnow |
| 2026-09-24 | Strikeout looking | 0-2 | FF | 97.4 | — | — | — | — | — | — | 0.000 | Tyler Glasnow |
| 2026-09-24 | Strikeout looking | 3-2 | FF | 97.1 | — | — | — | — | — | — | 0.000 | Tyler Glasnow |
| 2026-09-23 | Fielder's Choice ground ball | 1-1 | ST | 83.9 | 68.8 | 5° | 67 | RF corner | 0.213 | 0.244 | 0.195 | Blake Treinen |
| 2026-09-23 | Hit By Pitch | 0-0 | SI | 92.7 | — | — | — | — | — | — | 0.729 | Kris Bubic |
| 2026-09-23 | Fielder's Choice ground ball | 0-0 | CU | 76.4 | 32.6 | -49° | 2 | Infield | 0.319 | 0.322 | 0.287 | Yoshinobu Yamamoto |
| 2026-09-23 | Hit By Pitch | 0-1 | FC | 92.8 | — | — | — | — | — | — | 0.729 | Yoshinobu Yamamoto |
| 2026-09-23 | Force Out ground ball | 0-2 | FS | 90.8 | 85.9 | -8° | 13 | Infield | 0.111 | 0.128 | 0.100 | Yoshinobu Yamamoto |
| 2026-09-22 | Strikeout swinging | 3-2 | SL | 88.5 | — | — | — | — | — | — | 0.000 | Edwin Díaz |
| 2026-09-22 | Out ground ball | 0-1 | SI | 97.0 | 79.2 | -12° | 10 | Infield | 0.078 | 0.098 | 0.076 | Blake Treinen |
| 2026-09-22 | Force Out ground ball | 0-1 | CH | 87.6 | 98.9 | -10° | 12 | Infield | 0.279 | 0.302 | 0.251 | Brock Stewart |
| 2026-09-20 | Out fly ball | 0-0 | FF | 95.1 | 92.0 | 46° | 280 | LF | 0.009 | 0.021 | 0.012 | Bradley Blalock |
| 2026-09-20 | Out popup | 1-0 | SI | 96.7 | 94.1 | 66° | 163 | CF | 0.009 | 0.009 | 0.008 | Sandy Alcantara |
| 2026-09-20 | Single line drive | 0-0 | SI | 96.2 | 100.9 | 19° | 286 | RF | 0.389 | 0.729 | 0.468 | Sandy Alcantara |
| 2026-09-20 | Out popup | 1-1 | FF | 96.7 | 93.2 | 77° | 90 | Infield | 0.011 | 0.014 | 0.012 | Sandy Alcantara |
| 2026-09-19 | Out ground ball | 0-0 | FF | 98.6 | 86.2 | -10° | 16 | Infield | 0.136 | 0.167 | 0.129 | Victor Vodnik |
| 2026-09-19 | Double line drive | 0-2 | FF | 99.4 | 84.0 | 21° | 258 | LF corner | 0.637 | 0.761 | 0.594 | Michael Petersen |
| 2026-09-19 | Out ground ball | 0-2 | FF | 99.0 | 66.1 | 11° | 115 | Infield | 0.254 | 0.291 | 0.229 | Eury Pérez |
| 2026-09-19 | Strikeout swinging | 1-2 | CU | 83.4 | — | — | — | — | — | — | 0.000 | Eury Pérez |
| 2026-09-19 | Out fly ball | 0-1 | FF | 96.6 | 92.7 | 53° | 250 | CF | 0.006 | 0.011 | 0.007 | Eury Pérez |
| 2026-09-18 | Strikeout looking | 1-2 | SI | 94.9 | — | — | — | — | — | — | 0.000 | Dax Fulton |
| 2026-09-18 | Out fly ball | 3-2 | FF | 98.9 | 92.4 | 48° | 272 | LF gap | 0.001 | 0.001 | 0.000 | Josh Ekness |
| 2026-09-18 | Single ground ball | 1-1 | FF | 96.0 | 88.8 | 0° | 58 | RF gap | 0.335 | 0.378 | 0.302 | Tyler Zuber |
| 2026-09-18 | Strikeout looking | 1-2 | FF | 96.1 | — | — | — | — | — | — | 0.000 | Tyler Phillips |
| 2026-09-18 | Single ground ball | 2-1 | SI | 94.9 | 53.9 | -60° | 2 | RF corner | 0.276 | 0.279 | 0.248 | Tyler Phillips |
| 2026-09-17 | Strikeout swinging | 2-2 | CU | 78.2 | — | — | — | — | — | — | 0.000 | Brennan Bernardino |
| 2026-09-17 | Single ground ball | 1-1 | FC | 92.4 | 90.8 | 5° | 89 | Infield | 0.434 | 0.477 | 0.396 | Zach Agnos |
| 2026-09-17 | Out fly ball | 1-2 | CU | 81.6 | 80.3 | 46° | 272 | RF corner | 0.017 | 0.017 | 0.015 | Tanner Gordon |
| 2026-09-17 | Single line drive | 1-2 | FF | 93.8 | 80.7 | 22° | 255 | RF gap | 0.689 | 0.757 | 0.620 | Tanner Gordon |
| 2026-09-17 | Single line drive | 2-2 | FF | 94.4 | 84.3 | 21° | 251 | LF | 0.637 | 0.761 | 0.594 | Tanner Gordon |
| 2026-09-16 | Out ground ball | 0-0 | SI | 89.9 | 89.1 | 1° | 56 | RF corner | 0.360 | 0.387 | 0.324 | Jimmy Herget |
| 2026-09-16 | Single line drive | 0-2 | CH | 82.8 | 94.9 | 12° | 203 | RF | 0.911 | 1.081 | 0.873 | Nick Frasso |
| 2026-09-16 | Triple fly ball | 1-0 | ST | 85.9 | 98.5 | 29° | 412 | RF gap | 0.426 | 1.420 | 0.756 | Mason Adams |
| 2026-09-16 | Out line drive | 1-0 | SI | 92.7 | 99.2 | 20° | 341 | CF | 0.331 | 0.619 | 0.401 | Mason Adams |
| 2026-09-16 | Walk | 3-2 | FF | 94.6 | — | — | — | — | — | — | 0.699 | Mason Adams |
| 2026-09-15 | Single ground ball | 1-2 | CH | 85.5 | 62.6 | -15° | 7 | Infield | 0.056 | 0.068 | 0.050 | Ryan Feltner |
| 2026-09-15 | Out ground ball | 0-1 | CH | 83.4 | 77.4 | -3° | 27 | RF corner | 0.098 | 0.107 | 0.095 | Ryan Feltner |
| 2026-09-14 | Double line drive | 2-1 | FF | 94.3 | 105.6 | 17° | 310 | RF | 0.531 | 1.053 | 0.660 | Juan Mejia |
| 2026-09-14 | Walk | 3-1 | FF | 94.0 | — | — | — | — | — | — | 0.699 | Mark Manfredi |
| 2026-09-14 | Out line drive | 1-1 | SI | 91.3 | 96.1 | 11° | 169 | RF gap | 0.851 | 0.987 | 0.804 | Tomoyuki Sugano |
| 2026-09-14 | Out popup | 3-2 | FS | 86.7 | 68.9 | 60° | 167 | RF | 0.011 | 0.013 | 0.012 | Tomoyuki Sugano |
| 2026-09-14 | Out ground ball | 0-2 | FS | 86.9 | 50.6 | -19° | 3 | Infield | 0.133 | 0.139 | 0.122 | Tomoyuki Sugano |
| 2026-09-13 | Strikeout swinging | 1-2 | FF | 90.6 | — | — | — | — | — | — | 0.000 | Matt Wilkinson |
| 2026-09-13 | Out ground ball | 3-2 | CH | 84.1 | 66.1 | 1° | 34 | RF corner | 0.150 | 0.165 | 0.139 | Logan Webb |
| 2026-09-13 | Out ground ball | 1-1 | CH | 85.7 | 45.6 | -71° | 1 | RF corner | 0.295 | 0.298 | 0.272 | Logan Webb |
| 2026-09-13 | Single line drive | 2-2 | SI | 91.8 | 97.5 | 17° | 265 | CF | 0.523 | 0.790 | 0.557 | Logan Webb |
| 2026-09-12 | Out ground ball | 3-2 | FF | 95.3 | 80.0 | 9° | 108 | Infield | 0.369 | 0.423 | 0.356 | Jason Foley |
| 2026-09-12 | Out ground ball | 3-1 | SI | 95.8 | 82.5 | -19° | 5 | Infield | 0.081 | 0.098 | 0.080 | Joel Kuhnel |
| 2026-09-12 | Sac Fly line drive | 0-0 | SL | 85.4 | 99.0 | 18° | 311 | CF | — | — | 0.393 | Cesar Perdomo |
| 2026-09-12 | Single ground ball | 1-1 | FF | 93.9 | 93.9 | 2° | 75 | LF gap | 0.429 | 0.548 | 0.431 | Cesar Perdomo |
| 2026-09-12 | Out popup | 3-2 | FF | 92.3 | 87.4 | 69° | 152 | CF | 0.006 | 0.006 | 0.005 | Cesar Perdomo |
| 2026-09-11 | Out ground ball | 2-1 | SL | 84.9 | 71.3 | 9° | 94 | RF corner | 0.295 | 0.335 | 0.280 | Yunior Marte |
| 2026-09-11 | Walk | 3-2 | FF | 95.5 | — | — | — | — | — | — | 0.699 | Yunior Marte |
| 2026-09-11 | Triple fly ball | 0-0 | CH | 88.7 | 102.0 | 25° | 382 | RF | 0.660 | 2.125 | 1.144 | Anthony Molina |
| 2026-09-11 | Single line drive | 1-1 | FF | 96.8 | 87.5 | 12° | 193 | LF gap | 0.711 | 0.840 | 0.701 | Anthony Molina |
| 2026-09-08 | Strikeout swinging | 3-2 | SL | 86.9 | — | — | — | — | — | — | 0.000 | Clayton Beeter |
| 2026-09-08 | Out fly ball | 2-1 | FF | 92.0 | 96.6 | 58° | 223 | RF gap | 0.011 | 0.011 | 0.010 | Zak Kent |
| 2026-09-08 | Out ground ball | 2-1 | FF | 96.0 | 93.1 | 6° | 109 | Infield | 0.503 | 0.577 | 0.477 | Riley Cornelio |
| 2026-09-07 | Out fly ball | 1-0 | FF | 92.7 | 84.5 | 42° | 298 | LF gap | 0.006 | 0.009 | 0.005 | Jake Irvin |
| 2026-09-07 | Out fly ball | 0-1 | FF | 92.6 | 88.2 | 37° | 295 | LF gap | 0.011 | 0.025 | 0.013 | Jake Irvin |
| 2026-09-07 | Out fly ball | 2-2 | FF | 93.8 | 88.0 | 39° | 300 | LF gap | 0.006 | 0.011 | 0.005 | Jake Irvin |
| 2026-09-06 | Out line drive | 0-0 | FF | 96.5 | 92.8 | 25° | 316 | RF gap | 0.140 | 0.296 | 0.185 | Gerrit Cole |
| 2026-09-06 | Strikeout swinging | 0-2 | FF | 97.9 | — | — | — | — | — | — | 0.000 | Gerrit Cole |
| 2026-09-06 | Single line drive | 2-2 | SL | 88.1 | 94.5 | 15° | 213 | RF gap | 0.883 | 1.024 | 0.815 | Gerrit Cole |
| 2026-09-02 | Out ground ball | 2-2 | FS | 83.2 | 75.6 | -8° | 16 | Infield | 0.122 | 0.139 | 0.125 | Emilio Pagán |
| 2026-09-02 | Strikeout swinging | 0-2 | CU | 88.4 | — | — | — | — | — | — | 0.000 | Pierce Johnson |
| 2026-09-01 | Walk | 3-1 | SI | 99.1 | — | — | — | — | — | — | 0.698 | Luis Mey |
| 2026-08-31 | Strikeout looking | 1-2 | ST | 84.3 | — | — | — | — | — | — | 0.000 | Tejay Antone |
| 2026-08-31 | Out ground ball | 0-1 | SL | 83.4 | 81.7 | -16° | 7 | Infield | 0.087 | 0.099 | 0.078 | Tony Santillan |
| 2026-08-31 | Out popup | 1-1 | SL | 85.1 | 67.2 | 75° | 83 | LF corner | 0.006 | 0.006 | 0.005 | Julian Garcia |
| 2026-08-31 | Single ground ball | 0-0 | SI | 89.8 | 86.4 | 9° | 147 | RF gap | 0.426 | 0.467 | 0.383 | Brady Singer |
| 2026-08-31 | Single line drive | 2-1 | SL | 83.6 | 95.3 | 11° | 190 | CF | 0.834 | 0.967 | 0.802 | Brady Singer |
| 2026-08-30 | Out ground ball | 2-2 | FC | 91.9 | 100.2 | -6° | 28 | Infield | 0.344 | 0.361 | 0.310 | Drew Rasmussen |
| 2026-08-30 | Single line drive | 0-1 | CH | 89.1 | 89.2 | 17° | 251 | LF gap | 0.877 | 1.017 | 0.825 | Drew Rasmussen |
| 2026-08-29 | Out line drive | 0-1 | CH | 85.6 | 92.4 | 20° | 292 | RF gap | 0.269 | 0.372 | 0.260 | Kevin Kelly |
| 2026-08-29 | Single line drive | 0-2 | ST | 80.6 | 64.9 | 27° | 203 | RF | 0.894 | 0.965 | 0.814 | Garrett Cleavinger |
| 2026-08-29 | Single line drive | 1-1 | FC | 90.4 | 101.9 | 16° | 240 | RF | 0.540 | 0.831 | 0.581 | Nick Martinez |
| 2026-08-29 | Single ground ball | 0-1 | CH | 78.7 | 78.9 | 3° | 59 | RF | 0.254 | 0.300 | 0.243 | Nick Martinez |
| 2026-08-25 | Single line drive | 0-0 | FF | 96.2 | 104.3 | 18° | 249 | RF | 0.506 | 0.942 | 0.608 | Paul Skenes |
| 2026-08-25 | Sac Bunt ground ball | 0-0 | FF | 97.3 | 30.7 | -9° | 12 | Infield | — | — | — | Paul Skenes |
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 | 2.000 | 7.000 | 12.000 | 18.000 | 28.000 | 41.000 | 63.000 | 84.000 | 113.000 | 176.000 | 210.000 |
| air_ball_rate | · | · | · | · | · | 0.485 | 0.480 | 0.456 | 0.495 | 0.489 | 0.506 |
| appearances | 1.000 | 2.000 | 3.000 | 5.000 | 7.000 | 10.000 | 15.000 | 20.000 | 30.000 | 50.000 | 64.000 |
| ba | 0.000 | 0.000 | 0.182 | 0.176 | 0.259 | 0.222 | 0.259 | 0.276 | 0.304 | 0.270 | · |
| babip | 0.000 | 0.000 | 0.222 | 0.200 | 0.280 | 0.242 | 0.300 | 0.309 | 0.341 | 0.309 | 0.308 |
| babip_den | 1.000 | 5.000 | 9.000 | 15.000 | 25.000 | 33.000 | 50.000 | 68.000 | 91.000 | 139.000 | 159.000 |
| babip_num | 0.000 | 0.000 | 2.000 | 3.000 | 7.000 | 8.000 | 15.000 | 21.000 | 31.000 | 43.000 | 49.000 |
| barrel | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 3.000 | 4.000 | 7.000 |
| barrel_per_ab | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.012 | 0.018 | 0.011 | 0.014 |
| bat_speed | 57.080 | 58.787 | 62.443 | 62.689 | 62.838 | 62.841 | 63.441 | 64.037 | 63.843 | 63.825 | 64.053 |
| bip_per_pa | 0.500 | 0.714 | 0.750 | 0.833 | 0.893 | 0.805 | 0.794 | 0.810 | 0.805 | 0.790 | 0.762 |
| 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 | 1.000 | 3.000 | 6.000 | 6.000 | 13.000 | 19.000 | 38.000 | 46.000 | 61.000 | 103.000 | 126.000 |
| chase_rate | 0.200 | 0.231 | 0.207 | 0.158 | 0.245 | 0.264 | 0.345 | 0.299 | 0.302 | 0.313 | 0.313 |
| contact | 2.000 | 7.000 | 12.000 | 18.000 | 28.000 | 41.000 | 63.000 | 84.000 | 113.000 | 176.000 | 210.000 |
| estimated_ba_using_speedangle | 0.014 | 0.085 | 0.184 | 0.191 | 0.258 | 0.271 | 0.263 | 0.275 | 0.298 | 0.293 | 0.296 |
| estimated_ba_using_speedangle_sum | 0.014 | 0.426 | 1.656 | 2.860 | 6.443 | 8.932 | 13.129 | 18.690 | 27.075 | 40.768 | 47.316 |
| estimated_slg_using_speedangle | 0.019 | 0.114 | 0.211 | 0.258 | 0.325 | 0.328 | 0.318 | 0.355 | 0.394 | 0.379 | 0.392 |
| estimated_woba_using_speedangle | 0.015 | 0.085 | 0.173 | 0.194 | 0.251 | 0.260 | 0.251 | 0.278 | 0.303 | 0.295 | 0.300 |
| estimated_woba_using_speedangle_sum | 0.019 | 0.569 | 1.900 | 3.870 | 8.132 | 10.838 | 15.911 | 24.113 | 35.832 | 52.711 | 62.727 |
| ev_max | 88.000 | 92.650 | 94.767 | 95.680 | 97.443 | 95.790 | 95.680 | 96.150 | 96.800 | 94.923 | 93.492 |
| fly_ball | 1.000 | 3.000 | 4.000 | 5.000 | 7.000 | 8.000 | 12.000 | 13.000 | 18.000 | 28.000 | 35.000 |
| ground_ball | 0.000 | 1.000 | 4.000 | 5.000 | 8.000 | 14.000 | 21.000 | 30.000 | 38.000 | 59.000 | 65.000 |
| hard_hit | 0.000 | 1.000 | 2.000 | 4.000 | 8.000 | 9.000 | 13.000 | 19.000 | 27.000 | 38.000 | 49.000 |
| hh_ab | 0.000 | 0.143 | 0.167 | 0.222 | 0.286 | 0.220 | 0.206 | 0.226 | 0.239 | 0.216 | 0.233 |
| hit | 0.000 | 0.000 | 2.000 | 3.000 | 7.000 | 8.000 | 15.000 | 21.000 | 31.000 | 43.000 | 50.000 |
| hit_distance | 190.000 | 184.200 | 157.889 | 171.200 | 173.480 | 154.818 | 155.760 | 153.441 | 160.813 | 155.964 | 159.644 |
| hr | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 |
| hr_per_fb | · | · | · | · | · | · | · | · | 0.000 | 0.000 | 0.012 |
| hr_platoon | · | · | · | · | · | · | · | 0.000 | 0.000 | 0.000 | 1.000 |
| hr_rate | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.005 |
| iso | 0.000 | 0.000 | 0.000 | 0.000 | 0.074 | 0.056 | 0.052 | 0.079 | 0.078 | 0.082 | · |
| la_contact | 1.000 | 5.000 | 9.000 | 15.000 | 25.000 | 33.000 | 50.000 | 68.000 | 91.000 | 139.000 | 160.000 |
| launch_speed | 88.000 | 77.180 | 80.167 | 80.693 | 82.104 | 80.576 | 82.350 | 82.535 | 83.292 | 82.529 | 83.145 |
| launch_speed_angle_sum | 63.000 | 42.400 | 23.333 | 25.067 | 23.840 | 18.000 | 18.740 | 15.824 | 16.495 | 14.964 | 15.431 |
| launch_speed_sum | 88.000 | 463.500 | 1397.800 | 1950.300 | 3106.900 | 4243.700 | 7112.200 | 9241.900 | 12263.000 | 18666.000 | 23208.500 |
| line_drive | 0.000 | 0.000 | 0.000 | 3.000 | 7.000 | 8.000 | 12.000 | 18.000 | 27.000 | 40.000 | 46.000 |
| out_of_zone | 5.000 | 13.000 | 29.000 | 38.000 | 53.000 | 72.000 | 110.000 | 154.000 | 202.000 | 329.000 | 402.000 |
| pull | 0.000 | 1.000 | 4.000 | 9.000 | 17.000 | 22.000 | 27.000 | 37.000 | 51.000 | 83.000 | 93.000 |
| slg | 0.000 | 0.000 | 0.182 | 0.176 | 0.333 | 0.278 | 0.310 | 0.355 | 0.382 | 0.352 | · |
| slug_window_ab | 0.000 | 0.000 | 0.000 | 0.111 | 0.071 | 0.049 | 0.063 | 0.107 | 0.115 | 0.097 | 0.105 |
| square_per_ab | 0.500 | 0.286 | 0.333 | 0.389 | 0.536 | 0.463 | 0.508 | 0.500 | 0.531 | 0.523 | 0.486 |
| squared_up | 1.000 | 2.000 | 5.000 | 8.000 | 17.000 | 23.000 | 43.000 | 54.000 | 79.000 | 125.000 | 145.000 |
| strikeout | 1.000 | 2.000 | 2.000 | 2.000 | 2.000 | 4.000 | 9.000 | 10.000 | 14.000 | 25.000 | 35.000 |
| strikeout_rate | 0.500 | 0.286 | 0.167 | 0.111 | 0.071 | 0.098 | 0.143 | 0.119 | 0.124 | 0.142 | 0.167 |
| sweet_spot | 0.000 | 1.000 | 4.000 | 7.000 | 13.000 | 14.000 | 23.000 | 33.000 | 48.000 | 75.000 | 98.000 |
| sweet_spot_per_ab | 0.000 | 0.000 | 0.083 | 0.222 | 0.321 | 0.244 | 0.238 | 0.274 | 0.310 | 0.307 | 0.300 |
| tb | 0.000 | 0.000 | 2.000 | 3.000 | 9.000 | 10.000 | 18.000 | 27.000 | 39.000 | 56.000 | 68.000 |
| tb_platoon | · | · | · | · | · | · | · | 26.000 | 37.000 | 52.000 | 64.000 |
| walk | 0.000 | 0.000 | 1.000 | 1.000 | 1.000 | 2.000 | 2.000 | 4.000 | 6.000 | 12.000 | 15.000 |
| walk_platoon | · | · | · | · | · | · | · | 3.000 | 5.000 | 12.000 | 13.000 |
| walk_rate | 0.000 | 0.000 | 0.083 | 0.056 | 0.036 | 0.049 | 0.032 | 0.048 | 0.053 | 0.068 | 0.071 |
| xbh | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 1.000 | 2.000 | 4.000 | 5.000 | 9.000 | 12.000 |
| xbh_rate | 0.000 | 0.000 | 0.000 | 0.000 | 0.036 | 0.024 | 0.032 | 0.048 | 0.044 | 0.051 | 0.057 |
| z_swing_rate | · | · | · | · | · | 0.671 | 0.683 | 0.688 | 0.703 | 0.670 | 0.676 |
| zone_rate | · | · | · | · | · | · | 0.528 | 0.510 | 0.509 | 0.491 | 0.494 |