# 2019–20 Primeira Liga

The 2019–20 Primeira Liga (also known as Liga NOS for sponsorship reasons) was the 86th season of the Primeira Liga, the top professional league for Portuguese association football clubs. The season started on 9 August 2019 and was finished on 26 July 2020.
Benfica were the defending champions, after winning their 37th league title in the previous season. Paços de Ferreira and Famalicão were promoted from the second-tier 2018–19 LigaPro, while Gil Vicente were promoted directly from the third-tier 2018–19 Campeonato de Portugal by court decision. They replaced Chaves, Nacional and Feirense, who were relegated to the 2019–20 LigaPro.
On 12 March 2020, the Liga Portuguesa de Futebol Profissional (LPFP) suspended the Primeira Liga due to the COVID-19 pandemic in Portugal. Following the government's approval, the league resumed play on 3 June, with matches of the remaining ten matchdays taking place behind closed doors.
On 15 July 2020, Porto secured their 29th league title with two matches remaining after defeating Sporting CP 2–0 at home.
After the end of the season, on 26 July, Desportivo das Aves and Portimonense were relegated to the 2020–21 LigaPro. However, two days later, Desportivo das Aves and Vitória de Setubal were relegated to the 2020–21 Campeonato de Portugal by decision of the Liga Portuguesa de Futebol Profissional ("LPFP") after both clubs failed to meet the necessary requirements to obtain a licence for registration to participate in professional domestic competitions.

## Effects of the COVID-19 pandemic

Due to the COVID-19 pandemic in Portugal, on 10 March 2020, the LPFP announced that all fixtures on matchday 24 (6–8 March) would be played behind closed doors following the Portuguese government to suspend events in open spaces with more than 5,000 people, as well as events behind closed doors with more than 1,000 participants, until 3 April. Two days later, the LPFP suspended the Primeira Liga and LigaPro until further notice because of effects of the coronavirus pandemic in Portugal. The decision was taken following the Portuguese Football Federation ("FPF")'s announcement of suspending their own non-professional football and futsal competitions and also due to an emergency meeting between the Sindicato dos Jogadores Profissionais de Futebol ("SJPF"), the LPFP and the FPF to monitor the situation, in view of the proposal to suspend all sports competitions, which the SJPF added that in case of infection, there would be an aggravated loss. Shortly after, LPFP president Pedro Proença met with several presidents of Primeira Liga's clubs to assess the impact of the stoppage of professional championships due to the COVID-19 pandemic. He revealed a COVID-19 economic support plan to support the treasury of various clubs in the Primeira Liga and LigaPro. Afterwards, the LPFP announced the creation of an Economic Impact Monitoring Group that would be responsible for presenting measures to support the clubs that competed in the Primeira Liga and LigaPro. The FPF also opened a credit line to support the finances of non-professional football and futsal clubs in the amount of one million euros to minimize the effects of the pandemic on their finances.
On 28 April, Prime Minister of Portugal António Costa reunited with the presidents of the "Big Three" clubs in Portugal (S.L. Benfica, Sporting CP and FC Porto), the president of the FPF and the president of the LPFP to discuss the conditions of the return of football in Portugal. The reunion caused some controversy for some Primeira Liga clubs such as Braga and Vitória de Guimarães, who were not satisfied that only the "Big Three" clubs were the only ones invited to the discussion, and instead believed all Primeira Liga clubs should have been invited. Two days later, António Costa approved the return of the league, with all matches being resumed behind closed doors following the consent of the Portuguese Ministry of Health.
On 11 May, it was announced that several teams in the Primeira Liga had players tested positive for COVID-19, with Benfica having a player from its reserve team to be infected, followed by three players from Famalicão, Moreirense and Vitória de Guimarães that were sent home and were isolated from the rest of their respective teams. On 20 May, LPFP president Pedro Proença president proposed that following the restart of the league, the matches played should be shown on the free-to-air television station RTP in Portugal instead of the pay TV subscriptions, with the backing of the Portuguese government. However, this proposal caused some controversy with the league's main sponsor, NOS, and several other sponsors, as well as various other clubs in the league, most notably Benfica and Porto. This prompted rumours that Proença could be forced to end his term prematurely, rumours Proença later dismissed. Later that month, Benfica left the board of LPFP due to the controversy.
On 14 May, after a meeting of all clubs, five substitutions will be permitted, which was temporarily allowed by IFAB following a proposal by FIFA to lessen the impact of fixture congestion. On 22 May, the LPFP announced that the league would be resumed on 3 June. On 27 May, it was announced that one of the assistant referees for a league match between Benfica and Marítimo had tested positive for COVID-19, leading him to be replaced by another referee for the scheduled league match.
On 30 May, the LPFP approved a plan to resume the league, but during the reunion between all clubs of the league, Marítimo refused to accept the five substitutions rules, leading the rule to be accepted on 8 June by the LPFP despite Marítimo's refusal.

