Sport-specific career totals from the active profile tables, with VAL shown whenever the sport has a value file.
| Season | Age | Team | Min | G | A | Sh | SoT | KP | xG | xA | g+ | VAL |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2013 | 27 | POR | 2,710 | 11 | 7 | 79 | 28 | 63 | 8.42 | 7.36 | 4.21 | 17 |
| 2014 | 28 | POR | 2,933 | 10 | 10 | 99 | 39 | 99 | 7.39 | 11.04 | 4.62 | 19 |
| 2015 | 29 | POR | 2,328 | 3 | 9 | 78 | 29 | 82 | 6.06 | 7.54 | 0.53 | 11.5 |
| 2016 | 30 | POR | 2,830 | 14 | 6 | 112 | 38 | 86 | 10.21 | 9.53 | 6.54 | 19.2 |
| 2017 | 31 | POR | 3,261 | 21 | 9 | 98 | 41 | 73 | 14.04 | 7.69 | 9.41 | 23.3 |
| 2018 | 32 | POR | 3,624 | 14 | 12 | 100 | 34 | 118 | 13.77 | 10.80 | 5.01 | 18.5 |
| 2019 | 33 | POR | 2,895 | 8 | 8 | 85 | 33 | 122 | 9.83 | 9.95 | 3.05 | 16 |
| 2020 | 34 | POR | 2,233 | 9 | 8 | 55 | 25 | 80 | 6.94 | 8.18 | 3.13 | 14.5 |
| 2021 | 35 | POR | 1,444 | 2 | 1 | 38 | 12 | 36 | 4.06 | 3.11 | 0.52 | 5.6 |
Gave the Portland Timbers FC an entire corpus-attributed career β 9 seasons (2013β2021), one crest. The rarest loyalty in the sport.