Ivan Ricardo Neves Abreu Cavaleiro
Center Forward · FC Zurich · season-by-season, by competition, and every match.
Below his 2022/23 peak but holding a solid level — the platform for a return is there.
The record covers 6 seasons (2020/21–2025/26) across 5 clubs, including a move abroad — 112 appearances, 13 goals and 9 assists.
His best campaign on record is 2022/23 at Alanyaspor — Season rating 18, 2 goals and 5 assists in 22 games. Output has held steady across his last 3 full seasons (18 → 12). The gap to his peak is 6 Season points.
Season-to-season output barely moves — his form has stayed within a tight band (±5 points) across 5 campaigns. Made the jump to a higher division in 2022/23 (Süper Lig) and kept playing — 22 games that season.
By season
| Season | Club | Apps | G | A | Rating | Season |
|---|---|---|---|---|---|---|
| 2025/26 | FC Zurich | 13 | 3 | 1 | 14 | 12 |
| 2025/26 | Tondela | 13 | 2 | 0 | 20 | 9 |
| 2024/25 | Stal Mielec | 6 | 2 | 2 | 16 | 9 |
| 2024/25 | RB Bragantino | 5 | 0 | 0 | 26 | 0 |
| 2023/24 | Lille | 17 | 1 | 1 | 43 | 9 |
| 2022/23 | AlanyasporLoan | 22 | 2 | 5 | 31 | 18 |
| 2021/22 | Fulham | 18 | 2 | 0 | 48 | 7 |
| 2020/21 | Fulham | 36 | 3 | 0 | 74 | 18 |
| 2019/20 | Fulham | 44 | 6 | 7 | — | — |
| 2018/19 | Wolves | 23 | 3 | 1 | — | — |
| 2017/18 | Wolves | 42 | 9 | 12 | — | — |
| 2016/17 | Wolves | 31 | 5 | 5 | — | — |
| 2016/17 | Monaco | 2 | 0 | 0 | — | — |
| 2015/16 | Monaco | 12 | 1 | 0 | — | — |
| 2015/16 | Monaco II | 1 | 1 | 0 | — | — |
| 2014/15 | Deportivo La CorunaLoan | 34 | 3 | 0 | — | — |
| 2013/14 | Benfica | 8 | 0 | 0 | — | — |
| 2013/14 | Benfica B | 18 | 10 | 0 | — | — |
| 2012/13 | Benfica B | 38 | 12 | 0 | — | — |
International
| Side | Season | Competition | Apps | G |
|---|---|---|---|---|
| Portugal | 2016/17 | Euro - Qualification | 1 | 0 |
| 2014/15 | Friendly International | 1 | 0 | |
| Portugal U21 | 2015/16 | Euro U21 | 4 | 1 |
| 2015/16 | Euro U21 - Qualification | 7 | 3 | |
| 2013/14 | Tournoi Maurice Revello | 5 | 1 | |
| 2013/14 | Friendly International | 1 | 3 | |
| Portugal U20 | 2013/14 | World Cup U20 | 4 | 0 |
| 2013/14 | Toulon Tournament | 1 | 1 | |
| Portugal U19 | 2012/13 | Euro U19 | 2 | 0 |
| 2011/12 | UEFA U19 Championship | 3 | 1 | |
| Portugal U17 | 2010/11 | Euro U17 | 2 | 0 |
Honours
By competition
| Competition | Apps | Min | G | A | Rating |
|---|---|---|---|---|---|
| Super League | 13 | 889 | 3 | 1 | 6.9 |
| Primeira Ligaat Tondela | 13 | 852 | 2 | 0 | 6.6 |
| Taça de Portugalat Tondela | 1 | 0 | 0 | 0 | — |
Schedule · 2025/26
Also spent part of this season at Tondela — those games aren't in this club's schedule.
| Date | Competition | Opponent | Res | Status | Min | G | A | Rating |
|---|---|---|---|---|---|---|---|---|
| Jan 8 | Friendlies Clubs | A Dinamo Bucuresti | 3-1 | Not in squad | — | |||
| Jan 9 | Friendlies Clubs | H FC Schalke 04 | 0-3 | Not in squad | — | |||
| Jan 12 | Friendlies Clubs | H Fethiyespor | 0-2 | Not in squad | — | |||
| Jul 10 | Friendlies Clubs | A 1. FC Magdeburg | 2-0 | Not in squad | — | |||
| Jul 25 | Super League | H FC Sion | 2-3 | Not in squad | — | |||
| Aug 3 | Super League | A FC Luzern | 1-1 | Not in squad | — | |||
| Aug 10 | Super League | A Lausanne | 2-1 | Not in squad | — | |||
| Aug 15 | Schweizer Cup | A Wettswil-Bonstetten | 2-0 | Not in squad | — | |||
| Aug 23 | Super League | H FC Thun | 0-4 | Not in squad | — | |||
| Aug 30 | Super League | A FC Winterthur | 3-1 | Not in squad | — | |||
| Sep 13 | Super League | H Servette FC | 2-1 | Not in squad | — | |||
| Sep 21 | Schweizer Cup | A Stade Nyonnais | 1-1 | Not in squad | — | |||
| Sep 27 | Super League | H FC ST. Gallen | 3-1 | Not in squad | — | |||
| Oct 4 | Super League | A Grasshoppers | 0-3 | Not in squad | — | |||
| Oct 18 | Super League | A FC Lugano | 0-1 | Not in squad | — | |||
| Oct 26 | Super League | H BSC Young Boys | 2-3 | Not in squad | — | |||
| Oct 29 | Super League | A FC Basel 1893 | 0-2 | Not in squad | — | |||
| Nov 1 | Super League | H Lausanne | 1-2 | Not in squad | — | |||
| Nov 8 | Super League | H FC Luzern | 3-2 | Not in squad | — | |||
| Nov 23 | Super League | A FC Sion | 2-2 | Not in squad | — | |||
| Nov 29 | Super League | H Grasshoppers | 1-0 | Not in squad | — | |||
| Dec 6 | Super League | A FC ST. Gallen | 2-1 | Not in squad | — | |||
| Dec 13 | Super League | H FC Winterthur | 2-2 | Not in squad | — | |||
| Dec 17 | Super League | H FC Lugano | 0-1 | Not in squad | — | |||
| Dec 20 | Super League | A FC Thun | 2-4 | Not in squad | — | |||
| Jan 18 | Super League | A Servette FC | 1-1 | Not in squad | — | |||
| Jan 25 | Super League | H FC Basel 1893 | 3-4 | Not in squad | — | |||
| Feb 1 | Super League | A BSC Young Boys | 0-3 | Not in squad | — | |||
| Feb 8 | Super League | A FC Basel 1893 | 1-2 | Not in squad | — | |||
| Feb 11 | Super League | H FC Winterthur | 3-0 | Not in squad | — | |||
| Feb 14 | Super League | H FC Luzern | 1-4 | Not in squad | — | |||
| Feb 21 | Super League | A Grasshoppers | 2-1 | Not in squad | — | |||
| Mar 1 | Super League | A BSC Young Boys | 0-3 | Not in squad | — | |||
| Mar 4 | Super League | H Lausanne | 1-2 | Not in squad | — | |||
| Mar 7 | Super League | A Servette FC | 1-2 | Not in squad | — | |||
| Mar 14 | Super League | H FC Sion | 1-2 | Played | 80 | 6.9 | ||
| Mar 21 | Super League | H FC Thun | 2-1 | Played | 87 | 1 | 8.2 | |
| Apr 6 | Super League | A FC ST. Gallen | 1-2 | Played | 82 | 1 | 6.9 | |
| Apr 11 | Super League | H FC Lugano | 0-1 | Played | 66 | 6.5 | ||
| Apr 25 | Super League | A Lausanne | 0-3 | Played | 69 | 6.5 | ||
| May 2 | Super League | A FC Winterthur | 2-2 | Played | 86 | 7.2 | ||
| May 9 | Super League | H Grasshoppers | 2-1 | Played | 73 | 1 | 7.2 | |
| May 12 | Super League | A FC Luzern | 0-1 | Played | 59 | 6.9 | ||
| May 16 | Super League | H Servette FC | 0-2 | Played | 36 | 5.5 |