## Teams

Eighteen teams competed in the league – the top fifteen teams from the previous season, the two teams promoted from the LigaPro (Paços de Ferreira and Famalicão) and one team promoted directly from the third-tier Campeonato de Portugal (Gil Vicente). Paços de Ferreira came back to the top division one season after being relegated, while Famalicão secured their return after a 25-year absence. Gil Vicente, having been relegated to the third-level of Portuguese football in the 2018–19 season, were reinstated in the Primeira Liga by court decision, five years after their last participation. These three teams replaced Chaves, Feirense (both relegated after three years in the top flight), and Nacional (relegated one season after their promotion).

### Stadia and locations

| Team | Location | Stadium | Capacity | 2018–19 |
| Belenenses SAD | Oeiras | Estádio Nacional | 37,593 | 9th |
| Benfica | Lisbon | Estádio da Luz | 64,642 | 1st |
| Boavista | Porto | Estádio do Bessa | 28,263 | 8th |
| Braga | Braga | Estádio Municipal de Braga | 30,286 | 4th |
| Desportivo das Aves | Vila das Aves | Estádio do CD Aves | 6,230 | 14th |
| Famalicão | Vila Nova de Famalicão | Estádio Municipal 22 de Junho | 5,307 | 2nd (LP) |
| Gil Vicente | Barcelos | Estádio Cidade de Barcelos | 12,504 | *(CP) |
| Marítimo | Funchal | Estádio do Marítimo | 10,932 | 12th |
| Moreirense | Moreira de Cónegos | Parque de Jogos Comendador Joaquim de Almeida Freitas | 6,153 | 6th |
| Paços de Ferreira | Paços de Ferreira | Estádio Capital do Móvel | 9,076 | 1st (LP) |
| Portimonense | Portimão | Estádio Municipal de Portimão | 6,204 | 11th |
| Porto | Porto | Estádio do Dragão | 50,033 | 2nd |
| Rio Ave | Vila do Conde | Estádio dos Arcos | 9,065 | 7th |
| Santa Clara | Ponta Delgada | Estádio de São Miguel | 12,000 | 10th |
| Sporting CP | Lisbon | Estádio José Alvalade | 50,095 | 3rd |
| Tondela | Tondela | Estádio João Cardoso | 5,000 | 15th |
| Vitória de Guimarães | Guimarães | Estádio D. Afonso Henriques | 30,000 | 5th |
| Vitória de Setúbal | Setúbal | Estádio do Bonfim | 15,720 | 13th |

### Personnel and sponsors

| Team | Manager(s) | Captain | Kit Manufacturer | Main Sponsor |
| Belenenses SAD | Petit | Gonçalo Silva | Lacatoni | Kia Motors |
| Benfica | Nélson Veríssimo | Jardel | Adidas | Emirates |
| Boavista | Daniel Ramos | Idris | PlayGround Stars | VITO Tools |
| Braga | Artur Jorge | Fransérgio | Hummel | Betano |
| Desportivo das Aves | Nuno Manta Santos | Afonso Figueiredo | Lacatoni | AMCO Credit |
| Famalicão | João Pedro Sousa | Rafael Defendi | Macron | Porminho |
| Gil Vicente | Vítor Oliveira | Rúben Fernandes | Lacatoni | Las Kasas |
| Marítimo | José Gomes | Edgar Costa | Nike | - |
| Moreirense | Ricardo Soares | João Aurélio | CDT | - |
| Paços de Ferreira | Pepa | Pedrinho | Joma | Aldro Energy Archived 9 August 2020 at the Wayback Machine |
| Portimonense | Paulo Sérgio | Jadson | Mizuno | McDonald's |
| Porto | Sérgio Conceição | Danilo Pereira | New Balance | MEO |
| Rio Ave | Carlos Carvalhal | Tarantini | Nike | MEO |
| Santa Clara | João Henriques | Osama Rashid | Nike | Santander Bank |
| Sporting CP | Ruben Amorim | Sebastián Coates | Macron | NOS |
| Tondela | Natxo González | Cláudio Ramos | CDT | Cabriz |
| Vitória de Guimarães | Ivo Vieira | Pedro Henrique | Macron | - |
| Vitória de Setúbal | Lito Vidigal | Vasco Fernandes | Hummel | SGS Car |

