Luis Campusano RHB 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-17 to 2026-10-07 · 329 qualified playersWhere 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.
20 hits · 30 games · 2026-08-17 to 2026-10-07Hover 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-17 to 2026-10-07| Date | Result | Count | Pitch | Velo | Exit Velo | Angle | Dist | Location | xBA | xSLG | xwOBA | Pitcher |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2026-10-07 | Strikeout swinging | 3-2 | CH | 93.5 | — | — | — | — | — | — | 0.000 | Aaron Ashby |
| 2026-10-07 | Reached On Error ground ball | 1-2 | CH | 89.8 | 92.4 | 2° | 59 | Infield | 0.370 | 0.423 | 0.363 | Robert Gasser |
| 2026-10-07 | Strikeout looking | 1-2 | ST | 80.3 | — | — | — | — | — | — | 0.000 | Robert Gasser |
| 2026-10-04 | Out popup | 2-2 | SL | 89.8 | 75.3 | 68° | 118 | RF corner | 0.001 | 0.001 | 0.000 | Abner Uribe |
| 2026-10-04 | Single line drive | 1-2 | ST | 82.0 | 93.1 | 16° | 278 | LF | 0.797 | 0.943 | 0.751 | Logan Henderson |
| 2026-10-04 | Walk | 3-0 | FF | 93.7 | — | — | — | — | — | — | 0.698 | Logan Henderson |
| 2026-10-03 | Walk | 3-0 | SI | 95.8 | — | — | — | — | — | — | 0.698 | DL Hall |
| 2026-10-03 | Out fly ball | 1-1 | SI | 98.6 | 85.4 | 31° | 289 | RF | 0.037 | 0.076 | 0.047 | Aaron Ashby |
| 2026-10-03 | Grounded Into DP ground ball | 2-2 | FF | 100.8 | 97.0 | -6° | 20 | Infield | 0.224 | 0.251 | 0.209 | Jacob Misiorowski |
| 2026-10-03 | Single ground ball | 0-1 | FC | 95.2 | 96.7 | 1° | 63 | RF | 0.397 | 0.404 | 0.357 | Jacob Misiorowski |
| 2026-09-29 | Grounded Into DP ground ball | 1-1 | SL | 83.1 | 93.1 | -6° | 18 | Infield | 0.169 | 0.194 | 0.154 | Jacob Webb |
| 2026-09-29 | Out ground ball | 0-2 | CU | 79.3 | 85.9 | -4° | 14 | Infield | 0.140 | 0.151 | 0.126 | Aaron Civale |
| 2026-09-29 | Single line drive | 0-2 | FF | 95.8 | 99.3 | 10° | 204 | RF gap | 0.777 | 0.907 | 0.736 | Javier Assad |
| 2026-09-29 | Out fly ball | 2-2 | CU | 73.2 | 81.3 | 46° | 250 | RF gap | 0.014 | 0.014 | 0.013 | Matthew Boyd |
| 2026-09-27 | Out ground ball | 1-2 | FF | 97.5 | 66.1 | -70° | 1 | Infield | 0.211 | 0.211 | 0.190 | Ryne Nelson |
| 2026-09-27 | Walk | 3-0 | FF | 102.5 | — | — | — | — | — | — | 0.698 | Justin Martinez |
| 2026-09-27 | Strikeout swinging | 1-2 | FF | 99.7 | — | — | — | — | — | — | 0.000 | Juan Morillo |
| 2026-09-25 | Out fly ball | 0-0 | SL | 89.9 | 94.0 | 41° | 306 | RF | 0.029 | 0.090 | 0.051 | Zac Gallen |
| 2026-09-25 | Single line drive | 0-0 | ST | 83.8 | 101.4 | 20° | 344 | LF | 0.429 | 0.905 | 0.555 | Brandon Pfaadt |
| 2026-09-25 | Grounded Into DP ground ball | 0-1 | ST | 83.6 | 75.2 | 9° | 121 | LF | 0.303 | 0.368 | 0.310 | Brandon Pfaadt |
| 2026-09-25 | Out ground ball | 1-2 | ST | 84.1 | 45.5 | -14° | 7 | Infield | 0.155 | 0.161 | 0.140 | Brandon Pfaadt |
| 2026-09-22 | Out ground ball | 0-1 | CU | 81.1 | 61.7 | -10° | 5 | Infield | 0.072 | 0.078 | 0.071 | Jack Dreyer |
| 2026-09-22 | Out ground ball | 1-2 | FF | 96.5 | 88.1 | -37° | 4 | Infield | 0.041 | 0.041 | 0.037 | Kyle Hurt |
| 2026-09-22 | Single line drive | 2-2 | FF | 99.2 | 84.5 | 18° | 234 | LF gap | 0.957 | 1.073 | 0.885 | Roki Sasaki |
| 2026-09-22 | Single ground ball | 2-2 | FF | 97.0 | 96.5 | -2° | 37 | CF | 0.309 | 0.342 | 0.281 | Justin Wrobleski |
| 2026-09-19 | Out line drive | 3-2 | FF | 99.3 | 92.6 | 28° | 339 | LF gap | 0.126 | 0.289 | 0.170 | Victor Vodnik |
| 2026-09-19 | Walk | 3-2 | FC | 94.2 | — | — | — | — | — | — | 0.698 | Calvin Faucher |
| 2026-09-19 | Out fly ball | 1-2 | CU | 80.3 | 76.4 | 37° | 258 | RF | 0.091 | 0.105 | 0.082 | Eury Pérez |
| 2026-09-19 | Walk | 3-2 | SL | 88.4 | — | — | — | — | — | — | 0.698 | Eury Pérez |
| 2026-09-19 | Strikeout swinging | 3-2 | FF | 99.1 | — | — | — | — | — | — | 0.000 | Eury Pérez |
| 2026-09-17 | Out popup | 0-2 | FF | 94.4 | 85.1 | 65° | 182 | RF corner | 0.009 | 0.015 | 0.012 | Zach Agnos |
| 2026-09-17 | Strikeout swinging | 2-2 | ST | 84.5 | — | — | — | — | — | — | 0.000 | Zach Agnos |
| 2026-09-17 | Out ground ball | 3-2 | FF | 91.4 | 96.6 | -8° | 20 | Infield | 0.211 | 0.238 | 0.202 | Tanner Gordon |
| 2026-09-17 | Strikeout swinging | 1-2 | CU | 79.6 | — | — | — | — | — | — | 0.000 | Tanner Gordon |
| 2026-09-15 | Out fly ball | 1-2 | FF | 95.6 | 94.1 | 44° | 314 | RF | 0.011 | 0.033 | 0.019 | Ryan Feltner |
| 2026-09-15 | Single line drive | 1-0 | SI | 94.7 | 79.3 | 23° | 274 | LF gap | 0.714 | 0.829 | 0.674 | Ryan Feltner |
| 2026-09-15 | Out ground ball | 0-1 | CH | 85.2 | 102.3 | -20° | 2 | Infield | 0.153 | 0.153 | 0.139 | Kyle Freeland |
| 2026-09-15 | Home Run fly ball | 0-0 | FC | 83.9 | 98.5 | 32° | 386 | LF corner | 0.389 | 1.422 | 0.743 | Kyle Freeland |
| 2026-09-14 | Strikeout swinging | 1-2 | SL | 82.6 | — | — | — | — | — | — | 0.000 | Jordan Romano |
| 2026-09-14 | Out ground ball | 0-0 | FF | 95.3 | 103.9 | 5° | 113 | LF gap | 0.583 | 0.664 | 0.543 | Juan Mejia |
| 2026-09-14 | Strikeout swinging | 2-2 | SI | 94.5 | — | — | — | — | — | — | 0.000 | Blas Castaño |
| 2026-09-14 | Grounded Into DP ground ball | 0-1 | SI | 91.5 | 97.5 | -13° | 11 | Infield | 0.163 | 0.169 | 0.147 | Tomoyuki Sugano |
| 2026-09-14 | Out popup | 2-2 | FF | 93.7 | 78.8 | 65° | 152 | Infield | 0.009 | 0.009 | 0.008 | Tomoyuki Sugano |
| 2026-09-13 | Out popup | 1-1 | CH | 84.1 | 80.8 | 81° | 45 | RF corner | 0.009 | 0.009 | 0.008 | Matt Wilkinson |
| 2026-09-13 | Out ground ball | 1-2 | SI | 92.9 | 89.8 | -29° | 3 | Infield | 0.049 | 0.060 | 0.049 | Logan Webb |
| 2026-09-13 | Out fly ball | 0-0 | SI | 91.9 | 90.3 | 55° | 239 | RF corner | 0.011 | 0.018 | 0.013 | Logan Webb |
| 2026-09-13 | Out popup | 0-0 | SI | 92.1 | 79.2 | 73° | 95 | Infield | 0.001 | 0.001 | 0.000 | Logan Webb |
| 2026-09-12 | Out ground ball | 0-0 | ST | 87.2 | 43.7 | 12° | 54 | Infield | 0.147 | 0.158 | 0.132 | Dylan Smith |
| 2026-09-12 | Out ground ball | 3-1 | SI | 94.2 | 66.5 | 9° | 97 | LF corner | 0.171 | 0.200 | 0.154 | Joel Kuhnel |
| 2026-09-12 | Force Out ground ball | 0-0 | CH | 85.6 | 93.7 | -18° | 7 | Infield | 0.147 | 0.153 | 0.132 | Cesar Perdomo |
| 2026-09-12 | Strikeout looking | 3-2 | CH | 87.9 | — | — | — | — | — | — | 0.000 | Cesar Perdomo |
| 2026-09-12 | Single line drive | 0-1 | FF | 93.2 | 104.0 | 11° | 230 | RF | 0.929 | 1.174 | 0.911 | Cesar Perdomo |
| 2026-09-11 | Out fly ball | 0-0 | SL | 85.0 | 88.3 | 37° | 305 | LF gap | 0.011 | 0.025 | 0.013 | Yunior Marte |
| 2026-09-11 | Out ground ball | 0-1 | FF | 94.5 | 91.3 | -32° | 4 | Infield | 0.045 | 0.054 | 0.040 | Yunior Marte |
| 2026-09-11 | Walk | 3-0 | FF | 91.9 | — | — | — | — | — | — | 0.699 | Yunior Marte |
| 2026-09-11 | Double line drive | 1-0 | SL | 86.6 | 86.4 | 19° | 219 | LF corner | 0.794 | 0.892 | 0.719 | Anthony Molina |
| 2026-09-11 | Strikeout swinging | 2-2 | FF | 97.8 | — | — | — | — | — | — | 0.000 | Anthony Molina |
| 2026-09-09 | Out ground ball | 1-1 | SI | 97.7 | 100.2 | 3° | 96 | Infield | 0.540 | 0.605 | 0.501 | Eddy Yean |
| 2026-09-09 | Walk | 3-2 | FF | 99.1 | — | — | — | — | — | — | 0.699 | Luis Perales |
| 2026-09-09 | Out popup | 3-1 | FF | 92.1 | 78.7 | 60° | 175 | CF | 0.020 | 0.025 | 0.019 | Brad Lord |
| 2026-09-09 | Out fly ball | 1-0 | SL | 88.2 | 95.3 | 38° | 339 | LF gap | 0.066 | 0.234 | 0.118 | Jackson Kent |
| 2026-09-09 | Single line drive | 2-2 | CH | 86.1 | 76.0 | 22° | 241 | LF | 0.974 | 1.045 | 0.890 | Jackson Kent |
| 2026-09-08 | Single fly ball | 1-0 | FF | 97.9 | 72.0 | 40° | 234 | RF gap | 0.343 | 0.385 | 0.309 | Erik Tolman |
| 2026-09-08 | Out popup | 0-2 | SL | 86.2 | 61.2 | 87° | 20 | RF corner | 0.001 | 0.001 | 0.000 | Clayton Beeter |
| 2026-09-08 | Single line drive | 2-1 | SL | 89.0 | 92.1 | 15° | 219 | LF gap | 0.940 | 1.113 | 0.886 | Zak Kent |
| 2026-09-08 | Strikeout swinging | 1-2 | SL | 86.9 | — | — | — | — | — | — | 0.000 | Riley Cornelio |
| 2026-09-07 | Hit By Pitch | 0-0 | ST | 83.5 | — | — | — | — | — | — | 0.729 | Jack Sinclair |
| 2026-09-07 | Out fly ball | 2-2 | SI | 92.0 | 96.6 | 27° | 332 | RF | 0.323 | 0.871 | 0.494 | Jake Irvin |
| 2026-09-07 | Out popup | 3-2 | FC | 89.8 | 79.9 | 55° | 198 | LF | 0.031 | 0.031 | 0.028 | Jake Irvin |
| 2026-09-07 | Strikeout swinging | 1-2 | FF | 92.9 | — | — | — | — | — | — | 0.000 | Jake Irvin |
| 2026-09-06 | Home Run fly ball | 2-1 | FF | 95.4 | 108.1 | 32° | 433 | LF gap | 1.000 | 4.000 | 2.000 | Gerrit Cole |
| 2026-09-06 | Single line drive | 1-1 | KC | 82.5 | 92.2 | 16° | 244 | RF gap | 0.854 | 1.000 | 0.796 | Gerrit Cole |
| 2026-09-06 | Out ground ball | 0-2 | SL | 88.8 | 92.9 | -19° | 7 | Infield | 0.129 | 0.146 | 0.120 | Gerrit Cole |
| 2026-09-05 | Strikeout swinging | 0-2 | ST | 81.9 | — | — | — | — | — | — | 0.000 | John Schreiber |
| 2026-09-05 | Out fly ball | 0-0 | FC | 89.1 | 101.8 | 24° | 366 | RF gap | 0.623 | 1.850 | 1.020 | Michael Fulmer |
| 2026-09-05 | Walk | 3-2 | SL | 87.0 | — | — | — | — | — | — | 0.698 | Carlos Rodón |
| 2026-09-05 | Out popup | 2-2 | CH | 84.6 | 70.9 | 81° | 8 | RF corner | 0.006 | 0.008 | 0.007 | Carlos Rodón |
| 2026-09-04 | Home Run fly ball | 0-0 | SI | 94.3 | 104.6 | 25° | 394 | LF | 0.894 | 3.335 | 1.739 | Paul Blackburn |
| 2026-09-04 | Out fly ball | 1-2 | SI | 93.9 | 71.3 | 40° | 221 | RF | 0.431 | 0.504 | 0.405 | Will Warren |
| 2026-09-04 | Out fly ball | 0-2 | FF | 94.2 | 92.8 | 32° | 356 | LF gap | 0.097 | 0.322 | 0.178 | Max Fried |
| 2026-09-04 | Single ground ball | 0-1 | CU | 74.0 | 74.8 | 11° | 113 | LF | 0.343 | 0.383 | 0.323 | Max Fried |
| 2026-09-02 | Out popup | 1-0 | FF | 95.1 | 80.8 | 77° | 45 | Infield | 0.006 | 0.006 | 0.005 | Emilio Pagán |
| 2026-09-02 | Out fly ball | 2-2 | CU | 87.4 | 81.1 | 41° | 281 | CF | 0.020 | 0.024 | 0.018 | Pierce Johnson |
| 2026-09-02 | Strikeout swinging | 3-2 | FC | 91.5 | — | — | — | — | — | — | 0.000 | Brandon Williamson |
| 2026-09-02 | Strikeout swinging | 3-2 | FC | 90.3 | — | — | — | — | — | — | 0.000 | Brandon Williamson |
| 2026-09-01 | Strikeout swinging | 0-2 | FF | 96.4 | — | — | — | — | — | — | 0.000 | Brock Burke |
| 2026-08-31 | Single ground ball | 2-1 | SV | 85.0 | 103.1 | -3° | 31 | LF | 0.389 | 0.426 | 0.354 | Tony Santillan |
| 2026-08-31 | Out fly ball | 3-2 | ST | 81.7 | 88.4 | 24° | 321 | LF | 0.163 | 0.245 | 0.173 | Julian Garcia |
| 2026-08-31 | Single ground ball | 2-2 | SL | 82.2 | 99.1 | -1° | 40 | LF gap | 0.395 | 0.439 | 0.356 | Brady Singer |
| 2026-08-31 | Strikeout looking | 2-2 | SI | 91.5 | — | — | — | — | — | — | 0.000 | Brady Singer |
| 2026-08-29 | Walk | 3-0 | SI | 90.9 | — | — | — | — | — | — | 0.698 | Kevin Kelly |
| 2026-08-29 | Out ground ball | 1-1 | FC | 88.4 | 65.0 | 9° | 93 | Infield | 0.198 | 0.227 | 0.190 | Nick Martinez |
| 2026-08-29 | Out ground ball | 2-2 | FC | 90.5 | 77.2 | -35° | 3 | Infield | 0.043 | 0.043 | 0.039 | Nick Martinez |
| 2026-08-29 | Strikeout looking | 1-2 | CH | 77.5 | — | — | — | — | — | — | 0.000 | Nick Martinez |
| 2026-08-25 | Out popup | 0-2 | FC | 99.7 | 88.1 | 77° | 47 | Infield | 0.009 | 0.012 | 0.009 | Camilo Doval |
| 2026-08-25 | Strikeout swinging | 2-2 | SL | 89.0 | — | — | — | — | — | — | 0.000 | Paul Skenes |
| 2026-08-25 | Strikeout swinging | 3-2 | SI | 98.6 | — | — | — | — | — | — | 0.000 | Paul Skenes |
| 2026-08-24 | Strikeout swinging | 2-2 | ST | 85.4 | — | — | — | — | — | — | 0.000 | Yohan Ramírez |
| 2026-08-24 | Grounded Into DP ground ball | 1-2 | SI | 99.5 | 104.9 | -2° | 40 | Infield | 0.437 | 0.470 | 0.403 | Mason Montgomery |
| 2026-08-23 | Strikeout swinging | 2-2 | SL | 87.0 | — | — | — | — | — | — | 0.000 | Travis Adams |
| 2026-08-23 | Walk | 3-2 | FC | 94.0 | — | — | — | — | — | — | 0.698 | Kody Funderburk |
| 2026-08-23 | Out popup | 0-0 | SL | 81.0 | 79.0 | 69° | 129 | RF corner | 0.001 | 0.001 | 0.000 | Bailey Ober |
| 2026-08-23 | Out ground ball | 0-1 | SL | 81.1 | 53.7 | -19° | 7 | Infield | 0.080 | 0.083 | 0.075 | Bailey Ober |
| 2026-08-22 | Single ground ball | 1-2 | CU | 83.5 | 94.7 | -13° | 11 | Infield | 0.171 | 0.182 | 0.154 | Tommy Nance |
| 2026-08-22 | Out ground ball | 1-0 | CH | 87.3 | 79.8 | 10° | 120 | LF | 0.366 | 0.389 | 0.329 | A.J. Minter |
| 2026-08-19 | Walk | 3-2 | FF | 95.5 | — | — | — | — | — | — | 0.698 | Kodai Senga |
| 2026-08-19 | Out ground ball | 0-1 | FF | 92.9 | 66.6 | -44° | 3 | Infield | 0.163 | 0.163 | 0.147 | Nate Lavender |
| 2026-08-19 | Strikeout swinging | 0-2 | FF | 95.7 | — | — | — | — | — | — | 0.000 | Robert Stock |
| 2026-08-19 | Walk | 3-2 | FF | 94.1 | — | — | — | — | — | — | 0.698 | Robert Stock |
| 2026-08-17 | Out popup | 0-0 | FF | 92.4 | 89.3 | 67° | 129 | Infield | 0.006 | 0.006 | 0.005 | Nate Lavender |
| 2026-08-17 | Out popup | 3-2 | SI | 94.7 | 61.6 | 56° | 142 | Infield | 0.009 | 0.009 | 0.008 | Nolan McLean |
| 2026-08-17 | Out line drive | 1-1 | SI | 94.4 | 86.3 | 27° | 329 | LF | 0.069 | 0.127 | 0.079 | Nolan McLean |
| 2026-08-17 | Walk | 3-2 | FC | 93.5 | — | — | — | — | — | — | 0.698 | Nolan McLean |
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 | 6.000 | 10.000 | 17.000 | 25.000 | 38.000 | 62.000 | 81.000 | 113.000 | 185.000 | 289.000 |
| air_ball_rate | · | · | · | · | · | 0.444 | 0.400 | 0.458 | 0.395 | 0.455 | 0.462 |
| appearances | 1.000 | 2.000 | 3.000 | 5.000 | 7.000 | 10.000 | 15.000 | 20.000 | 30.000 | 50.000 | 85.000 |
| ba | 0.000 | 0.200 | 0.250 | 0.214 | 0.273 | 0.242 | 0.200 | 0.236 | 0.202 | 0.242 | · |
| babip | 0.000 | 0.333 | 0.333 | 0.273 | 0.316 | 0.269 | 0.227 | 0.250 | 0.233 | 0.294 | 0.299 |
| babip_den | 1.000 | 3.000 | 6.000 | 11.000 | 19.000 | 26.000 | 44.000 | 56.000 | 73.000 | 119.000 | 174.000 |
| babip_num | 0.000 | 1.000 | 2.000 | 3.000 | 6.000 | 7.000 | 10.000 | 14.000 | 17.000 | 35.000 | 52.000 |
| barrel | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 3.000 | 3.000 | 9.000 | 14.000 |
| barrel_per_ab | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.037 | 0.027 | 0.043 | 0.045 |
| bat_speed | 72.483 | 73.225 | 71.194 | 70.834 | 70.243 | 69.952 | 71.425 | 72.134 | 70.513 | 70.393 | 70.078 |
| bip_per_pa | 0.333 | 0.500 | 0.600 | 0.647 | 0.760 | 0.711 | 0.726 | 0.728 | 0.673 | 0.665 | 0.630 |
| blast | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 1.000 | 2.000 | 2.000 |
| blast_per_ab | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.012 | 0.009 | 0.011 | 0.007 |
| chase | 3.000 | 4.000 | 8.000 | 14.000 | 21.000 | 29.000 | 40.000 | 56.000 | 80.000 | 119.000 | 181.000 |
| chase_rate | 0.375 | 0.250 | 0.296 | 0.333 | 0.375 | 0.333 | 0.312 | 0.339 | 0.319 | 0.293 | 0.284 |
| contact | 3.000 | 6.000 | 10.000 | 17.000 | 25.000 | 38.000 | 62.000 | 81.000 | 113.000 | 185.000 | 289.000 |
| estimated_ba_using_speedangle | 0.370 | 0.389 | 0.304 | 0.285 | 0.286 | 0.264 | 0.262 | 0.302 | 0.268 | 0.300 | 0.304 |
| estimated_ba_using_speedangle_sum | 0.370 | 1.168 | 1.826 | 3.137 | 5.432 | 7.136 | 11.805 | 17.820 | 20.345 | 36.853 | 55.390 |
| estimated_slg_using_speedangle | 0.423 | 0.456 | 0.350 | 0.325 | 0.349 | 0.360 | 0.338 | 0.494 | 0.421 | 0.469 | 0.486 |
| estimated_woba_using_speedangle | 0.363 | 0.371 | 0.288 | 0.268 | 0.278 | 0.271 | 0.260 | 0.339 | 0.294 | 0.329 | 0.338 |
| estimated_woba_using_speedangle_sum | 0.423 | 1.367 | 2.098 | 3.575 | 6.633 | 9.717 | 15.212 | 29.161 | 32.013 | 57.661 | 88.429 |
| ev_max | 92.400 | 92.750 | 94.167 | 90.900 | 93.200 | 95.270 | 96.160 | 97.825 | 94.847 | 95.866 | 95.461 |
| fly_ball | 0.000 | 0.000 | 1.000 | 2.000 | 3.000 | 6.000 | 9.000 | 16.000 | 18.000 | 28.000 | 42.000 |
| ground_ball | 1.000 | 1.000 | 3.000 | 6.000 | 11.000 | 13.000 | 21.000 | 23.000 | 32.000 | 48.000 | 75.000 |
| hard_hit | 0.000 | 0.000 | 2.000 | 3.000 | 5.000 | 12.000 | 18.000 | 23.000 | 26.000 | 52.000 | 83.000 |
| hh_ab | 0.000 | 0.000 | 0.200 | 0.176 | 0.200 | 0.316 | 0.290 | 0.284 | 0.230 | 0.281 | 0.287 |
| hit | 0.000 | 1.000 | 2.000 | 3.000 | 6.000 | 8.000 | 11.000 | 17.000 | 20.000 | 39.000 | 60.000 |
| hit_distance | 59.000 | 151.667 | 137.833 | 119.455 | 124.842 | 153.593 | 146.044 | 164.695 | 151.158 | 161.106 | 157.324 |
| hr | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 1.000 | 3.000 | 3.000 | 4.000 | 8.000 |
| hr_per_fb | · | · | · | · | · | · | · | · | 0.100 | 0.071 | 0.095 |
| hr_platoon | · | · | · | · | · | · | · | 2.000 | 2.000 | 2.000 | 2.000 |
| hr_rate | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.026 | 0.016 | 0.037 | 0.027 | 0.022 | 0.028 |
| iso | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.091 | 0.073 | 0.139 | 0.101 | 0.106 | · |
| la_contact | 1.000 | 3.000 | 6.000 | 11.000 | 19.000 | 27.000 | 45.000 | 59.000 | 76.000 | 123.000 | 182.000 |
| launch_speed | 92.400 | 86.933 | 89.983 | 87.782 | 84.868 | 86.570 | 86.262 | 86.322 | 85.417 | 86.693 | 87.000 |
| launch_speed_angle_sum | 2.000 | 28.667 | 18.667 | 8.000 | 5.947 | 11.630 | 15.822 | 19.966 | 19.974 | 16.780 | 14.055 |
| launch_speed_sum | 321.400 | 655.500 | 1017.800 | 1688.400 | 2719.700 | 4323.900 | 6977.900 | 9318.700 | 11871.000 | 19880.500 | 29128.800 |
| line_drive | 0.000 | 1.000 | 1.000 | 2.000 | 4.000 | 6.000 | 9.000 | 11.000 | 12.000 | 28.000 | 42.000 |
| out_of_zone | 8.000 | 16.000 | 27.000 | 42.000 | 56.000 | 87.000 | 128.000 | 165.000 | 251.000 | 406.000 | 637.000 |
| pull | 1.000 | 2.000 | 3.000 | 6.000 | 11.000 | 14.000 | 23.000 | 29.000 | 35.000 | 57.000 | 93.000 |
| slg | 0.000 | 0.200 | 0.250 | 0.214 | 0.273 | 0.333 | 0.273 | 0.375 | 0.303 | 0.348 | · |
| slug_window_ab | 0.000 | 0.000 | 0.000 | 0.000 | 0.040 | 0.053 | 0.032 | 0.074 | 0.053 | 0.092 | 0.090 |
| square_per_ab | 0.333 | 0.333 | 0.400 | 0.353 | 0.400 | 0.395 | 0.339 | 0.309 | 0.239 | 0.308 | 0.298 |
| squared_up | 1.000 | 3.000 | 5.000 | 8.000 | 12.000 | 21.000 | 28.000 | 34.000 | 39.000 | 81.000 | 119.000 |
| strikeout | 2.000 | 2.000 | 2.000 | 3.000 | 3.000 | 6.000 | 10.000 | 13.000 | 23.000 | 38.000 | 66.000 |
| strikeout_rate | 0.667 | 0.333 | 0.200 | 0.176 | 0.120 | 0.158 | 0.161 | 0.160 | 0.204 | 0.205 | 0.228 |
| sweet_spot | 0.000 | 2.000 | 4.000 | 6.000 | 10.000 | 15.000 | 22.000 | 33.000 | 39.000 | 71.000 | 95.000 |
| sweet_spot_per_ab | 0.000 | 0.167 | 0.200 | 0.176 | 0.240 | 0.237 | 0.226 | 0.272 | 0.230 | 0.259 | 0.232 |
| tb | 0.000 | 1.000 | 2.000 | 3.000 | 6.000 | 11.000 | 15.000 | 27.000 | 30.000 | 56.000 | 96.000 |
| tb_platoon | · | · | · | · | · | · | · | 13.000 | 17.000 | 20.000 | 20.000 |
| walk | 0.000 | 1.000 | 2.000 | 3.000 | 3.000 | 5.000 | 7.000 | 8.000 | 13.000 | 22.000 | 38.000 |
| walk_platoon | · | · | · | · | · | · | · | 5.000 | 8.000 | 12.000 | 12.000 |
| walk_rate | 0.000 | 0.167 | 0.200 | 0.176 | 0.120 | 0.132 | 0.113 | 0.099 | 0.115 | 0.119 | 0.131 |
| xbh | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 4.000 | 4.000 | 9.000 | 20.000 |
| xbh_rate | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.026 | 0.032 | 0.049 | 0.035 | 0.049 | 0.069 |
| z_swing_rate | · | · | · | · | · | 0.667 | 0.704 | 0.716 | 0.702 | 0.664 | 0.653 |
| zone_rate | · | · | · | · | · | · | 0.458 | 0.461 | 0.441 | 0.462 | 0.462 |