Clubs
| Club | Seasons | Apps | Goals | Assists |
|---|---|---|---|---|
| Incheon United | 2023/24 – 2026/27 | 98 | 21 | 16 |
| Jeju United FC | 2021/22 – 2022/23 | 65 | 10 | 9 |
| Sporting KC | 2017/18 – 2020/21 | 124 | 26 | 17 |
| Belenenses | 2016/17 | 16 | 1 | 2 |
| Estoril | 2011/12 – 2015/16 | 95 | 2 | 1 |
| Moreirense | 2014/15 | 28 | 6 | 0 |
| Tourizense | 2010/11 | 1 | 0 | — |
Transfers
| Date | From | To | Type |
|---|---|---|---|
| 16 Feb 2021 | Sporting Kansas City | Jeju United FC | — |
| 14 Feb 2017 | Belenenses | Sporting Kansas City | € 1.5M |
| 1 Jul 2016 | Estoril | Belenenses | Free |
| 1 Jun 2015 | Moreirense | Estoril | — |
| 31 Jul 2014 | Estoril | Moreirense | Loan |
| 1 Jul 2011 | Tourizense | Estoril | — |
Season by season
| Season | Competition | Club | Apps | Starts | Min | Goals | Assists | Yellow | Red | Rating |
|---|---|---|---|---|---|---|---|---|---|---|
| 2026/27 | K League 1 | Incheon United | 32 | 19 | 872 | 2 | 0 | 4 | 0 | 5.71 |
| 2025/26 | K League 2 | Incheon United | 37 | — | — | 12 | 10 | 4 | 0 | — |
| 2024/25 | K League 1 | Incheon United | 5 | 4 | 333 | 2 | 0 | 0 | 0 | 7.04 |
| 2023/24 | K League 1 | Incheon United | 17 | 14 | 1088 | 2 | 4 | 1 | 0 | 6.86 |
| 2023/24 | FA Cup | Incheon United | 2 | — | — | 1 | 0 | 0 | 0 | — |
| 2023/24 | AFC Champions League | Incheon United | 5 | — | — | 2 | 2 | 0 | 0 | — |
| 2022/23 | FA Cup | Jeju United FC | 1 | 1 | 43 | 0 | — | 0 | 0 | — |
| 2022/23 | K League 1 | Jeju United FC | 33 | 32 | 2423 | 5 | 7 | 7 | 0 | 6.88 |
| 2021/22 | K League 1 | Jeju United FC | 31 | 29 | 2026 | 5 | 2 | 2 | 0 | 6.92 |
| 2020/21 | Major League Soccer | Sporting KC | 22 | 15 | 1044 | 3 | 3 | 3 | 0 | 6.79 |
| 2019/20 | Major League Soccer | Sporting KC | 22 | 17 | 1487 | 2 | 6 | 4 | 0 | 6.75 |
| 2019/20 | US Open Cup | Sporting KC | 1 | — | — | 1 | 0 | 0 | 0 | — |
| 2019/20 | CONCACAF Champions League | Sporting KC | 6 | — | — | 4 | 2 | 0 | 0 | — |
| 2018/19 | Major League Soccer | Sporting KC | 33 | 17 | 1639 | 6 | 4 | 1 | 0 | 7.00 |
| 2018/19 | US Open Cup | Sporting KC | 3 | — | — | 0 | 0 | 0 | 0 | — |
| 2017/18 | Major League Soccer | Sporting KC | 32 | 27 | 2258 | 8 | 2 | 4 | 0 | 7.01 |
| 2017/18 | US Open Cup | Sporting KC | 5 | — | — | 2 | 0 | 0 | 0 | — |
| 2016/17 | Primeira Liga | Belenenses | 14 | 9 | 830 | 1 | 2 | 4 | 0 | 6.46 |
| 2016/17 | Taça da Liga | Belenenses | 2 | 1 | 112 | 0 | — | 0 | 0 | — |
| 2015/16 | Taça de Portugal | Estoril | 1 | 1 | 78 | 0 | — | 0 | 0 | — |
| 2015/16 | Primeira Liga | Estoril | 19 | 19 | 1565 | — | 1 | 4 | 0 | 6.60 |
| 2014/15 | Primeira Liga | Moreirense | 25 | — | — | 5 | 0 | 3 | 0 | — |
| 2014/15 | League Cup | Moreirense | 2 | — | — | 1 | 0 | 1 | 0 | — |
| 2014/15 | Taça de Portugal | Moreirense | 1 | — | — | 0 | 0 | 0 | 0 | — |
| 2013/14 | Primeira Liga | Estoril | 17 | — | — | 1 | 0 | 0 | 1 | — |
| 2013/14 | Taça de Portugal | Estoril | 2 | — | — | 1 | 0 | 0 | 0 | — |
| 2013/14 | League Cup | Estoril | 3 | — | — | 0 | 0 | 1 | 0 | — |
| 2013/14 | Europa League | Estoril | 4 | — | — | 0 | 0 | 0 | 0 | — |
| 2012/13 | Taça da Liga | Estoril | 3 | 1 | 177 | 0 | — | 0 | 0 | — |
| 2012/13 | Primeira Liga | Estoril | 26 | — | — | 0 | 0 | 4 | 0 | — |
| 2011/12 | Taça da Liga | Estoril | 2 | 1 | 114 | 0 | — | 1 | 0 | — |
| 2011/12 | Taça de Portugal | Estoril | 2 | 0 | 62 | 0 | — | 0 | 0 | — |
| 2011/12 | Liga de Honra | Estoril | 16 | — | — | 0 | 0 | 2 | 0 | — |
| 2010/11 | Taça de Portugal | Tourizense | 1 | 0 | 46 | 0 | — | 1 | 0 | — |
Availability history
No injuries or suspensions recorded.
Trophies
| Competition | Season | Place |
|---|---|---|
| Segunda Liga (Portugal) | 2011/2012 | Winner |
| US Open Cup (United-States) | 2017 | Winner |