### Managerial changes

| Team | Outgoing manager | Manner | Date of vacancy | Pos in table | Incoming manager | Date of appointment |
| Paços de Ferreira | Filó | Sacked | 2 September 2019 | 18th | Pepa | 2 September 2019 |
| Sporting CP | Marcel Keizer | Mutual consent | 3 September 2019 | 7th | Leonel Pontes (caretaker) | 3 September 2019 |
| Belenenses SAD | Silas | Sacked | 5 September 2019 | 17th | Pedro Ribeiro | 13 September 2019 |
| Sporting CP | Leonel Pontes (caretaker) | End of caretaker role | 25 September 2019 | 9th | Silas | 26 September 2019 |
| Aves | Augusto Inácio | Sacked | 21 October 2019 | 18th | Leandro Pires (Caretaker) | 21 October 2019 |
| Vitória de Setúbal | Sandro Mendes | Sacked | 27 October 2019 | 14th | Albert Meyong (caretaker) | 30 October 2019 |
| Vitória de Setúbal | Albert Meyong (caretaker) | End of caretaker role | 11 November 2019 | 12th | Julio Velázquez | 11 November 2019 |
| Marítimo | Nuno Manta Santos | Mutual consent | 11 November 2019 | 14th | José Gomes | 14 November 2019 |
| Aves | Leandro Pires (Caretaker) | End of caretaker role | 13 November 2019 | 18th | Nuno Manta Santos | 13 November 2019 |
| Moreirense | Vítor Campelos | Mutual consent | 16 December 2019 | 11th | Ricardo Soares | 18 December 2019 |
| Boavista | Lito Vidigal | Sacked | 17 December 2019 | 8th | Daniel Ramos | 18 December 2019 |
| Braga | Ricardo Sá Pinto | Sacked | 23 December 2019 | 10th | Ruben Amorim | 27 December 2019 |
| Belenenses SAD | Pedro Ribeiro | Resigned | 12 January 2020 | 17th | Petit | 15 January 2020 |
| Portimonense | António Folha | Resigned | 18 January 2020 | 17th | Bruno Lopes Joaquim Rolão Preto | 19 January 2020 6 February 2020 |
| Portimonense | Bruno Lopes Joaquim Rolão Preto | End of caretaker role | 10 February 2020 | 17th | Paulo Sérgio | 10 February 2020 |
| Sporting CP | Silas | Mutual consent | 3 March 2020 | 4th | Ruben Amorim | 5 March 2020 |
| Braga | Ruben Amorim | Signed by Sporting CP | 5 March 2020 | 3rd | Custódio | 5 March 2020 |
| Benfica | Bruno Lage | Resigned | 29 June 2020 | 2nd | Nélson Veríssimo | 30 June 2020 |
| Braga | Custódio | Resigned | 1 July 2020 | 4th | Artur Jorge | 1 July 2020 |
| Vitória de Setúbal | Julio Velázquez | Mutual consent | 2 July 2020 | 15th | Albert Meyong (caretaker) | 2 July 2020 |
| Vitória de Setúbal | Albert Meyong (caretaker) | End of caretaker role | 5 July 2020 | 15th | Alexandre Santana | 5 July 2020 |

## League table

