William Contreras RHB MIL
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-29 to 2026-10-15 · 97 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.
35 hits · 30 games · 2026-08-29 to 2026-10-15Hover 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.
133 PA · 30 games · 2026-08-29 to 2026-10-15| Date | Result | Count | Pitch | Velo | Exit Velo | Angle | Dist | Location | xBA | xSLG | xwOBA | Pitcher |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2026-10-15 | Out ground ball | 1-2 | SL | 90.3 | 88.0 | -1° | 33 | Infield | 0.264 | 0.295 | 0.288 | Edwin Díaz |
| 2026-10-15 | Walk | 3-2 | ST | 88.3 | — | — | — | — | — | — | 0.698 | Evan Phillips |
| 2026-10-15 | Double line drive | 2-1 | FF | 96.0 | 108.4 | 20° | 334 | LF | 0.820 | 2.181 | 1.249 | Tyler Glasnow |
| 2026-10-15 | Strikeout looking | 3-2 | KC | 80.7 | — | — | — | — | — | — | 0.000 | Tyler Glasnow |
| 2026-10-14 | Single line drive | 0-2 | FS | 90.1 | 83.0 | 18° | 227 | RF gap | 0.971 | 1.094 | 0.903 | Roki Sasaki |
| 2026-10-14 | Out ground ball | 2-0 | CH | 86.5 | 99.5 | -13° | 7 | Infield | 0.234 | 0.237 | 0.215 | Blake Snell |
| 2026-10-14 | Strikeout swinging | 1-2 | FF | 97.3 | — | — | — | — | — | — | 0.000 | Blake Snell |
| 2026-10-14 | Strikeout swinging | 0-2 | CU | 83.8 | — | — | — | — | — | — | 0.000 | Blake Snell |
| 2026-10-12 | Walk | 3-0 | SI | 101.3 | — | — | — | — | — | — | 0.698 | Edgardo Henriquez |
| 2026-10-12 | Single line drive | 0-0 | ST | 84.5 | 76.9 | 22° | 232 | LF gap | 0.949 | 1.038 | 0.872 | Brock Stewart |
| 2026-10-12 | Home Run fly ball | 0-1 | FF | 94.8 | 106.3 | 28° | 436 | CF | 1.000 | 4.000 | 2.000 | Kris Bubic |
| 2026-10-12 | Out fly ball | 3-2 | FF | 96.9 | 89.5 | 38° | 335 | RF gap | 0.014 | 0.040 | 0.022 | Yoshinobu Yamamoto |
| 2026-10-12 | Single line drive | 2-2 | SL | 86.8 | 79.6 | 14° | 164 | LF | 0.763 | 0.825 | 0.701 | Yoshinobu Yamamoto |
| 2026-10-11 | Intentional Walk | 3-0 | — | — | — | — | — | — | — | — | — | Tanner Scott |
| 2026-10-11 | Out fly ball | 2-2 | FF | 97.1 | 94.7 | 45° | 299 | RF | 0.009 | 0.023 | 0.013 | Tarik Skubal |
| 2026-10-11 | Strikeout swinging | 3-2 | FF | 98.3 | — | — | — | — | — | — | 0.000 | Tarik Skubal |
| 2026-10-11 | Strikeout swinging | 1-2 | SI | 99.4 | — | — | — | — | — | — | 0.000 | Tarik Skubal |
| 2026-10-07 | Out fly ball | 3-2 | FC | 93.4 | 86.0 | 54° | 202 | RF | 0.017 | 0.027 | 0.018 | Joe Musgrove |
| 2026-10-07 | Single line drive | 0-2 | SL | 88.7 | 95.9 | 16° | 279 | RF gap | 0.691 | 0.936 | 0.698 | Mason Miller |
| 2026-10-07 | Out fly ball | 2-1 | FF | 98.9 | 102.0 | 50° | 274 | RF gap | 0.017 | 0.042 | 0.023 | Bradgley Rodriguez |
| 2026-10-07 | Single ground ball | 3-1 | SI | 95.5 | 108.5 | -2° | 36 | Infield | 0.466 | 0.508 | 0.432 | Walker Buehler |
| 2026-10-07 | Out fly ball | 0-0 | FF | 96.6 | 90.1 | 39° | 304 | RF gap | 0.020 | 0.050 | 0.032 | Walker Buehler |
| 2026-10-06 | Walk | 3-2 | FF | 95.6 | — | — | — | — | — | — | 0.698 | Michael King |
| 2026-10-06 | Single ground ball | 0-0 | FF | 100.0 | 102.0 | -5° | 26 | CF | 0.349 | 0.380 | 0.332 | Bradgley Rodriguez |
| 2026-10-06 | Single ground ball | 0-2 | SL | 85.7 | 98.0 | -7° | 17 | Infield | 0.229 | 0.238 | 0.218 | Jason Adam |
| 2026-10-06 | Home Run fly ball | 2-2 | ST | 80.4 | 102.8 | 40° | 365 | LF | 0.223 | 0.847 | 0.432 | Nick Pivetta |
| 2026-10-06 | Out fly ball | 1-1 | FF | 93.6 | 97.2 | 58° | 231 | CF | 0.011 | 0.011 | 0.010 | Nick Pivetta |
| 2026-10-04 | Out fly ball | 1-0 | FF | 101.4 | 98.2 | 64° | 183 | Infield | 0.014 | 0.017 | 0.013 | Mason Miller |
| 2026-10-04 | Force Out ground ball | 1-0 | FS | 83.0 | 103.9 | -4° | 21 | Infield | 0.358 | 0.383 | 0.322 | Yuki Matsui |
| 2026-10-04 | Out ground ball | 0-2 | CH | 88.1 | 70.9 | -16° | 5 | Infield | 0.036 | 0.036 | 0.032 | Michael King |
| 2026-10-04 | Strikeout swinging | 1-2 | FF | 96.9 | — | — | — | — | — | — | 0.000 | Michael King |
| 2026-10-03 | Home Run fly ball | 3-2 | SI | 100.1 | 103.7 | 27° | 406 | RF gap | 0.849 | 3.171 | 1.646 | Adrian Morejon |
| 2026-10-03 | Out line drive | 0-0 | FF | 93.0 | 108.0 | 14° | 283 | LF gap | 0.703 | 1.072 | 0.750 | Yuki Matsui |
| 2026-10-03 | Walk | 3-2 | SI | 94.3 | — | — | — | — | — | — | 0.698 | Robbie Ray |
| 2026-10-03 | Out ground ball | 1-0 | SI | 93.4 | 77.0 | -12° | 9 | Infield | 0.049 | 0.060 | 0.044 | Robbie Ray |
| 2026-09-26 | Out fly ball | 1-0 | SI | 94.9 | 86.9 | 43° | 285 | CF | 0.006 | 0.013 | 0.008 | Gordon Graceffo |
| 2026-09-26 | Single line drive | 0-1 | SL | 85.2 | 97.1 | 13° | 243 | RF | 0.954 | 1.133 | 0.907 | Gordon Graceffo |
| 2026-09-26 | Strikeout looking | 3-2 | SL | 85.3 | — | — | — | — | — | — | 0.000 | Quinn Mathews |
| 2026-09-26 | Walk | 3-2 | SI | 92.8 | — | — | — | — | — | — | 0.698 | Quinn Mathews |
| 2026-09-25 | Single ground ball | 3-2 | SI | 96.2 | 103.1 | 0° | 43 | LF gap | 0.454 | 0.482 | 0.410 | Cade Winquest |
| 2026-09-25 | Out fly ball | 0-1 | SI | 94.8 | 87.7 | 34° | 312 | RF | 0.023 | 0.050 | 0.030 | Brycen Mautz |
| 2026-09-25 | Out fly ball | 2-0 | SI | 91.2 | 100.3 | 25° | 341 | RF | 0.474 | 1.316 | 0.733 | Michael McGreevy |
| 2026-09-25 | Out line drive | 0-1 | CH | 87.5 | 101.7 | 20° | 351 | LF | 0.506 | 1.037 | 0.642 | Michael McGreevy |
| 2026-09-25 | Out ground ball | 1-1 | SI | 91.2 | 88.8 | -24° | 5 | Infield | 0.051 | 0.051 | 0.046 | Michael McGreevy |
| 2026-09-24 | Out ground ball | 1-0 | ST | 82.7 | 81.0 | -5° | 22 | Infield | 0.137 | 0.164 | 0.143 | Andrew Painter |
| 2026-09-24 | Out fly ball | 0-2 | ST | 83.5 | 72.8 | 41° | 229 | LF gap | 0.300 | 0.385 | 0.307 | Andrew Painter |
| 2026-09-24 | Walk | 3-1 | SL | 88.5 | — | — | — | — | — | — | 0.698 | Andrew Painter |
| 2026-09-23 | Reached On Error ground ball | 0-1 | FF | 96.5 | 76.5 | -9° | 8 | Infield | 0.055 | 0.066 | 0.050 | Max Lazar |
| 2026-09-23 | Out ground ball | 0-0 | CH | 82.6 | 86.5 | 0° | 45 | Infield | 0.187 | 0.208 | 0.168 | Aaron Nola |
| 2026-09-23 | Single ground ball | 0-0 | KC | 79.1 | 78.1 | 3° | 51 | Infield | 0.174 | 0.199 | 0.157 | Aaron Nola |
| 2026-09-23 | Strikeout swinging | 2-2 | FF | 93.5 | — | — | — | — | — | — | 0.000 | Aaron Nola |
| 2026-09-22 | Strikeout looking | 3-2 | FF | 101.4 | — | — | — | — | — | — | 0.000 | Jhoan Duran |
| 2026-09-22 | Single line drive | 0-0 | SI | 94.6 | 83.3 | 12° | 185 | LF gap | 0.531 | 0.580 | 0.483 | Zack Wheeler |
| 2026-09-22 | Sac Fly line drive | 2-1 | ST | 82.1 | 81.1 | 25° | 283 | LF gap | — | — | 0.273 | Zack Wheeler |
| 2026-09-22 | Strikeout swinging | 2-2 | FS | 89.1 | — | — | — | — | — | — | 0.000 | Zack Wheeler |
| 2026-09-20 | Walk | 3-2 | CU | 85.2 | — | — | — | — | — | — | 0.698 | Grant Wolfram |
| 2026-09-20 | Double Play ground ball | 0-2 | SL | 85.8 | 64.5 | -26° | 3 | Infield | 0.047 | 0.047 | 0.042 | Brandon Young |
| 2026-09-20 | Home Run fly ball | 0-1 | SI | 92.6 | 106.9 | 43° | 403 | LF | 0.363 | 1.422 | 0.733 | Brandon Young |
| 2026-09-20 | Strikeout swinging | 0-2 | SL | 87.8 | — | — | — | — | — | — | 0.000 | Brandon Young |
| 2026-09-19 | Out ground ball | 1-1 | SI | 98.0 | 49.1 | -22° | 6 | Infield | 0.121 | 0.121 | 0.109 | Alex Hoppe |
| 2026-09-19 | Single line drive | 0-1 | CH | 86.9 | 92.7 | 8° | 146 | RF gap | 0.557 | 0.625 | 0.512 | Trevor Rogers |
| 2026-09-19 | Out line drive | 0-1 | FF | 94.6 | 104.6 | 16° | 319 | CF | 0.551 | 0.968 | 0.641 | Trevor Rogers |
| 2026-09-19 | Out ground ball | 0-2 | CH | 86.8 | 45.3 | -64° | 1 | RF corner | 0.219 | 0.219 | 0.197 | Trevor Rogers |
| 2026-09-18 | Double line drive | 1-2 | FF | 95.5 | 111.7 | 9° | 214 | CF | 0.837 | 1.071 | 0.822 | Rico Garcia |
| 2026-09-18 | Out ground ball | 0-0 | SI | 95.2 | 93.4 | 1° | 49 | Infield | 0.370 | 0.407 | 0.333 | Yennier Cano |
| 2026-09-18 | Strikeout swinging | 1-2 | ST | 85.8 | — | — | — | — | — | — | 0.000 | Anthony Nunez |
| 2026-09-18 | Out popup | 2-0 | FF | 91.2 | 86.2 | 79° | 59 | RF corner | 0.003 | 0.003 | 0.003 | Cade Povich |
| 2026-09-18 | Walk | 3-1 | CU | 75.8 | — | — | — | — | — | — | 0.698 | Cade Povich |
| 2026-09-16 | Out line drive | 0-2 | FC | 100.7 | 91.0 | 23° | 303 | RF | 0.160 | 0.301 | 0.192 | Camilo Doval |
| 2026-09-16 | Force Out ground ball | 0-0 | SI | 95.7 | 103.7 | -32° | 3 | Infield | 0.086 | 0.107 | 0.082 | Carmen Mlodzinski |
| 2026-09-16 | Strikeout looking | 0-2 | SL | 90.2 | — | — | — | — | — | — | 0.000 | Jared Jones |
| 2026-09-16 | Single line drive | 2-2 | FF | 97.6 | 95.4 | 15° | 271 | RF gap | 0.874 | 1.072 | 0.838 | Jared Jones |
| 2026-09-16 | Out fly ball | 0-0 | FF | 97.3 | 90.0 | 22° | 302 | LF gap | 0.194 | 0.281 | 0.187 | Jared Jones |
| 2026-09-15 | Out line drive | 1-1 | SL | 90.2 | 81.5 | 28° | 287 | LF | 0.094 | 0.118 | 0.085 | Antwone Kelly |
| 2026-09-15 | Out line drive | 0-1 | FF | 98.4 | 88.4 | 26° | 339 | LF gap | 0.086 | 0.175 | 0.110 | Antwone Kelly |
| 2026-09-15 | Double fly ball | 0-0 | SI | 95.4 | 96.0 | 36° | 332 | RF | 0.137 | 0.476 | 0.249 | Gregory Soto |
| 2026-09-15 | Out ground ball | 2-1 | SL | 83.1 | 102.7 | 1° | 53 | Infield | 0.494 | 0.533 | 0.453 | Brandon Eisert |
| 2026-09-15 | Out line drive | 0-1 | FF | 94.4 | 102.3 | 15° | 306 | CF | 0.654 | 0.934 | 0.679 | Lake Bachar |
| 2026-09-12 | Out ground ball | 0-0 | SI | 94.4 | 92.8 | -19° | 6 | Infield | 0.129 | 0.146 | 0.120 | Tejay Antone |
| 2026-09-12 | Intentional Walk | 3-0 | — | — | — | — | — | — | — | — | — | Graham Ashcraft |
| 2026-09-12 | Home Run fly ball | 0-0 | ST | 81.3 | 101.0 | 26° | 381 | LF | 0.586 | 1.898 | 1.025 | Brady Singer |
| 2026-09-12 | Out popup | 0-2 | ST | 81.5 | 50.5 | 42° | 137 | Infield | 0.063 | 0.066 | 0.057 | Brady Singer |
| 2026-09-12 | Walk | 3-0 | SI | 91.6 | — | — | — | — | — | — | 0.698 | Brady Singer |
| 2026-09-11 | Home Run fly ball | 0-0 | EP | 32.3 | 109.3 | 26° | 388 | LF | 0.977 | 3.824 | 1.956 | — |
| 2026-09-11 | Out line drive | 0-0 | FF | 97.3 | 105.8 | 18° | 344 | CF | 0.537 | 1.076 | 0.673 | Brock Burke |
| 2026-09-11 | Single ground ball | 2-1 | SI | 97.3 | 104.8 | -3° | 33 | CF | 0.398 | 0.427 | 0.358 | Luis Mey |
| 2026-09-11 | Out fly ball | 0-0 | SL | 86.2 | 100.2 | 49° | 285 | LF gap | 0.014 | 0.032 | 0.019 | Julian Garcia |
| 2026-09-11 | Out fly ball | 0-0 | FF | 91.7 | 94.7 | 40° | 338 | CF | 0.034 | 0.105 | 0.053 | Andrew Abbott |
| 2026-09-11 | Sac Fly fly ball | 2-1 | FF | 92.2 | 89.9 | 37° | 328 | CF | — | — | 0.008 | Andrew Abbott |
| 2026-09-09 | Single line drive | 2-2 | SL | 90.6 | 102.0 | 11° | 225 | LF | 0.940 | 1.161 | 0.912 | Daniel Palencia |
| 2026-09-09 | Strikeout looking | 2-2 | FF | 92.9 | — | — | — | — | — | — | 0.000 | Kevin Gausman |
| 2026-09-09 | Home Run fly ball | 0-0 | FS | 86.0 | 102.1 | 26° | 374 | LF corner | 0.686 | 2.396 | 1.262 | Kevin Gausman |
| 2026-09-09 | Walk | 3-2 | CH | 84.3 | — | — | — | — | — | — | 0.699 | Kevin Gausman |
| 2026-09-08 | Intentional Walk | 3-0 | — | — | — | — | — | — | — | — | — | Caleb Thielbar |
| 2026-09-08 | Out fly ball | 0-0 | SL | 88.7 | 101.1 | 58° | 241 | RF gap | 0.023 | 0.040 | 0.029 | Ryan Rolison |
| 2026-09-08 | Single line drive | 1-0 | SI | 94.8 | 110.1 | 6° | 150 | RF | 0.706 | 0.848 | 0.684 | Trent Thornton |
| 2026-09-08 | Strikeout looking | 2-2 | CH | 88.0 | — | — | — | — | — | — | 0.000 | David Peterson |
| 2026-09-08 | Strikeout looking | 2-2 | CH | 87.7 | — | — | — | — | — | — | 0.000 | David Peterson |
| 2026-09-07 | Strikeout looking | 1-2 | SI | 97.6 | — | — | — | — | — | — | 0.000 | Ryan Zeferjahn |
| 2026-09-07 | Out line drive | 0-2 | CH | 77.0 | 100.1 | 19° | 326 | LF gap | 0.351 | 0.673 | 0.428 | Matthew Boyd |
| 2026-09-07 | Strikeout swinging | 1-2 | CH | 77.7 | — | — | — | — | — | — | 0.000 | Matthew Boyd |
| 2026-09-07 | Out popup | 1-1 | FF | 92.9 | 88.2 | 82° | 15 | RF corner | 0.003 | 0.003 | 0.003 | Matthew Boyd |
| 2026-09-05 | Out fly ball | 1-2 | FF | 95.2 | 100.3 | 41° | 348 | CF | 0.134 | 0.481 | 0.257 | Emilio Pagán |
| 2026-09-05 | Strikeout swinging | 1-2 | SL | 85.1 | — | — | — | — | — | — | 0.000 | Tony Santillan |
| 2026-09-05 | Strikeout looking | 3-2 | SI | 94.5 | — | — | — | — | — | — | 0.000 | Tejay Antone |
| 2026-09-05 | Out popup | 0-2 | ST | 83.1 | 81.4 | 64° | 155 | Infield | 0.009 | 0.012 | 0.008 | Andrew Abbott |
| 2026-09-05 | Home Run line drive | 1-1 | FF | 93.3 | 103.6 | 22° | 401 | LF gap | 0.703 | 1.883 | 1.071 | Andrew Abbott |
| 2026-09-04 | Strikeout swinging | 1-2 | FC | 91.1 | — | — | — | — | — | — | 0.000 | Tejay Antone |
| 2026-09-04 | Double line drive | 2-2 | SI | 97.1 | 100.5 | 19° | 339 | LF gap | 0.389 | 0.729 | 0.468 | Luis Mey |
| 2026-09-04 | Fielder's Choice ground ball | 2-1 | SI | 92.6 | 107.0 | -6° | 15 | Infield | 0.332 | 0.365 | 0.306 | Rhett Lowder |
| 2026-09-04 | Walk | 3-0 | SI | 92.8 | — | — | — | — | — | — | 0.698 | Rhett Lowder |
| 2026-09-04 | Out fly ball | 2-2 | SI | 94.1 | 84.1 | 41° | 284 | RF gap | 0.011 | 0.022 | 0.015 | Rhett Lowder |
| 2026-09-03 | Out ground ball | 0-0 | SI | 97.6 | 92.3 | -38° | 2 | Infield | 0.036 | 0.039 | 0.032 | Ryan Zeferjahn |
| 2026-09-03 | Strikeout swinging | 1-2 | FS | 84.2 | — | — | — | — | — | — | 0.000 | Kevin Gausman |
| 2026-09-03 | Strikeout swinging | 0-2 | FS | 83.4 | — | — | — | — | — | — | 0.000 | Kevin Gausman |
| 2026-09-03 | Out popup | 2-1 | FF | 93.6 | 83.5 | 68° | 140 | Infield | 0.011 | 0.021 | 0.015 | Kevin Gausman |
| 2026-09-02 | Strikeout swinging | 1-2 | CU | 75.9 | — | — | — | — | — | — | 0.000 | Caleb Thielbar |
| 2026-09-02 | Out ground ball | 1-2 | FF | 96.0 | 103.0 | -13° | 11 | RF gap | 0.229 | 0.229 | 0.206 | Ryan Rolison |
| 2026-09-02 | Single line drive | 0-0 | FF | 91.9 | 98.9 | 13° | 244 | RF gap | 0.934 | 1.145 | 0.902 | David Peterson |
| 2026-09-02 | Out popup | 0-2 | SL | 85.2 | 75.1 | 65° | 161 | RF | 0.003 | 0.003 | 0.003 | David Peterson |
| 2026-09-02 | Single ground ball | 0-0 | CH | 86.1 | 94.5 | -3° | 23 | Infield | 0.269 | 0.300 | 0.253 | David Peterson |
| 2026-09-01 | Strikeout swinging | 2-2 | FC | 88.8 | — | — | — | — | — | — | 0.000 | Tyler Ferguson |
| 2026-09-01 | Double fly ball | 0-0 | ST | 85.0 | 100.3 | 26° | 390 | RF gap | 0.506 | 1.535 | 0.840 | Ryan Zeferjahn |
| 2026-09-01 | Double ground ball | 0-0 | FF | 93.5 | 90.2 | -16° | 8 | RF corner | 0.094 | 0.105 | 0.085 | Matthew Boyd |
| 2026-09-01 | Out popup | 3-2 | CH | 79.4 | 72.5 | 69° | 132 | RF corner | 0.001 | 0.001 | 0.000 | Matthew Boyd |
| 2026-09-01 | Out fly ball | 0-1 | CH | 80.1 | 100.3 | 35° | 391 | CF | 0.351 | 1.329 | 0.688 | Matthew Boyd |
| 2026-08-31 | Double line drive | 3-1 | FC | 84.3 | 79.5 | 24° | 245 | LF corner | 0.529 | 0.577 | 0.476 | Clay Holmes |
| 2026-08-31 | Walk | 3-2 | ST | 79.7 | — | — | — | — | — | — | 0.699 | Clay Holmes |
| 2026-08-31 | Out line drive | 0-0 | ST | 80.3 | 90.8 | 21° | 295 | LF gap | 0.274 | 0.395 | 0.272 | Clay Holmes |
| 2026-08-29 | Walk | 3-2 | ST | 82.0 | — | — | — | — | — | — | 0.698 | Jakob Junis |
| 2026-08-29 | Single line drive | 0-0 | FF | 93.6 | 84.0 | 19° | 234 | CF | 0.920 | 1.059 | 0.861 | Peyton Gray |
| 2026-08-29 | Strikeout swinging | 3-2 | FS | 84.5 | — | — | — | — | — | — | 0.000 | Cal Quantrill |
| 2026-08-29 | Home Run fly ball | 2-2 | SI | 94.6 | 105.8 | 33° | 409 | LF | 0.806 | 3.167 | 1.617 | Cal Quantrill |
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 | 4.000 | 8.000 | 13.000 | 22.000 | 31.000 | 44.000 | 63.000 | 89.000 | 133.000 | 225.000 | 433.000 |
| air_ball_rate | · | · | · | · | · | 0.677 | 0.614 | 0.631 | 0.626 | 0.581 | 0.541 |
| 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.333 | 0.286 | 0.455 | 0.368 | 0.370 | 0.342 | 0.315 | 0.303 | 0.304 | 0.286 | 0.265 |
| babip | 0.500 | 0.500 | 0.571 | 0.462 | 0.421 | 0.357 | 0.325 | 0.288 | 0.317 | 0.295 | 0.279 |
| babip_den | 2.000 | 4.000 | 7.000 | 13.000 | 19.000 | 28.000 | 40.000 | 59.000 | 82.000 | 149.000 | 301.000 |
| babip_num | 1.000 | 2.000 | 4.000 | 6.000 | 8.000 | 10.000 | 13.000 | 17.000 | 26.000 | 44.000 | 84.000 |
| barrel | 1.000 | 1.000 | 2.000 | 3.000 | 4.000 | 7.000 | 7.000 | 10.000 | 15.000 | 22.000 | 34.000 |
| barrel_per_ab | 0.250 | 0.125 | 0.154 | 0.091 | 0.065 | 0.091 | 0.063 | 0.079 | 0.083 | 0.080 | 0.069 |
| bat_speed | 74.000 | 71.474 | 72.415 | 72.043 | 72.783 | 72.764 | 71.647 | 71.868 | 71.879 | 72.198 | 71.567 |
| bip_per_pa | 0.500 | 0.500 | 0.615 | 0.636 | 0.677 | 0.705 | 0.698 | 0.730 | 0.684 | 0.711 | 0.734 |
| blast | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 | 2.000 |
| blast_per_ab | 0.000 | 0.000 | 0.000 | 0.045 | 0.065 | 0.045 | 0.032 | 0.022 | 0.015 | 0.009 | 0.005 |
| chase | 2.000 | 6.000 | 8.000 | 13.000 | 17.000 | 22.000 | 35.000 | 43.000 | 68.000 | 120.000 | 227.000 |
| chase_rate | 0.182 | 0.316 | 0.267 | 0.265 | 0.274 | 0.253 | 0.294 | 0.289 | 0.288 | 0.276 | 0.279 |
| contact | 4.000 | 8.000 | 13.000 | 22.000 | 31.000 | 44.000 | 63.000 | 89.000 | 133.000 | 225.000 | 433.000 |
| estimated_ba_using_speedangle | 0.542 | 0.572 | 0.627 | 0.445 | 0.355 | 0.372 | 0.336 | 0.331 | 0.338 | 0.312 | 0.303 |
| estimated_ba_using_speedangle_sum | 1.084 | 2.289 | 5.015 | 6.235 | 7.455 | 11.524 | 14.766 | 21.493 | 30.743 | 49.871 | 96.263 |
| estimated_slg_using_speedangle | 1.238 | 0.952 | 1.214 | 0.807 | 0.629 | 0.697 | 0.604 | 0.610 | 0.639 | 0.576 | 0.552 |
| estimated_woba_using_speedangle | 0.768 | 0.664 | 0.781 | 0.533 | 0.420 | 0.453 | 0.406 | 0.402 | 0.416 | 0.382 | 0.365 |
| estimated_woba_using_speedangle_sum | 2.476 | 3.807 | 9.710 | 11.296 | 13.208 | 21.593 | 26.597 | 39.649 | 58.167 | 92.122 | 175.443 |
| ev_max | 108.400 | 103.950 | 104.733 | 106.340 | 106.057 | 105.270 | 101.000 | 102.170 | 102.107 | 102.386 | 101.599 |
| fly_ball | 0.000 | 0.000 | 2.000 | 6.000 | 9.000 | 13.000 | 15.000 | 22.000 | 29.000 | 50.000 | 89.000 |
| ground_ball | 1.000 | 2.000 | 2.000 | 3.000 | 7.000 | 10.000 | 17.000 | 22.000 | 27.000 | 55.000 | 122.000 |
| hard_hit | 2.000 | 3.000 | 4.000 | 8.000 | 15.000 | 23.000 | 25.000 | 36.000 | 51.000 | 90.000 | 161.000 |
| hh_ab | 0.500 | 0.375 | 0.308 | 0.364 | 0.484 | 0.523 | 0.397 | 0.404 | 0.383 | 0.400 | 0.372 |
| hit | 1.000 | 2.000 | 5.000 | 7.000 | 10.000 | 13.000 | 17.000 | 23.000 | 35.000 | 55.000 | 101.000 |
| hit_distance | 183.500 | 150.250 | 221.000 | 225.857 | 190.952 | 202.839 | 181.568 | 196.108 | 201.154 | 188.556 | 176.509 |
| hr | 0.000 | 0.000 | 1.000 | 1.000 | 2.000 | 3.000 | 4.000 | 6.000 | 9.000 | 11.000 | 17.000 |
| hr_per_fb | · | · | · | · | · | · | · | · | 0.158 | 0.118 | 0.099 |
| hr_platoon | · | · | · | · | · | · | · | 5.000 | 6.000 | 7.000 | 12.000 |
| hr_rate | 0.000 | 0.000 | 0.077 | 0.045 | 0.065 | 0.068 | 0.063 | 0.067 | 0.068 | 0.049 | 0.039 |
| iso | 0.333 | 0.143 | 0.364 | 0.211 | 0.259 | 0.263 | 0.241 | 0.276 | 0.296 | 0.229 | 0.186 |
| la_contact | 2.000 | 4.000 | 8.000 | 14.000 | 21.000 | 31.000 | 44.000 | 65.000 | 91.000 | 160.000 | 318.000 |
| launch_speed | 98.200 | 94.725 | 91.400 | 93.457 | 94.352 | 94.700 | 89.957 | 91.529 | 92.314 | 92.171 | 90.703 |
| launch_speed_angle_sum | 9.500 | 6.000 | 15.750 | 23.429 | 21.810 | 19.290 | 14.091 | 16.292 | 19.176 | 17.188 | 14.723 |
| launch_speed_sum | 608.700 | 1027.800 | 1691.300 | 2608.200 | 3625.200 | 5324.200 | 6925.400 | 9203.300 | 13742.600 | 24796.400 | 46520.400 |
| line_drive | 1.000 | 2.000 | 4.000 | 5.000 | 5.000 | 8.000 | 12.000 | 19.000 | 28.000 | 43.000 | 83.000 |
| out_of_zone | 11.000 | 19.000 | 30.000 | 49.000 | 62.000 | 87.000 | 119.000 | 149.000 | 236.000 | 434.000 | 813.000 |
| pull | 2.000 | 3.000 | 5.000 | 5.000 | 9.000 | 14.000 | 20.000 | 27.000 | 36.000 | 64.000 | 121.000 |
| slg | 0.667 | 0.429 | 0.818 | 0.579 | 0.630 | 0.605 | 0.556 | 0.579 | 0.600 | 0.516 | 0.451 |
| slug_window_ab | 0.500 | 0.250 | 0.231 | 0.227 | 0.194 | 0.227 | 0.175 | 0.180 | 0.173 | 0.160 | 0.148 |
| square_per_ab | 0.250 | 0.375 | 0.385 | 0.500 | 0.548 | 0.523 | 0.444 | 0.472 | 0.436 | 0.427 | 0.430 |
| squared_up | 2.000 | 5.000 | 7.000 | 15.000 | 22.000 | 31.000 | 38.000 | 52.000 | 71.000 | 120.000 | 224.000 |
| strikeout | 1.000 | 3.000 | 3.000 | 5.000 | 6.000 | 7.000 | 11.000 | 13.000 | 26.000 | 36.000 | 69.000 |
| strikeout_rate | 0.250 | 0.375 | 0.231 | 0.227 | 0.194 | 0.159 | 0.175 | 0.146 | 0.195 | 0.160 | 0.159 |
| sweet_spot | 5.000 | 6.000 | 9.000 | 12.000 | 13.000 | 21.000 | 27.000 | 37.000 | 57.000 | 90.000 | 166.000 |
| sweet_spot_per_ab | 0.250 | 0.250 | 0.385 | 0.273 | 0.194 | 0.250 | 0.238 | 0.281 | 0.263 | 0.262 | 0.259 |
| tb | 2.000 | 3.000 | 9.000 | 11.000 | 17.000 | 23.000 | 30.000 | 44.000 | 69.000 | 99.000 | 172.000 |
| tb_platoon | · | · | · | · | · | · | · | 39.000 | 51.000 | 69.000 | 126.000 |
| walk | 1.000 | 1.000 | 2.000 | 2.000 | 3.000 | 5.000 | 7.000 | 9.000 | 13.000 | 25.000 | 39.000 |
| walk_platoon | · | · | · | · | · | · | · | 6.000 | 10.000 | 19.000 | 29.000 |
| walk_rate | 0.250 | 0.125 | 0.154 | 0.091 | 0.097 | 0.114 | 0.111 | 0.101 | 0.098 | 0.111 | 0.090 |
| xbh | 1.000 | 1.000 | 2.000 | 2.000 | 3.000 | 4.000 | 5.000 | 9.000 | 16.000 | 22.000 | 36.000 |
| xbh_rate | 0.250 | 0.125 | 0.154 | 0.091 | 0.097 | 0.091 | 0.079 | 0.101 | 0.120 | 0.098 | 0.083 |
| z_swing_rate | · | · | · | · | · | 0.698 | 0.667 | 0.673 | 0.660 | 0.703 | 0.683 |
| zone_rate | · | · | · | · | · | · | 0.496 | 0.507 | 0.499 | 0.484 | 0.482 |