
| 2026 | CONCACAF Champions League | Vancouver Whitecaps | Defender | 3 | 225 | 0 | 1 | 2 | 0 | 2 | 92 | 0 | 0 | 7.23 |
| 2026 | Major League Soccer | Vancouver Whitecaps | Defender | 8 | 730 | 1 | 0 | 3 | 1 | 3 | 88 | 0 | 0 | 7.28 |
| 2025 | Canadian Championship | Vancouver Whitecaps | Defender | 1 | 13 | 0 | 0 | 0 | 0 | 0 | 76 | 0 | 0 | 6.47 |
| 2025 | CONCACAF Champions League | Vancouver Whitecaps | Defender | 9 | 713 | 1 | 0 | 3 | 1 | 0 | 47 | 2 | 0 | 6.96 |
| 2025 | Major League Soccer | Vancouver Whitecaps | Defender | 26 | 2274 | 2 | 1 | 11 | 3 | 10 | 57 | 6 | 0 | 7.19 |
| 2025 | Friendlies | USA | Defender | 2 | 118 | 0 | 0 | 0 | 0 | 0 | 52 | 0 | 0 | 6.75 |
| 2024 | Major League Soccer | Vancouver Whitecaps | Defender | 29 | 2244 | 0 | 0 | 10 | 2 | 12 | 46 | 4 | 0 | 6.84 |
| 2024 | Canadian Championship | Vancouver Whitecaps | Defender | 1 | 28 | 0 | 0 | 0 | 0 | 0 | — | 0 | 0 | — |
| 2024 | CONCACAF Champions League | Vancouver Whitecaps | Defender | 2 | 172 | 0 | 0 | 2 | 0 | 0 | — | 0 | 0 | 6.95 |
| 2024 | Leagues Cup | Vancouver Whitecaps | Defender | 0 | 0 | 0 | 0 | 0 | 0 | 0 | — | 0 | 0 | — |
| 2023 | Major League Soccer | Vancouver Whitecaps | Defender | 32 | 2699 | 2 | 0 | 10 | 4 | 5 | 44 | 7 | 0 | 6.81 |
| 2023 | Canadian Championship | Vancouver Whitecaps | Defender | 3 | 262 | 0 | 0 | 0 | 0 | 0 | — | 1 | 0 | — |
| 2023 | Leagues Cup | Vancouver Whitecaps | Defender | 2 | 141 | 0 | 0 | 2 | 0 | 0 | — | 0 | 0 | 7.10 |
| 2023 | CONCACAF Champions League | Vancouver Whitecaps | Defender | 2 | 141 | 0 | 0 | 2 | 0 | 0 | — | 0 | 0 | 7.10 |
| 2022 | Major League Soccer | Vancouver Whitecaps | Defender | 28 | 2133 | 1 | 0 | 12 | 5 | 4 | — | 5 | 0 | 6.79 |
| 2022 | Canadian Championship | Vancouver Whitecaps | Defender | 1 | 90 | 0 | 0 | 0 | 0 | 0 | — | 0 | 0 | — |
| 2021 | Major League Soccer | Los Angeles FC | Defender | 22 | 1294 | 1 | 0 | 5 | 1 | 4 | — | 2 | 1 | 6.66 |
| 2020 | Major League Soccer | Los Angeles FC | Defender | 17 | 1247 | 0 | 0 | 3 | 0 | 6 | 54 | 2 | 0 | 6.74 |
| 2020 | CONCACAF Champions League | Los Angeles FC | Defender | 5 | 448 | 0 | 0 | 0 | 0 | 0 | — | 1 | 0 | — |
| 2019 | Major League Soccer | Los Angeles FC | Defender | 20 | 1557 | 1 | 4 | 10 | 2 | 16 | 84 | 3 | 0 | 6.84 |
| 2019 | USL Championship | Phoenix Rising | Defender | 5 | 390 | 0 | 0 | 0 | 0 | 0 | — | 1 | 0 | — |
| 2019 | US Open Cup | Los Angeles FC | Defender | 3 | 192 | 0 | 0 | 0 | 0 | 0 | — | 0 | 0 | — |
| 2018 | US Open Cup | Los Angeles FC | Defender | 2 | 180 | 0 | 0 | 0 | 0 | 0 | — | 0 | 0 | — |
| 2018 | Club Friendlies | Los Angeles FC | Defender | 1 | 90 | 0 | 0 | 0 | 0 | 0 | — | 0 | 0 | — |
| 2018 | USL Championship | Phoenix Rising | Defender | 2 | 180 | 0 | 0 | 0 | 0 | 0 | — | 0 | 0 | — |
| 2018 | Major League Soccer | Los Angeles FC | Defender | 9 | 488 | 0 | 0 | 1 | 1 | 4 | 75 | 1 | 0 | 6.36 |
| 2017 | US Open Cup | Burlingame Dragons | Defender | 1 | 90 | 0 | 0 | 0 | 0 | 0 | — | 1 | 0 | — |