| Pos | Teamvte | Pld | W | D | L | GF | GA | GD | Pts | Qualification or relegation |
| 1 | Porto (C) | 34 | 26 | 4 | 4 | 74 | 22 | +52 | 82 | Qualification for the Champions League group stage |
| 2 | Benfica | 34 | 24 | 5 | 5 | 71 | 26 | +45 | 77 | Qualification for the Champions League third qualifying round |
| 3 | Braga | 34 | 18 | 6 | 10 | 61 | 40 | +21 | 60 | Qualification for the Europa League group stage |
| 4 | Sporting CP | 34 | 18 | 6 | 10 | 49 | 34 | +15 | 60 | Qualification for the Europa League third qualifying round |
| 5 | Rio Ave | 34 | 15 | 10 | 9 | 48 | 36 | +12 | 55 | Qualification for the Europa League second qualifying round |
| 6 | Famalicão | 34 | 14 | 12 | 8 | 53 | 51 | +2 | 54 | |
| 7 | Vitória de Guimarães | 34 | 13 | 11 | 10 | 53 | 38 | +15 | 50 | |
| 8 | Moreirense | 34 | 10 | 13 | 11 | 42 | 44 | −2 | 43 | |
| 9 | Santa Clara | 34 | 11 | 10 | 13 | 36 | 41 | −5 | 43 | |
| 10 | Gil Vicente | 34 | 11 | 10 | 13 | 39 | 43 | −4 | 43 | |
| 11 | Marítimo | 34 | 9 | 12 | 13 | 34 | 42 | −8 | 39 | |
| 12 | Boavista | 34 | 10 | 9 | 15 | 28 | 39 | −11 | 39 | |
| 13 | Paços de Ferreira | 34 | 11 | 6 | 17 | 35 | 51 | −16 | 39 | |
| 14 | Tondela | 34 | 9 | 9 | 16 | 30 | 44 | −14 | 36 | |
| 15 | Belenenses SAD | 34 | 9 | 8 | 17 | 27 | 54 | −27 | 35 | |
| 16 | Vitória de Setúbal (R) | 34 | 7 | 13 | 14 | 27 | 43 | −16 | 34 | Relegation to Campeonato de Portugal |
| 17 | Portimonense | 34 | 7 | 12 | 15 | 30 | 45 | −15 | 33 | |
| 18 | Aves (R) | 34 | 5 | 2 | 27 | 24 | 68 | −44 | 17 | Left the league system in May 2023 |
* 1 2 Head-to-head away goals: Braga 1, Sporting 0
* 1 2 3 Since the winners of the 2019–20 Taça de Portugal, Porto, qualified for the Champions League based on league position, the spot awarded to the third-placed team (Europa League third qualifying round) was passed to the fourth-placed team, and the spot awarded to the fourth-placed team (Europa League second qualifying round) was passed to the fifth-placed team.
* 1 2 3 Head-to-head points: Moreirense 9, Santa Clara 7, Gil Vicente 1
* 1 2 3 Head-to-head points: Marítimo 12, Boavista 4, Paços de Ferreira 1
* ↑ Vitória de Setúbal and Aves failed to produce valid licensing documentation to compete in the 2020–21 seasons of the Primeira Liga and LigaPro, respectively, so they were punished by the Portuguese Professional Football League with direct relegation to the Campeonato de Portugal. As a result, Portimonense (17th place) were invited to remain in the top tier for the 2020–21 season.

### Positions by round

