Career snapshot
Career highs
| Full name | Johan Cavalli |
|---|---|
| Name in home country | Johan Etienne Anthony Cavalli |
| Date of birth | 1981-09-12 (44 yrs) |
| Place of birth | Ajaccio, France |
| Citizenship | France |
| Position | Midfield - Attacking Midfield (main: Midfield) |
| Foot | left |
| Height | 170.00 m |
| Current club | Retired |
| Joined | 2020-07-01 |
| Contract expires | — |
| Agent | no agent |
| Club | Seasons | First | Last | Matches | Goals | Assists | Minutes |
|---|---|---|---|---|---|---|---|
| FC Nantes | 1 | 98/99 | 98/99 | 0 | 0 | 0 | 0 |
| AC Ajaccio | 10 | 10/11 | 19/20 | 286 | 33 | 58 | 6,424 |
| Nîmes Olympique | 3 | 08/09 | 10/11 | 57 | 1 | 8 | 921 |
| RAEC Mons (-2015) | 1 | 07/08 | 07/08 | 10 | 0 | 0 | 0 |
| Watford FC | 1 | 06/07 | 06/07 | 4 | 0 | 0 | 0 |
| FC Istres Ouest Provence | 2 | 05/06 | 06/07 | 54 | 4 | 0 | 3,638 |
| US Créteil-Lusitanos | 2 | 03/04 | 04/05 | 51 | 14 | 0 | 957 |
| RCD Mallorca B | 1 | 04/05 | 04/05 | 2 | 0 | 0 | 0 |
| FC Lorient | 3 | 01/02 | 03/04 | 27 | 0 | 0 | 0 |
Career trajectory — goals, assists & market value
Goals by season
Assists by season
| Season | Competition | Club | Matches | Goals | Assists | YC | RC | Minutes |
|---|---|---|---|---|---|---|---|---|
| 98/99 | Division 1 | FC Nantes | 0 | 0 | 0 | 0 | 0 | 0 |
| 19/20 | Coupe de France | AC Ajaccio | 1 | 1 | 0 | 0 | 0 | 90 |
| 19/20 | Ligue 2 | AC Ajaccio | 18 | 0 | 3 | 7 | 0 | 0 |
| 18/19 | Coupe de la Ligue | AC Ajaccio | 1 | 0 | 0 | 0 | 0 | 0 |
| 18/19 | Ligue 2 | AC Ajaccio | 30 | 2 | 5 | 10 | 0 | 937 |
| 17/18 | Coupe de la Ligue | AC Ajaccio | 1 | 0 | 0 | 0 | 0 | 0 |
| 17/18 | L1/L2 Playoffs | AC Ajaccio | 3 | 0 | 0 | 1 | 0 | 0 |
| 17/18 | Ligue 2 | AC Ajaccio | 32 | 6 | 5 | 6 | 0 | 351 |
| 16/17 | Coupe de France | AC Ajaccio | 2 | 1 | 0 | 0 | 0 | 85 |
| 16/17 | Ligue 2 | AC Ajaccio | 19 | 4 | 3 | 7 | 0 | 373 |
| 15/16 | Coupe de France | AC Ajaccio | 2 | 0 | 0 | 0 | 0 | 0 |
| 15/16 | Coupe de la Ligue | AC Ajaccio | 1 | 1 | 0 | 0 | 0 | 120 |
| 15/16 | Ligue 2 | AC Ajaccio | 35 | 5 | 3 | 12 | 0 | 555 |
| 14/15 | Coupe de France | AC Ajaccio | 1 | 0 | 0 | 0 | 0 | 0 |
| 14/15 | Coupe de la Ligue | AC Ajaccio | 2 | 1 | 0 | 0 | 0 | 101 |
| 14/15 | Ligue 2 | AC Ajaccio | 32 | 4 | 11 | 9 | 1 | 647 |
| 13/14 | Coupe de France | AC Ajaccio | 2 | 0 | 0 | 0 | 0 | 0 |
| 13/14 | Ligue 1 | AC Ajaccio | 19 | 1 | 6 | 5 | 0 | 1,348 |
| 12/13 | Coupe de France | AC Ajaccio | 1 | 0 | 1 | 0 | 0 | 0 |
| 12/13 | Coupe de la Ligue | AC Ajaccio | 1 | 0 | 0 | 0 | 0 | 0 |
| 12/13 | Ligue 1 | AC Ajaccio | 32 | 2 | 7 | 5 | 1 | 1,156 |
| 11/12 | Coupe de France | AC Ajaccio | 1 | 0 | 0 | 0 | 0 | 0 |
| 11/12 | Coupe de la Ligue | AC Ajaccio | 0 | 0 | 0 | 0 | 0 | 0 |
| 11/12 | Ligue 1 | AC Ajaccio | 31 | 4 | 7 | 13 | 1 | 571 |
| 10/11 | Coupe de France | AC Ajaccio | 1 | 1 | 0 | 0 | 0 | 90 |
| 10/11 | Coupe de la Ligue | Nîmes Olympique | 3 | 0 | 0 | 2 | 0 | 0 |
| 10/11 | Ligue 2 | Nîmes Olympique | 12 | 1 | 0 | 4 | 0 | 921 |
| 10/11 | Ligue 2 | AC Ajaccio | 18 | 0 | 7 | 7 | 0 | 0 |
| 09/10 | Coupe de France | Nîmes Olympique | 1 | 0 | 0 | 0 | 0 | 0 |
| 09/10 | Coupe de la Ligue | Nîmes Olympique | 2 | 0 | 0 | 1 | 0 | 0 |
| 09/10 | Ligue 2 | Nîmes Olympique | 29 | 0 | 5 | 4 | 0 | 0 |
| 08/09 | Ligue 2 | Nîmes Olympique | 10 | 0 | 3 | 3 | 0 | 0 |
| 07/08 | Beker van België | RAEC Mons (-2015) | 2 | 0 | 0 | 1 | 0 | 0 |
| 07/08 | Jupiler League | RAEC Mons (-2015) | 8 | 0 | 0 | 0 | 0 | 0 |
| 06/07 | Coupe de la Ligue | FC Istres Ouest Provence | 2 | 1 | 0 | 0 | 0 | 153 |
| 06/07 | FA Cup | Watford FC | 1 | 0 | 0 | 0 | 0 | 0 |
| 06/07 | Ligue 2 | FC Istres Ouest Provence | 16 | 1 | 0 | 2 | 0 | 953 |
| 06/07 | Premier League | Watford FC | 3 | 0 | 0 | 0 | 0 | 0 |
| 05/06 | Coupe de France | FC Istres Ouest Provence | 1 | 1 | 0 | 0 | 0 | 30 |
| 05/06 | Coupe de la Ligue | FC Istres Ouest Provence | 1 | 0 | 0 | 0 | 0 | 0 |
| 05/06 | Ligue 2 | FC Istres Ouest Provence | 34 | 1 | 0 | 10 | 0 | 2,502 |
| 04/05 | 2ª B - Grupo I | RCD Mallorca B | 2 | 0 | 0 | 1 | 0 | 0 |
| 04/05 | Coupe de la Ligue | US Créteil-Lusitanos | 2 | 1 | 0 | 1 | 0 | 180 |
| 04/05 | Ligue 2 | US Créteil-Lusitanos | 14 | 5 | 0 | 3 | 0 | 226 |
| 03/04 | Coupe de France | US Créteil-Lusitanos | 3 | 2 | 0 | 0 | 0 | 135 |
| 03/04 | Coupe de la Ligue | US Créteil-Lusitanos | 2 | 0 | 0 | 2 | 0 | 0 |
| 03/04 | Ligue 2 | US Créteil-Lusitanos | 30 | 6 | 0 | 9 | 0 | 416 |
| 03/04 | Ligue 2 | FC Lorient | 1 | 0 | 0 | 0 | 0 | 0 |
| 02/03 | Coupe de la Ligue | FC Lorient | 1 | 0 | 0 | 0 | 0 | 0 |
| 02/03 | Ligue 2 | FC Lorient | 18 | 0 | 0 | 4 | 0 | 0 |
| 02/03 | UEFA Cup | FC Lorient | 1 | 0 | 0 | 0 | 1 | 0 |
| 01/02 | Coupe de France | FC Lorient | 3 | 0 | 0 | 0 | 0 | 0 |
| 01/02 | Division 1 | FC Lorient | 3 | 0 | 0 | 1 | 0 | 0 |
| Season | Date | From | To | Type | Market value | Fee |
|---|---|---|---|---|---|---|
| 01/02 | 2002-01-25 | FC Nantes B | FC Lorient | Transfer | 0 | — |
| 03/04 | 2003-08-07 | FC Lorient | US Créteil-L | Transfer | 0 | — |
| 04/05 | 2005-01-24 | US Créteil-L | RCD Mallorca B | Transfer | 0 | — |
| 05/06 | 2005-07-11 | RCD Mallorca B | FC Istres | Transfer | 0 | — |
| 06/07 | 2007-01-31 | FC Istres | Watford | Transfer | 0 | — |
| 07/08 | 2007-10-18 | Watford | RAEC Mons | Transfer | 200000 | — |
| 08/09 | 2008-07-01 | RAEC Mons | Nîmes Olympique | Transfer | 200000 | — |
| 10/11 | 2010-11-26 | Nîmes Olympique | AC Ajaccio | Transfer | 600000 | — |
| 20/21 | 2020-07-01 | AC Ajaccio | Retired | Transfer | 300000 | — |
| Season | Injury | From | To | Days missed | Games missed |
|---|---|---|---|---|---|
| 13/14 | muscle stiffness | 2014-03-07 | 2014-04-05 | 30 | 5 |
| Date | Value |
|---|---|
| Jan 1, 1970 | €300k |
| Jan 1, 1970 | — |
| Jan 1, 1970 | €300k |
| Jan 1, 1970 | €300k |
| Jan 1, 1970 | €300k |
| Jan 1, 1970 | €250k |
| Jan 1, 1970 | €250k |
| Jan 1, 1970 | €250k |
| Jan 1, 1970 | €250k |
| Jan 1, 1970 | €250k |
| Jan 1, 1970 | €400k |
| Jan 1, 1970 | €500k |
| Jan 1, 1970 | €750k |
| Jan 1, 1970 | €1.00m |
| Jan 1, 1970 | €1.25m |
| Jan 1, 1970 | €1.25m |
| Jan 1, 1970 | €1.00m |
| Jan 1, 1970 | €750k |
| Jan 1, 1970 | €600k |
| Jan 1, 1970 | €450k |
| Jan 1, 1970 | €400k |
| Jan 1, 1970 | €300k |
| Jan 1, 1970 | €200k |
No national team data.
| Teammate | PPG played with | Joint goals | Minutes |
|---|---|---|---|
| Riad Nouri | 1 | 3 | 0 |
| Guillermo Ochoa | 1 | 0 | 0 |
| Cédric Avinel | 1 | 1 | 0 |
| Benjamin André | 1 | 2 | 0 |
| Laurent Abergel | 1 | 0 | 0 |
| Jérôme Hergault | 1 | 0 | 0 |
| Carl Medjani | 1 | 1 | 0 |
| Ghislain Gimbert | 1 | 2 | 0 |
| Claude Gonçalves | 1 | 0 | 0 |
| Benjamin Leroy | 1 | 0 | 0 |
Single-season peaks across competitions in this player's career.
Top goalscoring seasons
| Season | Competition | Club | Goals | Matches |
|---|---|---|---|---|
| 17/18 | Ligue 2 | AC Ajaccio | 6 | 32 |
| 03/04 | Ligue 2 | US Créteil-Lusitanos | 6 | 31 |
| 04/05 | Ligue 2 | US Créteil-Lusitanos | 5 | 14 |
Top assist seasons
| Season | Competition | Club | Assists | Matches |
|---|---|---|---|---|
| 14/15 | Ligue 2 | AC Ajaccio | 11 | 32 |
| 10/11 | Ligue 2 | Nîmes Olympique | 7 | 30 |
| 11/12 | Ligue 1 | AC Ajaccio | 7 | 31 |
Teams faced most often by Johan Cavalli's clubs during seasons he played in those competitions (team-level results, not personal head-to-head goals — see disclaimer above).
| Opponent | P | W | D | L | GF | GA | GD | Win % |
|---|---|---|---|---|---|---|---|---|
| Valenciennes FC | 24 | 11 | 10 | 3 | 35 | 25 | +10 | 46% |
| AJ Auxerre | 24 | 7 | 8 | 9 | 26 | 28 | -2 | 29% |
| Chamois Niortais | 23 | 10 | 5 | 8 | 36 | 32 | +4 | 43% |
| FC Sochaux | 23 | 5 | 6 | 12 | 24 | 31 | -7 | 22% |
| Stade Brestois 29 | 23 | 11 | 3 | 9 | 34 | 30 | +4 | 48% |
| Havre AC | 23 | 4 | 8 | 11 | 20 | 32 | -12 | 17% |
| Clermont Foot 63 | 23 | 6 | 8 | 9 | 29 | 31 | -2 | 26% |
| Tours FC | 20 | 12 | 5 | 3 | 39 | 27 | +12 | 60% |
| AS Nancy Lorraine | 19 | 5 | 8 | 6 | 20 | 24 | -4 | 26% |
| US Orléans | 18 | 8 | 6 | 4 | 26 | 15 | +11 | 44% |
| RC Lens | 17 | 5 | 4 | 8 | 21 | 27 | -6 | 29% |
| Stade Lavallois | 16 | 3 | 10 | 3 | 12 | 13 | -1 | 19% |
Auto-detected milestones based on cumulative career totals.
| Season / Year | Milestone | Date |
|---|---|---|
| 01/02 | Senior debut season | |
| 03/04 | First senior goal | |
| 18/19 | Goal #50 (career) |
Yellow / second-yellow / red cards per season. Only seasons with at least one card are shown.
| Season | Matches | Mins | YC | 2nd YC | RC | Cards / 90′ |
|---|---|---|---|---|---|---|
| 19/20 | 19 | 90 | 7 | 0 | 0 | 7 |
| 18/19 | 31 | 937 | 10 | 0 | 0 | 0.96 |
| 17/18 | 36 | 351 | 7 | 0 | 0 | 1.79 |
| 16/17 | 21 | 458 | 7 | 0 | 0 | 1.38 |
| 15/16 | 38 | 675 | 12 | 0 | 0 | 1.6 |
| 14/15 | 35 | 748 | 9 | 0 | 1 | 1.2 |
| 13/14 | 21 | 1,348 | 5 | 0 | 0 | 0.33 |
| 12/13 | 34 | 1,156 | 5 | 0 | 1 | 0.47 |
| 11/12 | 32 | 571 | 13 | 0 | 1 | 2.21 |
| 10/11 | 34 | 1,011 | 13 | 0 | 0 | 1.16 |
| 09/10 | 32 | 0 | 5 | 2 | 0 | 0 |
| 08/09 | 10 | 0 | 3 | 0 | 0 | 0 |
| 07/08 | 10 | 0 | 1 | 0 | 0 | 0 |
| 06/07 | 22 | 1,106 | 2 | 0 | 0 | 0.16 |
| 05/06 | 36 | 2,532 | 10 | 1 | 0 | 0.39 |
| 04/05 | 18 | 406 | 5 | 0 | 0 | 1.11 |
| 03/04 | 36 | 551 | 11 | 0 | 0 | 1.8 |
| 02/03 | 20 | 0 | 4 | 0 | 1 | 0 |
| 01/02 | 6 | 0 | 1 | 0 | 0 | 0 |
Output by competition
Career goals and assists broken down by tournament.
More on Johan Cavalli
Explore this player's career through different angles.
Similar players
Same position, similar age, sorted by market value.
Frequently asked about Johan Cavalli
Who is Johan Cavalli?
Johan Cavalli is a France professional footballer who plays as a attacking midfield for Retired.
How old is Johan Cavalli?
Johan Cavalli is 44 years old. He was born on September 12, 1981 in Ajaccio.
What position does Johan Cavalli play?
Johan Cavalli plays as a attacking midfield (Midfield - Attacking Midfield).
What club does Johan Cavalli play for?
Johan Cavalli currently plays for Retired.
How many career goals has Johan Cavalli scored?
Across all senior club competitions in our dataset, Johan Cavalli has scored 52 goals in 491 appearances.
France