Batter vs Pitch Arsenal
A batter's own numbers by pitch type and location — add a pitcher to see their actual arsenal overlaid on top, and how this batter has done against pitches shaped like it.
Victor Mesa Jr. LHB TBA
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.
vs RHP
vs LHP
Every pitch type this batter has faced from that hand, ordered by how often he sees it.
The bar is his performance against it; the dotted line is his own average from that hand. Past the line he handles it better than most (red), short of it the pitcher has the edge (blue).
Pitches with fewer than 10 balls in play are left out.
vs RHP · ordered by volume · 4 too thin to showNo tracked contact for this batter yet
| Hand | Pitch | Pitches | BA | HR% | Hard-Hit% | LD% | FB% | GB% | Exit Velo | xBA | xwOBA/con |
|---|---|---|---|---|---|---|---|---|---|---|---|
| LHP | FF | 80 | 0.294 | 5.9% | 46% | 23% | 31% | 15% | 91.5 | 0.324 | 0.376 |
| LHP | SI | 67 | 0.500 | 0.0% | 30% | 35% | 4% | 61% | 84.0 | 0.329 | 0.311 |
| LHP | SL | 59 | 0.176 | 11.8% | 23% | 0% | 54% | 31% | 82.5 | 0.205 | 0.326 |
| LHP | ST | 22 | |||||||||
| LHP | FC | 7 | |||||||||
| LHP | CH | 5 | |||||||||
| LHP | SV | 4 | |||||||||
| LHP | CU | 4 | |||||||||
| LHP | KC | 2 | |||||||||
| LHP | FS | 1 | |||||||||
| RHP | FF | 349 | 0.149 | 7.5% | 43% | 14% | 45% | 18% | 88.0 | 0.254 | 0.355 |
| RHP | CH | 86 | 0.370 | 7.4% | 59% | 55% | 18% | 23% | 91.2 | 0.451 | 0.476 |
| RHP | FC | 75 | 0.286 | 7.1% | 64% | 36% | 36% | 18% | 92.4 | 0.445 | 0.485 |
| RHP | CU | 72 | 0.154 | 0.0% | 30% | 30% | 30% | 30% | 89.8 | 0.357 | 0.363 |
| RHP | SL | 67 | 0.280 | 8.0% | 37% | 21% | 37% | 21% | 89.0 | 0.344 | 0.460 |
| RHP | SI | 60 | 0.312 | 6.2% | 58% | 8% | 42% | 50% | 94.1 | 0.294 | 0.428 |
| RHP | FS | 53 | 0.214 | 0.0% | 58% | 25% | 8% | 67% | 88.2 | 0.412 | 0.390 |
| RHP | ST | 35 | 0.125 | 12.5% | |||||||
| RHP | KC | 28 | 0.167 | 0.0% | 50% | 38% | 12% | 50% | 89.7 | 0.276 | 0.292 |
| RHP | EP | 3 | |||||||||
| RHP | SV | 3 |
Showing every pitcher. Today’s probable opponent starter:
Shawn ArmstrongOr add any other pitcher to overlay their actual arsenal on top of the above:
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.
108 PA · 30 games · 2026-08-15 to 2026-10-15| Date | Result | Count | Pitch | Velo | Exit Velo | Angle | Dist | Location | xBA | xSLG | xwOBA | Pitcher |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2026-10-15 | Out fly ball | 1-0 | FF | 98.5 | 94.0 | 47° | 288 | LF corner | 0.009 | 0.024 | 0.014 | Cade Smith |
| 2026-10-15 | Strikeout swinging | 1-2 | FF | 94.4 | — | — | — | — | — | — | 0.000 | Erik Sabrowski |
| 2026-10-15 | Walk | 3-1 | ST | 88.2 | — | — | — | — | — | — | 0.698 | Gavin Williams |
| 2026-10-15 | Out line drive | 0-1 | SI | 97.4 | 77.4 | 28° | 256 | LF gap | 0.323 | 0.388 | 0.303 | Gavin Williams |
| 2026-10-13 | Strikeout swinging | 2-2 | FC | 89.5 | — | — | — | — | — | — | 0.000 | Slade Cecconi |
| 2026-10-13 | Out popup | 2-0 | SI | 93.1 | 86.9 | 68° | 117 | Infield | 0.009 | 0.012 | 0.010 | Parker Messick |
| 2026-10-13 | Force Out ground ball | 2-2 | SI | 94.1 | 100.8 | -18° | 3 | Infield | 0.198 | 0.213 | 0.178 | Parker Messick |
| 2026-10-13 | Strikeout swinging | 2-2 | CH | 87.3 | — | — | — | — | — | — | 0.000 | Parker Messick |
| 2026-10-12 | Strikeout swinging | 0-2 | FF | 94.3 | — | — | — | — | — | — | 0.000 | Erik Sabrowski |
| 2026-10-12 | Out popup | 0-1 | FC | 85.1 | 30.6 | 63° | 44 | Infield | 0.103 | 0.120 | 0.106 | Joey Cantillo |
| 2026-10-12 | Strikeout swinging | 2-2 | SI | 93.5 | — | — | — | — | — | — | 0.000 | Foster Griffin |
| 2026-10-12 | Single line drive | 0-0 | SI | 91.8 | 79.8 | 16° | 212 | LF gap | 0.926 | 1.019 | 0.860 | Foster Griffin |
| 2026-10-07 | Strikeout swinging | 0-2 | FS | 89.0 | — | — | — | — | — | — | 0.000 | David Bednar |
| 2026-10-07 | Home Run fly ball | 0-0 | ST | 77.9 | 107.3 | 34° | 401 | RF gap | 0.840 | 3.298 | 1.690 | Max Fried |
| 2026-10-07 | Strikeout swinging | 2-2 | FF | 95.3 | — | — | — | — | — | — | 0.000 | Max Fried |
| 2026-10-07 | Out fly ball | 1-2 | ST | 79.1 | 87.9 | 57° | 212 | LF gap | 0.009 | 0.009 | 0.008 | Max Fried |
| 2026-10-05 | Walk | 3-2 | FF | 97.7 | — | — | — | — | — | — | 0.698 | Ryan Weathers |
| 2026-10-05 | Strikeout swinging | 0-2 | SL | 85.0 | — | — | — | — | — | — | 0.000 | Brent Headrick |
| 2026-10-05 | Out line drive | 2-1 | FF | 98.1 | 86.9 | 22° | 291 | LF gap | 0.360 | 0.444 | 0.327 | Cam Schlittler |
| 2026-10-05 | Out ground ball | 0-2 | CU | 85.1 | 97.2 | -6° | 17 | Infield | 0.264 | 0.295 | 0.247 | Cam Schlittler |
| 2026-10-03 | Out ground ball | 1-2 | SL | 86.0 | 65.1 | -23° | 3 | RF corner | 0.048 | 0.052 | 0.043 | Ryan Weathers |
| 2026-10-03 | Single fly ball | 1-0 | KC | 83.4 | 64.7 | 29° | 196 | LF | 0.914 | 0.995 | 0.846 | Gerrit Cole |
| 2026-10-03 | Strikeout swinging | 1-2 | FF | 95.7 | — | — | — | — | — | — | 0.000 | Gerrit Cole |
| 2026-09-27 | Single ground ball | 1-2 | SL | 85.4 | 81.7 | 6° | 104 | RF | 0.357 | 0.378 | 0.327 | Alex McFarlane |
| 2026-09-27 | Strikeout swinging | 3-2 | FF | 94.7 | — | — | — | — | — | — | 0.000 | Zack Wheeler |
| 2026-09-27 | Out ground ball | 0-2 | FS | 88.4 | 101.6 | -14° | 2 | Infield | 0.213 | 0.228 | 0.192 | Zack Wheeler |
| 2026-09-27 | Strikeout swinging | 3-2 | FS | 89.1 | — | — | — | — | — | — | 0.000 | Zack Wheeler |
| 2026-09-26 | Single ground ball | 0-1 | SI | 91.2 | 102.5 | 3° | 78 | LF | 0.551 | 0.673 | 0.534 | Brooks Raley |
| 2026-09-26 | Double line drive | 0-0 | CU | 76.1 | 100.9 | 12° | 229 | RF corner | 0.957 | 1.178 | 0.927 | José Urquidy |
| 2026-09-26 | Single line drive | 0-0 | SI | 97.4 | 97.6 | 8° | 182 | CF | 0.680 | 0.760 | 0.639 | José Alvarado |
| 2026-09-26 | Out fly ball | 1-1 | CH | 88.2 | 97.3 | 43° | 321 | CF | 0.029 | 0.094 | 0.050 | Chase Shugart |
| 2026-09-26 | Double line drive | 0-1 | CH | 86.9 | 98.3 | 21° | 354 | LF gap | 0.294 | 0.594 | 0.371 | Aaron Nola |
| 2026-09-24 | Out fly ball | 0-1 | FC | 86.8 | 99.7 | 43° | 359 | CF | 0.057 | 0.199 | 0.103 | Bradley Hanner |
| 2026-09-24 | Out popup | 1-0 | SL | 84.5 | 86.5 | 65° | 145 | Infield | 0.006 | 0.006 | 0.005 | Luis Gil |
| 2026-09-24 | Single ground ball | 1-0 | SI | 88.2 | 104.5 | 2° | 80 | LF gap | 0.540 | 0.597 | 0.498 | Tim Hill |
| 2026-09-24 | Strikeout swinging | 2-2 | FF | 96.7 | — | — | — | — | — | — | 0.000 | Cam Schlittler |
| 2026-09-24 | Strikeout swinging | 3-2 | FF | 98.3 | — | — | — | — | — | — | 0.000 | Cam Schlittler |
| 2026-09-23 | Out ground ball | 1-2 | SI | 87.0 | 78.6 | -57° | 1 | Infield | 0.264 | 0.265 | 0.238 | Tim Hill |
| 2026-09-23 | Out popup | 2-2 | SL | 89.5 | 83.2 | 83° | 19 | LF corner | 0.011 | 0.014 | 0.012 | Gerrit Cole |
| 2026-09-23 | Out ground ball | 0-0 | KC | 81.6 | 72.4 | -41° | 3 | RF corner | 0.111 | 0.112 | 0.100 | Gerrit Cole |
| 2026-09-23 | Walk | 3-2 | FF | 96.5 | — | — | — | — | — | — | 0.698 | Gerrit Cole |
| 2026-09-22 | Out ground ball | 0-1 | SL | 88.0 | 102.9 | -16° | 6 | Infield | 0.237 | 0.252 | 0.219 | Carlos Rodón |
| 2026-09-22 | Single line drive | 1-1 | FF | 94.7 | 102.2 | 12° | 241 | RF gap | 0.963 | 1.197 | 0.936 | Carlos Rodón |
| 2026-09-22 | Out ground ball | 2-2 | SL | 88.0 | 63.7 | 0° | 29 | Infield | 0.101 | 0.111 | 0.091 | Carlos Rodón |
| 2026-09-20 | Out popup | 1-1 | SL | 85.1 | 83.0 | 67° | 130 | Infield | 0.003 | 0.003 | 0.003 | Patrick Sandoval |
| 2026-09-20 | Home Run fly ball | 2-2 | FF | 94.9 | 103.9 | 31° | 403 | RF gap | 0.760 | 2.979 | 1.522 | Patrick Sandoval |
| 2026-09-20 | Walk | 3-2 | FF | 92.1 | — | — | — | — | — | — | 0.698 | Patrick Sandoval |
| 2026-09-19 | Strikeout swinging | 0-2 | CH | 84.4 | — | — | — | — | — | — | 0.000 | Garrett Whitlock |
| 2026-09-19 | Out ground ball | 1-1 | CH | 90.0 | 67.9 | -8° | 8 | Infield | 0.070 | 0.077 | 0.066 | Brayan Bello |
| 2026-09-19 | Strikeout swinging | 0-2 | FF | 97.8 | — | — | — | — | — | — | 0.000 | Brayan Bello |
| 2026-09-19 | Strikeout swinging | 2-2 | FF | 97.7 | — | — | — | — | — | — | 0.000 | Brayan Bello |
| 2026-09-18 | Single ground ball | 1-1 | SI | 98.2 | 105.1 | -28° | 4 | Infield | 0.137 | 0.152 | 0.123 | Erik Miller |
| 2026-09-18 | Walk | 3-2 | FF | 97.3 | — | — | — | — | — | — | 0.698 | Wyatt Olds |
| 2026-09-18 | Out fly ball | 1-1 | SL | 79.1 | 90.5 | 32° | 345 | RF | 0.077 | 0.218 | 0.126 | Ranger Suarez |
| 2026-09-18 | Strikeout swinging | 0-2 | SL | 79.9 | — | — | — | — | — | — | 0.000 | Ranger Suarez |
| 2026-09-16 | Strikeout swinging | 0-2 | FF | 95.5 | — | — | — | — | — | — | 0.000 | Hogan Harris |
| 2026-09-16 | Out line drive | 0-2 | SI | 93.5 | 63.6 | 23° | 183 | CF | 0.629 | 0.655 | 0.566 | Drew Rom |
| 2026-09-16 | Out line drive | 0-0 | FC | 88.7 | 103.5 | 19° | 377 | CF | 0.500 | 1.013 | 0.630 | Brady Basso |
| 2026-09-16 | Out fly ball | 0-2 | FF | 91.7 | 83.5 | 48° | 253 | LF | 0.009 | 0.010 | 0.008 | Brady Basso |
| 2026-09-15 | Out fly ball | 0-0 | FC | 92.4 | 101.1 | 26° | 406 | RF gap | 0.586 | 1.898 | 1.025 | Jack Perkins |
| 2026-09-15 | Out ground ball | 0-0 | ST | 86.0 | 86.8 | -2° | 31 | Infield | 0.240 | 0.269 | 0.226 | Jack Perkins |
| 2026-09-15 | Out ground ball | 0-1 | CH | 88.3 | 77.2 | -50° | 1 | Infield | 0.183 | 0.184 | 0.165 | Jack Perkins |
| 2026-09-13 | Strikeout swinging | 0-2 | FF | 93.1 | — | — | — | — | — | — | 0.000 | Ronel Blanco |
| 2026-09-13 | Out fly ball | 1-0 | CH | 83.7 | 78.3 | 33° | 281 | RF | 0.089 | 0.126 | 0.085 | Ronel Blanco |
| 2026-09-13 | Double popup | 0-0 | CH | 86.1 | 59.7 | 43° | 179 | LF | 0.197 | 0.225 | 0.183 | Enyel De Los Santos |
| 2026-09-13 | Single line drive | 1-1 | FF | 93.2 | 100.1 | 13° | 197 | RF | 0.926 | 1.122 | 0.889 | Hayden Wesneski |
| 2026-09-13 | Triple line drive | 1-0 | FC | 90.0 | 107.1 | 12° | 220 | RF corner | 0.929 | 1.258 | 0.940 | Hayden Wesneski |
| 2026-09-12 | Walk | 3-2 | FF | 92.2 | — | — | — | — | — | — | 0.698 | Bryan King |
| 2026-09-12 | Walk | 3-1 | SL | 88.2 | — | — | — | — | — | — | 0.698 | Bennett Sousa |
| 2026-09-12 | Single ground ball | 2-2 | FC | 92.9 | 105.7 | 6° | 110 | RF | 0.594 | 0.677 | 0.553 | Peter Lambert |
| 2026-09-12 | Strikeout swinging | 1-2 | CH | 86.9 | — | — | — | — | — | — | 0.000 | Peter Lambert |
| 2026-09-11 | Walk | 3-2 | FC | 89.4 | — | — | — | — | — | — | 0.699 | Ethan Pecko |
| 2026-09-11 | Home Run fly ball | 0-0 | FF | 93.3 | 106.0 | 30° | 415 | RF gap | 0.871 | 3.441 | 1.772 | Ethan Pecko |
| 2026-09-11 | Out ground ball | 0-0 | SI | 91.5 | 65.3 | -34° | 3 | Infield | 0.065 | 0.066 | 0.058 | Bryan King |
| 2026-09-10 | Home Run line drive | 1-2 | CH | 88.4 | 101.9 | 22° | 397 | RF gap | 0.534 | 1.290 | 0.758 | Raisel Iglesias |
| 2026-09-09 | Out fly ball | 1-1 | FC | 90.8 | 73.1 | 47° | 223 | CF | 0.171 | 0.225 | 0.174 | Victor Mederos |
| 2026-09-09 | Walk | 3-1 | FF | 92.9 | — | — | — | — | — | — | 0.699 | Reynaldo López |
| 2026-09-09 | Single ground ball | 3-1 | FF | 92.9 | 104.6 | -4° | 29 | RF | 0.422 | 0.451 | 0.380 | Reynaldo López |
| 2026-09-09 | Home Run fly ball | 1-0 | FF | 93.8 | 105.4 | 28° | 415 | RF | 0.900 | 3.467 | 1.789 | Reynaldo López |
| 2026-09-08 | Out line drive | 1-2 | FF | 93.8 | 98.1 | 16° | 299 | CF | 0.611 | 0.868 | 0.628 | Elieser Hernández |
| 2026-09-08 | Out line drive | 1-2 | FF | 89.4 | 98.0 | 7° | 140 | Infield | 0.594 | 0.662 | 0.547 | Brent Suter |
| 2026-09-08 | Double line drive | 0-1 | SI | 90.9 | 75.2 | 29° | 245 | LF | 0.443 | 0.486 | 0.402 | Brent Suter |
| 2026-09-08 | Single ground ball | 1-2 | FS | 84.6 | 102.4 | -9° | 18 | RF gap | 0.308 | 0.333 | 0.277 | AJ Smith-Shawver |
| 2026-09-08 | Out ground ball | 1-2 | FS | 83.7 | 77.2 | -1° | 31 | Infield | 0.079 | 0.086 | 0.071 | AJ Smith-Shawver |
| 2026-09-06 | Out fly ball | 1-0 | ST | 80.2 | 84.9 | 60° | 188 | LF gap | 0.017 | 0.017 | 0.015 | Tyler Alexander |
| 2026-09-06 | Out fly ball | 0-1 | CH | 80.5 | 77.7 | 50° | 230 | LF gap | 0.054 | 0.075 | 0.055 | Trevor Williams |
| 2026-09-06 | Double ground ball | 1-0 | FF | 92.9 | 99.6 | 3° | 79 | Infield | 0.540 | 0.605 | 0.501 | MacKenzie Gore |
| 2026-09-06 | Single line drive | 3-2 | FF | 94.4 | 83.4 | 9° | 146 | LF | 0.426 | 0.459 | 0.387 | MacKenzie Gore |
| 2026-09-05 | Out fly ball | 0-0 | FF | 94.1 | 97.1 | 47° | 317 | CF | 0.011 | 0.025 | 0.016 | Jacob Latz |
| 2026-09-05 | Single ground ball | 0-1 | ST | 78.7 | 93.4 | 5° | 85 | RF | 0.531 | 0.643 | 0.521 | Tyler Alexander |
| 2026-09-05 | Strikeout swinging | 0-2 | SL | 90.5 | — | — | — | — | — | — | 0.000 | Jacob deGrom |
| 2026-09-05 | Single ground ball | 0-1 | SL | 91.4 | 97.2 | 6° | 122 | RF gap | 0.649 | 0.734 | 0.614 | Jacob deGrom |
| 2026-09-04 | Strikeout swinging | 1-2 | SL | 84.6 | — | — | — | — | — | — | 0.000 | Adam Macko |
| 2026-09-04 | Out fly ball | 0-0 | FF | 95.1 | 85.5 | 49° | 264 | CF | 0.009 | 0.013 | 0.008 | Kumar Rocker |
| 2026-09-04 | Single line drive | 1-2 | SL | 83.0 | 70.1 | 28° | 238 | RF gap | 0.974 | 1.030 | 0.891 | Kumar Rocker |
| 2026-09-04 | Out fly ball | 0-1 | SL | 82.5 | 68.9 | 41° | 212 | LF gap | 0.460 | 0.519 | 0.422 | Kumar Rocker |
| 2026-09-04 | Out line drive | 1-1 | SI | 94.2 | 87.3 | 26° | 298 | LF | 0.089 | 0.181 | 0.114 | Robby Ahlstrom |
| 2026-09-03 | Out fly ball | 1-2 | ST | 83.7 | 81.0 | 47° | 247 | LF gap | 0.023 | 0.038 | 0.027 | Jakob Junis |
| 2026-09-02 | Out fly ball | 0-2 | FF | 96.1 | 76.4 | 34° | 244 | LF | 0.151 | 0.218 | 0.157 | Daniel Duarte |
| 2026-09-02 | Out popup | 1-2 | FF | 90.9 | 85.6 | 75° | 66 | LF corner | 0.001 | 0.001 | 0.000 | Nate Lavender |
| 2026-09-02 | Out popup | 0-1 | FF | 93.6 | 95.4 | 58° | 215 | RF gap | 0.023 | 0.038 | 0.028 | Chris Devenski |
| 2026-09-02 | Out fly ball | 0-0 | FF | 90.8 | 85.4 | 52° | 237 | RF gap | 0.014 | 0.017 | 0.013 | Justin Hagenman |
| 2026-09-01 | Single ground ball | 0-0 | SI | 99.8 | 101.6 | 1° | 67 | LF gap | 0.494 | 0.548 | 0.456 | Jefry Yan |
| 2026-09-01 | Out ground ball | 3-2 | SI | 90.3 | 61.7 | -5° | 18 | Infield | 0.085 | 0.095 | 0.083 | Sean Manaea |
| 2026-09-01 | Single line drive | 1-1 | SI | 90.4 | 86.1 | 8° | 150 | CF | 0.451 | 0.511 | 0.422 | Sean Manaea |
| 2026-09-01 | Single ground ball | 0-0 | FF | 90.7 | 94.8 | 8° | 147 | CF | 0.617 | 0.695 | 0.576 | Sean Manaea |
| 2026-08-18 | Hit By Pitch | 2-2 | KC | 85.8 | — | — | — | — | — | — | 0.729 | José Soriano |
| 2026-08-15 | Out line drive | 0-2 | SL | 87.9 | 92.5 | 24° | 335 | CF | 0.149 | 0.288 | 0.183 | Andrew Kittredge |