The table lists the positions of teams after each week of matches. In order to preserve chronological evolvements, any postponed matches are not included to the round at which they were originally scheduled, but added to the full round they were played immediately afterwards.
| Team ╲ Round | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 |
| Porto | 14 | 6 | 3 | 3 | 3 | 3 | 3 | 1 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
| Benfica | 1 | 1 | 3 | 2 | 2 | 2 | 2 | 2 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 |
| Braga | 2 | 7 | 7 | 13 | 16 | 16 | 11 | 8 | 10 | 10 | 9 | 6 | 7 | 8 | 6 | 5 | 5 | 5 | 3 | 4 | 3 | 3 | 3 | 3 | 3 | 3 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 3 |
| Sporting CP | 6 | 3 | 1 | 6 | 5 | 7 | 5 | 4 | 4 | 4 | 4 | 4 | 4 | 3 | 4 | 4 | 4 | 4 | 4 | 3 | 4 | 4 | 4 | 4 | 4 | 4 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 4 |
| Rio Ave | 6 | 13 | 6 | 5 | 8 | 4 | 8 | 7 | 7 | 9 | 7 | 9 | 6 | 6 | 7 | 7 | 7 | 7 | 6 | 5 | 5 | 5 | 5 | 5 | 6 | 6 | 6 | 6 | 5 | 6 | 5 | 6 | 6 | 5 |
| Famalicão | 3 | 2 | 2 | 1 | 1 | 1 | 1 | 3 | 3 | 3 | 3 | 3 | 3 | 4 | 3 | 3 | 3 | 3 | 5 | 6 | 6 | 6 | 6 | 7 | 5 | 5 | 5 | 5 | 6 | 5 | 6 | 5 | 5 | 6 |
| Vitoria de Guimarães | 6 | 12 | 13 | 14 | 10 | 6 | 4 | 5 | 5 | 5 | 5 | 7 | 5 | 5 | 5 | 6 | 6 | 6 | 7 | 7 | 8 | 7 | 7 | 6 | 7 | 7 | 7 | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
| Moreirense | 16 | 7 | 8 | 7 | 9 | 10 | 12 | 12 | 12 | 13 | 13 | 11 | 13 | 11 | 13 | 13 | 13 | 13 | 13 | 13 | 14 | 10 | 12 | 8 | 8 | 9 | 10 | 9 | 8 | 8 | 8 | 8 | 8 | 8 |
| Santa Clara | 17 | 10 | 11 | 9 | 7 | 9 | 7 | 9 | 9 | 8 | 11 | 13 | 14 | 15 | 14 | 14 | 14 | 14 | 11 | 9 | 7 | 8 | 8 | 10 | 9 | 8 | 9 | 8 | 10 | 10 | 11 | 10 | 9 | 9 |
| Gil Vicente | 4 | 11 | 12 | 10 | 13 | 12 | 14 | 15 | 15 | 14 | 10 | 8 | 10 | 12 | 11 | 8 | 8 | 12 | 12 | 12 | 10 | 11 | 9 | 9 | 10 | 11 | 11 | 11 | 11 | 11 | 9 | 9 | 10 | 10 |
| Marítimo | 6 | 15 | 17 | 11 | 15 | 15 | 10 | 11 | 11 | 15 | 14 | 16 | 15 | 13 | 12 | 11 | 11 | 11 | 14 | 14 | 12 | 15 | 15 | 15 | 15 | 15 | 15 | 16 | 13 | 12 | 12 | 11 | 12 | 11 |
| Boavista | 4 | 3 | 5 | 4 | 4 | 5 | 6 | 6 | 6 | 6 | 6 | 5 | 9 | 9 | 8 | 9 | 12 | 12 | 8 | 8 | 9 | 9 | 10 | 11 | 11 | 10 | 8 | 10 | 9 | 9 | 10 | 12 | 11 | 12 |
| Paços de Ferreira | 18 | 18 | 18 | 18 | 18 | 17 | 17 | 17 | 17 | 17 | 17 | 17 | 17 | 17 | 16 | 15 | 15 | 15 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | 12 | 14 | 13 | 13 | 13 | 13 | 13 |
| Tondela | 10 | 13 | 9 | 8 | 6 | 8 | 9 | 10 | 8 | 7 | 8 | 10 | 8 | 10 | 9 | 10 | 10 | 10 | 10 | 11 | 13 | 14 | 14 | 14 | 14 | 14 | 14 | 15 | 16 | 16 | 16 | 17 | 15 | 14 |
| Belenenses SAD | 8 | 16 | 15 | 17 | 12 | 14 | 16 | 13 | 13 | 12 | 15 | 12 | 12 | 14 | 15 | 16 | 16 | 16 | 15 | 15 | 15 | 13 | 13 | 13 | 13 | 13 | 13 | 14 | 12 | 14 | 14 | 14 | 14 | 15 |
| Vitoria de Setúbal | 10 | 17 | 16 | 16 | 11 | 11 | 13 | 14 | 13 | 11 | 12 | 14 | 11 | 7 | 10 | 12 | 9 | 9 | 9 | 10 | 11 | 12 | 11 | 12 | 12 | 12 | 12 | 13 | 15 | 15 | 15 | 15 | 16 | 16 |
| Portimonense | 10 | 5 | 10 | 12 | 14 | 13 | 15 | 16 | 16 | 16 | 16 | 15 | 16 | 16 | 17 | 17 | 17 | 17 | 17 | 17 | 17 | 17 | 17 | 17 | 17 | 17 | 17 | 17 | 17 | 17 | 17 | 16 | 17 | 17 |
| Desportivo das Aves | 14 | 7 | 14 | 15 | 17 | 18 | 18 | 18 | 18 | 18 | 18 | 18 | 18 | 18 | 18 | 18 | 18 | 18 | 18 | 18 | 18 | 18 | 18 | 18 | 18 | 18 | 18 | 18 | 18 | 18 | 18 | 18 | 18 | 18 |
* Leader and UEFA Champions League group stage
* UEFA Champions League third qualifying round
* UEFA Europa League group stage
* UEFA Europa League third qualifying round
* UEFA Europa League second qualifying round
* Relegation to LigaPro

### Results

