Profile
| Club | Olympique Lyonnais |
| Nationality | Portugal |
| Born | Mar 19, 2005 (21 yrs) |
| Height | 175 cm |
| Foot | Right |
| Contract | Until Jun 2029 |
| Market Value | 9M EUR |
| Number | #17 |
Season Summary (39 matches, 2107' played)
8
Goals
10
Assists
7.10
Avg Rating
4.1
xG
6.1
xA
ATTACKING
| Shots | 48 |
| On target | 28 |
| Key passes | 44 |
| Pass accuracy | 83.2% |
DEFENSIVE
| Tackles | 29 |
| Interceptions | 15 |
| Clearances | 15 |
| Recoveries | 107 |
DUELS & DISCIPLINE
| Duels won | 140/320 |
| Aerials won | 10/39 |
| Yellow cards | 2 |
| Red cards | 0 |
Per 90 Minutes
0.34
Goals
0.43
Assists
0.17
xG
0.26
xA
2.05
Shots
1.88
Key Passes
1.24
Tackles
0.64
Interceptions
5.98
Duels Won
Match-by-Match Statistics
| Date | League | Match | Min | Rating | G | A | xG | Shots | KP | Pass% | Tackles | Duels | Cards |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| May 03 | Ligue 1 | Olympique L… 4-2 Stade Renna… | 90 | 8.6 | 1 | 0 | 0.64 | 3(2) | 0 | 20/24 | 1 | 9/15 | - |
| Apr 25 | Ligue 1 | Olympique L… 3-2 Auxerre | 90 | 6.7 | 0 | 0 | 0.11 | 1 | 1 | 27/33 | 1 | 5/14 | - |
| Apr 19 | Ligue 1 | Paris Saint… 1-2 Olympique L… | 90 | 9.2 | 1 | 1 | 0.14 | 2(2) | 2 | 15/21 | 1 | 10/20 | - |
| Apr 12 | Ligue 1 | Olympique L… 2-- Lorient | 90 | 6.9 | 0 | 0 | 0.03 | 2(1) | 2 | 33/39 | 2 | 7/20 | ■ |
| Apr 05 | Ligue 1 | Angers --- Olympique L… | 90 | 6.4 | 0 | 0 | 0.15 | 3 | 1 | 24/30 | 0 | 5/17 | - |
| Mar 22 | Ligue 1 | Olympique L… 1-2 AS Monaco | 85 | 6.6 | 0 | 0 | - | 0 | 0 | 18/27 | 0 | 6/12 | - |
| Mar 19 | Europa Leag… | Olympique L… --2 Celta Vigo | 23 | 6.9 | 0 | 0 | - | 0 | 1 | 5/8 | 0 | 3/3 | - |
| Feb 08 | Ligue 1 | Nantes --1 Olympique L… | 86 | 7.0 | 0 | 1 | 0.20 | 2(1) | 2 | 20/24 | 2 | 7/15 | - |
| Feb 04 | Coupe de Fr… | Olympique L… 2-- Stade Laval… | 27 | 6.9 | 1 | 0 | - | 1(1) | 0 | 8/8 | 0 | 2/8 | ■ |
| Feb 01 | Ligue 1 | Olympique L… 1-- Lille | 90 | 6.7 | 0 | 0 | - | 0 | 1 | 24/32 | 4 | 11/28 | - |
| Jan 30 | Europa Leag… | Olympique L… 4-2 PAOK | 87 | 7.5 | 0 | 2 | 0.24 | 3(1) | 6 | 35/38 | 1 | 5/8 | - |
| Jan 25 | Ligue 1 | Metz 2-5 Olympique L… | 89 | 6.4 | 0 | 0 | 0.15 | 0 | 1 | 24/31 | 0 | 5/9 | - |
| Jan 22 | Europa Leag… | BSC Young B… --1 Olympique L… | 76 | 7.1 | 0 | 0 | 0.04 | 2(2) | 2 | 28/31 | 2 | 5/11 | - |
| Jan 18 | Ligue 1 | Olympique L… 2-1 Stade Brest… | 89 | 6.6 | 0 | 1 | 0.06 | 1 | 2 | 33/39 | 0 | 1/5 | - |
| Jan 12 | Coupe de Fr… | Lille 1-2 Olympique L… | 90 | 7.8 | 1 | 0 | - | 2(1) | 2 | 19/27 | 1 | 7/14 | - |
| Jan 03 | Ligue 1 | AS Monaco 1-3 Olympique L… | 90 | 6.7 | 0 | 0 | 0.14 | 2(2) | 1 | 26/30 | 0 | 4/9 | - |
| Dec 22 | Coupe de Fr… | Olympique L… 3-- St Cyr Coll… | 90 | 8.1 | 0 | 1 | - | 5(5) | 4 | 40/49 | 2 | 6/11 | - |
| Dec 14 | Ligue 1 | Olympique L… 1-- Le Havre | 90 | 7.2 | 0 | 1 | 0.09 | 2 | 4 | 15/19 | 0 | 4/11 | - |
| Dec 12 | Europa Leag… | Olympique L… 2-1 Go Ahead Ea… | 89 | 7.2 | 1 | 0 | 0.80 | 4(2) | 0 | 35/37 | 1 | 3/5 | - |
| Dec 07 | Ligue 1 | Lorient 1-- Olympique L… | 20 | 6.8 | 0 | 0 | 0.07 | 1(1) | 1 | 7/7 | 0 | 2/3 | - |
| Nov 30 | Ligue 1 | Olympique L… 3-- Nantes | 18 | 8.0 | 0 | 1 | 0.13 | 1 | 2 | 6/7 | 0 | - | - |
| Nov 28 | Europa Leag… | Maccabi Tel… --6 Olympique L… | - | - | 0 | 0 | - | 0 | 0 | - | 0 | - | - |
| Nov 23 | Ligue 1 | Auxerre --- Olympique L… | 90 | 6.9 | 0 | 0 | 0.15 | 3(2) | 3 | 32/38 | 2 | 3/9 | - |
| Nov 09 | Ligue 1 | Olympique L… 2-3 Paris Saint… | 90 | 7.3 | 1 | 0 | 0.28 | 2(1) | 0 | 11/11 | 2 | 4/12 | - |
| Nov 07 | Europa Leag… | Real Betis 2-- Olympique L… | 45 | 6.4 | 0 | 0 | - | 0 | 2 | 16/19 | 0 | 2/10 | - |
| Nov 02 | Ligue 1 | Stade Brest… --- Olympique L… | 90 | 7.3 | 0 | 0 | - | 0 | 1 | 17/22 | 2 | 10/13 | - |
| Oct 30 | Ligue 1 | Paris FC 3-3 Olympique L… | 74 | 7.2 | 0 | 2 | - | 0 | 2 | 10/11 | 1 | 4/12 | - |
| Oct 26 | Ligue 1 | Olympique L… 2-1 RC Strasbou… | 22 | 8.0 | 1 | 0 | 0.06 | 1(1) | 0 | 11/12 | 0 | 3/5 | - |
| Oct 23 | Europa Leag… | Olympique L… 2-- Basel | 11 | 7.6 | 1 | 0 | 0.36 | 1(1) | 0 | 4/5 | 0 | 0/1 | - |
| Oct 18 | Ligue 1 | Nice 3-2 Olympique L… | 13 | 6.4 | 0 | 0 | 0.03 | 1 | 1 | 5/5 | 0 | 0/1 | - |
| Oct 05 | Ligue 1 | Olympique L… 1-2 Toulouse | 12 | 6.5 | 0 | 0 | 0.02 | 1 | 0 | 2/2 | 0 | 2/6 | - |
| Oct 02 | Europa Leag… | Olympique L… 2-- Red Bull Sa… | - | - | 0 | 0 | - | 0 | 0 | - | 0 | - | - |
| Sep 28 | Ligue 1 | Lille --1 Olympique L… | 15 | 6.4 | 0 | 0 | - | 0 | 0 | - | 0 | 0/2 | - |
| Sep 25 | Europa Leag… | FC Utrecht --1 Olympique L… | 25 | 6.9 | 0 | 0 | 0.21 | 2(2) | 0 | 12/14 | 2 | 2/3 | - |
| Sep 19 | Ligue 1 | Olympique L… 1-- Angers | 1 | - | 0 | 0 | - | 0 | 0 | 2/3 | 0 | 0/1 | - |
| Sep 14 | Ligue 1 | Stade Renna… 3-1 Olympique L… | - | - | 0 | 0 | - | 0 | 0 | - | 0 | - | - |
| Aug 31 | Ligue 1 | Olympique L… 1-- Olympique d… | 19 | 6.7 | 0 | 0 | - | 0 | 0 | 3/3 | 2 | 3/5 | - |
| Aug 23 | Ligue 1 | Olympique L… 3-- Metz | 11 | 6.4 | 0 | 0 | - | 0 | 0 | 3/3 | 0 | 0/2 | - |
| Aug 16 | Ligue 1 | RC Lens --1 Olympique L… | - | - | 0 | 0 | - | 0 | 0 | - | 0 | - | - |
Get Afonso Moreira's data via the API:
# Player profile (+ transfers, preferred foot, contract)
curl -H "Authorization: Token YOUR_API_KEY" \
"https://sports.bzzoiro.com/api/players/1116/"
# All match-by-match stats (30+ metrics per game + heatmap)
curl -H "Authorization: Token YOUR_API_KEY" \
"https://sports.bzzoiro.com/api/player-stats/?player=1116"