
MIGUEL CASTRO
01/Hitting
Regular season
| Season | Club | G | AB | R | H | 2B | 3B | HR | RBI | BB | SO | SB | AVG | OBP | SLG | OPS |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2024 | AZ | 22 | 118 | 18 | 40 | 10 | 2 | 6 | 11 | 6 | 16 | 0 | .339 | .371 | .610 | .981 |
| 2023 | AZ | 150 | 478 | 64 | 102 | 22 | 0 | 16 | 38 | 50 | 120 | 16 | .213 | .288 | .360 | .648 |
| 2022 | NYY | 68 | 222 | 32 | 54 | 20 | 0 | 4 | 14 | 30 | 62 | 6 | .243 | .333 | .387 | .721 |
| 2021 | NYM | 138 | 508 | 60 | 96 | 14 | 0 | 14 | 25 | 86 | 154 | 20 | .189 | .306 | .299 | .606 |
| 2020 | NYM | 52 | 202 | 24 | 56 | 8 | 2 | 8 | 17 | 26 | 76 | 10 | .277 | .360 | .455 | .815 |
| 2019 | BAL | 130 | 544 | 84 | 126 | 24 | 0 | 20 | 54 | 82 | 142 | 36 | .232 | .332 | .386 | .718 |
| 2018 | BAL | 126 | 636 | 82 | 150 | 26 | 2 | 18 | 35 | 100 | 114 | 16 | .236 | .340 | .368 | .708 |
| 2017 | BAL | 78 | 474 | 58 | 106 | 24 | 0 | 16 | 32 | 56 | 76 | 8 | .224 | .306 | .376 | .681 |
| 2016 | COL | 38 | 120 | 20 | 36 | 4 | 2 | 6 | 12 | 10 | 24 | 4 | .300 | .354 | .517 | .871 |
| 2015 | COL | 36 | 142 | 26 | 42 | 10 | 2 | 8 | 17 | 20 | 36 | 2 | .296 | .383 | .563 | .946 |
| Career | – | 838 | 3,444 | 468 | 808 | 162 | 10 | 116 | 255 | 466 | 820 | 118 | .235 | .326 | .389 | .714 |
02/Pitching
Regular season
| Season | Club | G | W | L | IP | H | ER | BB | SO | HR | ERA | WHIP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2025 | CWS | 6 | 0 | 0 | 6.0 | 5 | 5 | 5 | 4 | 1 | 7.50 | 1.67 |
| 2024 | AZ | 11 | 0 | 0 | 13.2 | 20 | 9 | 3 | 8 | 3 | 5.93 | 1.68 |
| 2023 | AZ | 75 | 6 | 6 | 64.2 | 51 | 31 | 25 | 60 | 8 | 4.31 | 1.18 |
| 2022 | NYY | 34 | 5 | 0 | 29.0 | 27 | 13 | 15 | 31 | 2 | 4.03 | 1.45 |
| 2021 | NYM | 69 | 3 | 4 | 70.1 | 48 | 27 | 43 | 77 | 7 | 3.45 | 1.29 |
| 2020 | NYM | 26 | 2 | 2 | 24.2 | 28 | 11 | 13 | 38 | 4 | 4.01 | 1.66 |
| 2019 | BAL | 65 | 1 | 3 | 73.1 | 63 | 38 | 41 | 71 | 10 | 4.66 | 1.42 |
| 2018 | BAL | 63 | 2 | 7 | 86.1 | 75 | 38 | 50 | 57 | 9 | 3.96 | 1.45 |
| 2017 | BAL | 39 | 3 | 3 | 66.1 | 53 | 26 | 28 | 38 | 8 | 3.53 | 1.22 |
| 2016 | COL | 19 | 0 | 0 | 14.2 | 18 | 10 | 5 | 12 | 3 | 6.14 | 1.57 |
| 2015 | COL | 18 | 0 | 3 | 17.2 | 21 | 12 | 10 | 18 | 4 | 6.11 | 1.75 |
| Career | – | 425 | 22 | 28 | 466.2 | 409 | 220 | 238 | 414 | 59 | 4.24 | 1.39 |
03/Postseason
Never folded in
| Season | Club | G | AB | H | HR | RBI | AVG | IP | SO | ERA |
|---|---|---|---|---|---|---|---|---|---|---|
| 2023 | AZ | 16 | 25 | 7 | 1 | 5 | .280 | 6.0 | 4 | 10.50 |
| 2022 | NYY | 4 | 6 | 0 | 0 | 0 | .000 | 2.0 | 2 | 0.00 |
04/Every pitch
Play log from 2015
No batted balls with a location in this window.
Catcher’s view · the zone drawn is the average of the 293 batter zones recorded here, 1.59 to 3.46 feet
| Pitch | N | Share | MPH | RPM | Strike% |
|---|---|---|---|---|---|
| Four-Seam Fastball | 174 | 59.4% | 96.4 | 2,205 | 43.7% |
| Slider | 64 | 21.8% | 82.1 | 1,323 | 39.1% |
| Changeup | 49 | 16.7% | 87.8 | 1,932 | 42.9% |
| Intentional Ball | 6 | 2.0% | 82.7 | 1,962 | 0.0% |
05/Game log
Regular season
| Date | Opp | Result | AB | R | H | HR | RBI | BB | SO | IP | H | ER | BB | SO |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| APR 6 | @ NYY | W 6–1 | 3 | 0 | 0 | 0 | 0 | 0 | 1 | 1.1 | 0 | 0 | 0 | 1 |
| APR 6 | @ NYY | W 6–1 | 3 | 0 | 0 | 0 | 0 | 0 | 1 | – | — | — | — | — |
| APR 8 | @ NYY | L 3–4 | 2 | 0 | 0 | 0 | 0 | 0 | 1 | – | — | — | — | — |
| APR 8 | @ NYY | L 3–4 | 2 | 0 | 0 | 0 | 0 | 0 | 1 | 0.2 | 0 | 0 | 0 | 1 |
| APR 9 | @ NYY | W 6–3 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 1.0 | 0 | 0 | 0 | 0 |
| APR 9 | @ NYY | W 6–3 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | – | — | — | — | — |
| APR 12 | @ BAL | W 10–7 | 4 | 0 | 1 | 0 | 0 | 1 | 0 | – | — | — | — | — |
| APR 12 | @ BAL | W 10–7 | 4 | 0 | 1 | 0 | 0 | 1 | 0 | 1.0 | 1 | 0 | 1 | 0 |
| APR 14 | vs TB | L 2–3 | 5 | 1 | 2 | 0 | 1 | 1 | 2 | 1.1 | 2 | 0 | 1 | 2 |
| APR 14 | vs TB | L 2–3 | 5 | 1 | 2 | 0 | 0 | 1 | 2 | – | — | — | — | — |
| APR 17 | vs ATL | L 7–8 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | 1.0 | 0 | 0 | 1 | 0 |
| APR 17 | vs ATL | L 7–8 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | – | — | — | — | — |
| APR 18 | vs ATL | W 6–5 | 5 | 1 | 2 | 1 | 1 | 0 | 1 | 1.0 | 2 | 1 | 0 | 1 |
| APR 18 | vs ATL | W 6–5 | 5 | 1 | 2 | 1 | 0 | 0 | 1 | – | — | — | — | — |
| APR 22 | vs BAL | W 4–2 | 4 | 0 | 1 | 0 | 0 | 1 | 1 | – | — | — | — | — |
| APR 22 | vs BAL | W 4–2 | 4 | 0 | 1 | 0 | 0 | 1 | 1 | 1.1 | 1 | 0 | 1 | 1 |
| APR 23 | vs BAL | W 7–6 | 3 | 1 | 1 | 1 | 3 | 0 | 1 | 0.2 | 1 | 1 | 0 | 1 |
| APR 23 | vs BAL | W 7–6 | 3 | 1 | 1 | 1 | 0 | 0 | 1 | – | — | — | — | — |
| APR 25 | @ TB | L 2–4 | 3 | 1 | 2 | 0 | 0 | 0 | 0 | – | — | — | — | — |
| APR 25 | @ TB | L 2–4 | 3 | 1 | 2 | 0 | 3 | 0 | 0 | 0.1 | 2 | 1 | 0 | 0 |
| APR 27 | @ BOS | L 5–6 | 4 | 1 | 3 | 0 | 0 | 0 | 1 | – | — | — | — | — |
| APR 27 | @ BOS | L 5–6 | 4 | 1 | 3 | 0 | 1 | 0 | 1 | 0.1 | 3 | 1 | 0 | 1 |
| MAY 1 | @ CLE | L 4–9 | 5 | 0 | 1 | 0 | 0 | 0 | 2 | 1.0 | 1 | 0 | 0 | 2 |
| MAY 1 | @ CLE | L 4–9 | 5 | 0 | 1 | 0 | 0 | 0 | 2 | – | — | — | — | — |
| MAY 3 | @ CLE | L 7–10 | 5 | 2 | 2 | 0 | 2 | 2 | 2 | 1.1 | 2 | 2 | 2 | 2 |
| MAY 3 | @ CLE | L 7–10 | 5 | 2 | 2 | 0 | 0 | 2 | 2 | – | — | — | — | — |
| SEP 1 | vs AZ | L 4–6 | 7 | 4 | 3 | 1 | 0 | 1 | 0 | – | — | — | — | — |
| SEP 1 | vs AZ | L 4–6 | 7 | 4 | 3 | 1 | 4 | 1 | 0 | 1.1 | 3 | 4 | 1 | 0 |
| SEP 5 | vs SF | L 3–7 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | 1.0 | 0 | 0 | 1 | 0 |
| SEP 5 | vs SF | L 3–7 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | – | — | — | — | — |
| SEP 8 | @ SD | L 1–2 | 4 | 0 | 1 | 0 | 0 | 2 | 2 | 1.0 | 1 | 0 | 2 | 2 |
| SEP 8 | @ SD | L 1–2 | 4 | 0 | 1 | 0 | 0 | 2 | 2 | – | — | — | — | — |
| SEP 12 | @ SEA | L 2–7 | 3 | 0 | 0 | 0 | 0 | 0 | 2 | – | — | — | — | — |
| SEP 12 | @ SEA | L 2–7 | 3 | 0 | 0 | 0 | 0 | 0 | 2 | 1.0 | 0 | 0 | 0 | 2 |
| SEP 14 | @ LAD | L 1–4 | 5 | 2 | 2 | 1 | 2 | 0 | 2 | 1.0 | 2 | 2 | 0 | 2 |
| SEP 14 | @ LAD | L 1–4 | 5 | 2 | 2 | 1 | 0 | 0 | 2 | – | — | — | — | — |
Regular season and postseason are separate tables and are never summed into one career line; spring training is excluded entirely. Hitting and pitching come from different source rows, so a two-way player has both tables and neither borrows from the other. Innings pitched is summed as outs and converted once: the stored value counts thirds, so “6.1” means six innings and one out, and adding those as decimals understates a career. ERA and WHIP are computed from those totals rather than averaged across seasons. On-base percentage is (H + BB) over (AB + BB), which runs slightly under the official figure because the source rows carry no hit-by-pitch or sacrifice fly. The charts cover 2015 onward only, and the spray chart plots batted balls with a recorded landing spot: a strikeout or a walk has no location and is not a missing dot. Its field is a representative park, not the one the ball was hit in, because a spray chart pooled across a season is hit in thirty different outfields.