| Home \ Away | BEL | BEN | BOA | BRA | DAV | FAM | GVI | MAR | MOR | PAÇ | PRT | POR | RAV | STC | SCP | TON | VGU | VSE |
| Belenenses SAD | — | 0–2 | 0–1 | 1–7 | 3–2 | 0–0 | 1–0 | 1–0 | 0–1 | 1–0 | 2–1 | 1–1 | 0–2 | 0–2 | 1–3 | 1–1 | 1–1 | 0–1 |
| Benfica | 3–2 | — | 3–1 | 0–1 | 2–1 | 4–0 | 2–0 | 4–0 | 1–1 | 5–0 | 4–0 | 0–2 | 2–0 | 3–4 | 2–1 | 0–0 | 2–0 | 1–0 |
| Boavista | 1–2 | 1–4 | — | 2–0 | 2–1 | 0–1 | 0–1 | 0–1 | 0–1 | 1–1 | 1–1 | 0–1 | 0–2 | 1–0 | 1–1 | 0–0 | 2–0 | 3–1 |
| Braga | 1–1 | 0–4 | 0–1 | — | 4–0 | 2–2 | 2–2 | 2–2 | 3–1 | 0–1 | 3–1 | 2–1 | 2–0 | 2–0 | 1–0 | 2–1 | 3–2 | 3–1 |
| Desportivo das Aves | 0–2 | 0–4 | 0–1 | 1–0 | — | 2–3 | 1–2 | 3–1 | 0–1 | 1–3 | 3–0 | 0–0 | 0–4 | 0–1 | 0–1 | 0–1 | 0–2 | 1–0 |
| Famalicão | 3–1 | 1–1 | 2–2 | 0–0 | 1–1 | — | 2–1 | 1–1 | 3–3 | 4–2 | 0–1 | 2–1 | 1–0 | 0–1 | 3–1 | 2–3 | 0–7 | 3–0 |
| Gil Vicente | 2–0 | 0–1 | 0–0 | 1–1 | 3–0 | 1–3 | — | 2–0 | 1–5 | 3–3 | 1–1 | 2–1 | 1–0 | 1–1 | 3–1 | 3–2 | 2–2 | 0–0 |
| Marítimo | 1–3 | 2–0 | 1–0 | 1–2 | 1–2 | 3–3 | 2–1 | — | 2–1 | 3–0 | 1–1 | 1–1 | 0–0 | 2–2 | 1–1 | 2–3 | 0–0 | 1–1 |
| Moreirense | 2–1 | 1–2 | 1–1 | 1–2 | 3–2 | 1–1 | 3–0 | 2–0 | — | 1–1 | 1–0 | 2–4 | 0–1 | 2–1 | 0–0 | 1–2 | 1–1 | 1–1 |
| Paços de Ferreira | 2–1 | 0–2 | 0–1 | 1–5 | 2–1 | 2–1 | 0–0 | 0–1 | 1–0 | — | 2–1 | 0–1 | 0–0 | 0–1 | 1–2 | 1–0 | 1–2 | 2–3 |
| Portimonense | 0–0 | 2–2 | 2–1 | 0–1 | 2–0 | 2–1 | 1–0 | 3–2 | 1–1 | 0–0 | — | 2–3 | 1–1 | 1–1 | 1–3 | 0–1 | 0–1 | 0–0 |
| Porto | 5–0 | 3–2 | 4–0 | 1–2 | 1–0 | 3–0 | 2–1 | 1–0 | 6–1 | 2–0 | 1–0 | — | 1–1 | 2–0 | 2–0 | 3–0 | 3–0 | 4–0 |
| Rio Ave | 0–0 | 1–2 | 2–0 | 4–3 | 5–1 | 2–2 | 1–0 | 0–1 | 1–1 | 2–3 | 2–1 | 0–1 | — | 2–2 | 1–1 | 2–4 | 1–1 | 1–0 |
| Santa Clara | 0–0 | 1–2 | 1–2 | 3–2 | 3–0 | 0–2 | 1–0 | 0–1 | 2–0 | 2–1 | 1–1 | 0–2 | 0–1 | — | 0–4 | 1–0 | 2–2 | 1–1 |
| Sporting CP | 2–0 | 0–2 | 2–0 | 2–1 | 2–0 | 1–2 | 2–1 | 1–0 | 1–0 | 1–0 | 2–1 | 1–2 | 2–3 | 1–0 | — | 2–0 | 3–1 | 0–0 |
| Tondela | 0–1 | 0–1 | 1–1 | 1–0 | 2–0 | 0–1 | 1–1 | 0–0 | 1–1 | 1–3 | 1–2 | 1–3 | 1–2 | 0–0 | 1–0 | — | 1–3 | 0–3 |
| Vitória de Guimarães | 5–0 | 0–1 | 1–1 | 0–2 | 5–1 | 1–1 | 1–2 | 1–0 | 1–1 | 1–0 | 2–0 | 1–2 | 1–2 | 1–0 | 2–2 | 2–0 | — | 2–0 |
| Vitória de Setúbal | 2–0 | 1–1 | 1–0 | 1–0 | 1–0 | 1–2 | 1–2 | 0–0 | 0–0 | 2–3 | 0–0 | 0–4 | 1–2 | 2–2 | 1–3 | 0–0 | 1–1 | — |

## Statistics
### Top goalscorers

| Rank | Player | Club | Goals |
| 1 | Mehdi Taremi | Rio Ave | 18 |
| 1 | Carlos Vinícius | Benfica | 18 |
| 1 | Pizzi | Benfica | 18 |
| 4 | Paulinho | Braga | 17 |
| 5 | Fábio Abreu | Moreirense | 13 |
| 6 | Moussa Marega | Porto | 12 |
| 6 | Fábio Martins | Famalicão | 12 |
| 6 | Ricardo Horta | Braga | 12 |
| 9 | Alex Telles | Porto | 11 |
| 9 | Douglas Tanque | Paços de Ferreira | 11 |

### Hat-tricks

| Player | For | Against | Result | Date |
| Zé Luís | Porto | Vitória de Setúbal | 4–0 (H) | 17 August 2019 |
| Mehdi Taremi | Rio Ave | Aves | 5–1 (H) | 24 August 2019 |
| Paulinho | Braga | Paços de Ferreira | 5–1 (A) | 10 July 2020 |

#### Notes

(H) – Home team (A) – Away team

### Top assists

| Rank | Player | Club | Assists |
| 1 | Pizzi | Benfica | 14 |
| 2 | Jesús Corona | Porto | 11 |
| 3 | Otávio | Porto | 9 |
| 4 | Alex Telles | Porto | 8 |
| 4 | Bruno Tabata | Portimonense | 8 |
| 6 | Bruno Fernandes | Sporting CP | 7 |
| 6 | Paulinho | Braga | 7 |
| 8 | Álex Grimaldo | Benfica | 6 |
| 8 | Lincoln | Santa Clara | 6 |
| 8 | Carlos Mané | Rio Ave | 6 |
| 8 | Carlos Vinícius | Benfica | 6 |
| 8 | Fábio Martins | Famalicão | 6 |
| 8 | Ricardo Esgaio | Braga | 6 |

### Clean sheets

| Rank | Player | Club | Clean sheets |
| 1 | Agustín Marchesín | Porto | 18 |
| 2 | Odysseas Vlachodimos | Benfica | 16 |
| 3 | Giorgi Makaridze | Vitória de Setúbal | 13 |
| 4 | Paweł Kieszek | Rio Ave | 11 |
| 5 | Amir Abedzadeh | Marítimo | 10 |
| 5 | Douglas | Vitória de Guimarães | 10 |
| 5 | Luís Maximiano | Sporting CP | 10 |
| 8 | Marco Pereira | Santa Clara | 9 |
| 8 | Cláudio Ramos | Tondela | 9 |
| 10 | Denis | Gil Vicente | 8 |
| 10 | Mateus Pasinato | Moreirense | 8 |

### Discipline
#### Player

* Most yellow cards: 14
** José Semedo (Vitória de Setúbal)
* Most red cards: 2
** João Afonso (Gil Vicente)
** Sebastián Coates (Sporting CP)
** José Semedo (Vitória de Setúbal)
** Raul Silva (Braga)
** Alex Telles (Porto)
** Rafik Halliche (Moreirense)

#### Club

* Most yellow cards: 102
** Paços de Ferreira
* Most red cards: 6
** Famalicão

## Awards
### Monthly awards

| Month | Manager of the Month | Manager of the Month | Player of the Month | Player of the Month | Goalkeeper of the Month | Goalkeeper of the Month | Defender of the Month | Defender of the Month | Midfielder of the Month | Midfielder of the Month | Forward of the Month | Forward of the Month | Goal of the Month | Goal of the Month | Goal of the Month |
| Month | Name | Club | Name | Club | Name | Club | Name | Club | Name | Club | Name | Club | Name | Club | Against/Date |
| August | João Pedro Sousa | Famalicão | Pizzi | Benfica | Agustín Marchesín | Porto | Alex Telles | Porto | Bruno Fernandes | Sporting | Zé Luís | Porto | Davidson | Vitória Guimarães | Boavista 18 August |
| September | João Pedro Sousa | Famalicão | Fábio Martins | Famalicão | Agustín Marchesín | Porto | Nehuén Pérez | Famalicão | Bruno Fernandes | Sporting | Fábio Martins | Famalicão | Rúben Lameiras | Famalicão | Sporting 19 September |
| October/November | Vítor Oliveira | Gil Vicente | Carlos Vinícius | Benfica | Agustín Marchesín | Porto | Rúben Dias | Benfica | Pizzi | Benfica | Carlos Vinícius | Benfica | Alex Telles | Porto | Boavista 10 November |
| December | Bruno Lage | Benfica | Pizzi | Benfica | Agustín Marchesín | Porto | Alex Telles | Porto | Pizzi | Benfica | Carlos Vinícius | Benfica | Zé Luís | Porto | Paços de Ferreira 2 December |
| January | Bruno Lage | Benfica | Ricardo Horta | Braga | Helton Leite | Boavista | Edmond Tapsoba | Vitória Guimarães | Bruno Fernandes | Sporting CP | Ricardo Horta | Braga | Jesus Corona | Porto | Moreirense 10 January |
| February | Sérgio Conceição | Porto | Alex Telles | Porto | Helton Leite | Boavista | Alex Telles | Porto | Sérgio Oliveira | Porto | Sandro Lima | Gil Vicente | Pedro Nuno | Moreirense | Gil Vicente 2 February |
| June | Paulo Sérgio | Portimonense | Jovane Cabral | Sporting | Helton Leite | Boavista | René Santos | Marítimo | Pedro Gonçalves | Famalicão | Douglas Tanque | Paços de Ferreira | Bruno Santos | Paços de Ferreira | Rio Ave 7 June |
| July | – | – | – | – | – | – | – | – | – | – | – | – | Soares | Porto | Moreirense 20 July |

### Annual awards

Annual awards were announced on 29 August 2020.
| Award | Winner | Club |
| Player of the Season | Jesús Corona | Porto |
| Manager of the Season | Sérgio Conceição | Porto |
| Goal of the Season | Zé Luís | Porto |
| Young Player of the Season | Pedro Gonçalves | Famalicão |
| Top scorer | Carlos Vinícius | Benfica |
| Top scorer | Mehdi Taremi | Rio Ave |
| Top scorer | Pizzi | Benfica |
| Player Fair-Play Prize | Paweł Kieszek | Rio Ave |
| Club Fair-Play Prize | Gil Vicente | Gil Vicente |
| Turf of the Season | Portimonense | Portimonense |
Team of the Year :
| Goalkeeper | Agustín Marchesín (Porto) | Agustín Marchesín (Porto) | Agustín Marchesín (Porto) | Agustín Marchesín (Porto) | Agustín Marchesín (Porto) | Agustín Marchesín (Porto) |
| Defence | Ricardo Esgaio (Braga) | Pepe (Porto) | Pepe (Porto) | Rúben Dias (Benfica) | Rúben Dias (Benfica) | Alex Telles (Porto) |
| Midfield | Pizzi (Benfica) | Pizzi (Benfica) | Pedro Gonçalves (Famalicão) | Pedro Gonçalves (Famalicão) | Otávio (Porto) | Otávio (Porto) |
| Attack | Jesús Corona (Porto) | Jesús Corona (Porto) | Paulinho (Braga) | Paulinho (Braga) | Mehdi Taremi (Rio Ave) | Mehdi Taremi (Rio Ave) |

## Number of teams by district

| Rank | District Football Associations | Number | Teams |
| 1 | Braga | 5 | Braga, Famalicão, Gil Vicente, Moreirense and Vitória de Guimarães |
| 1 | Porto | 5 | Boavista, Desportivo das Aves, Paços de Ferreira, Porto and Rio Ave |
| 3 | Lisbon | 3 | Belenenses SAD, Benfica and Sporting CP |
| 4 | Faro | 1 | Portimonense |
| 4 | Funchal | 1 | Marítimo |
| 4 | Ponta Delgada | 1 | Santa Clara |
| 4 | Setúbal | 1 | Vitória de Setúbal |
| 4 | Viseu | 1 | Tondela |