# Championnat de France de football 2019-2020

La saison 2019-2020 de Ligue 1 est la 82e édition du championnat de France de football et la 18e sous l'appellation « Ligue 1 », la 3e et dernière sous l'appellation Ligue 1 Conforama. La saison a débuté le 9 août 2019 et s'est achevée de manière prématurée le 8 mars 2020 à la suite de la pandémie de Covid-19 en France.
Les équipes promues de deuxième division sont le FC Metz et le Stade brestois 29.
Le 30 avril 2020, la LFP vote la fin officielle du championnat et détermine le classement final en prenant en compte un indice de performance (ratio) selon le nombre de points marqués sur tous les matchs joués. Le Paris Saint-Germain est déclaré champion de France, les clubs relégués en Ligue 2 sont l'Amiens SC et le Toulouse FC.

## Participants

Les 17 premiers du championnat 2018-2019, les deux premiers de la Ligue 2 2018-2019 et le vainqueur du barrage opposant le 18e de Ligue 1 au vainqueur des Playoffs de Ligue 2 participent à la compétition.
Paris SG
LOSC Lille
Olympique lyonnais
AS Saint-Étienne
Olympique de Marseille
Montpellier HSC
Stade de Reims
OGC Nice
Nîmes Olympique
RC Strasbourg
Stade rennais FC
SCO d’Angers
FC Metz
FC Nantes
Stade brestois
Girondins de Bordeaux
Toulouse FC
Amiens SC
AS Monaco
Dijon FCO
Localisation des clubs engagés dans le championnat. :
| Club | Dernière montée | Budget en M€ | Classement 2018-2019 | Entraîneur | Depuis | Stade | Capacité en L1 | Nombre de saisons en L1 |
| Paris Saint-Germain | 1974 | 637 | 1er | Thomas Tuchel | 2018 | Parc des Princes | 47 929 | 46 |
| LOSC Lille | 2000 | 120 | 2e | Christophe Galtier | 2017 | Stade Pierre-Mauroy | 49 712 | 59 |
| Olympique lyonnais | 1989 | 310 | 3e | Rudi Garcia | 2019 | Groupama Stadium | 57 206 | 60 |
| AS Saint-Étienne | 2004 | 100 | 4e | Claude Puel | 2019 | Stade Geoffroy-Guichard | 41 965 | 66 |
| Olympique de Marseille | 1996 | 110 | 5e | André Villas-Boas | 2019 | Orange Vélodrome | 66 226 | 69 |
| Montpellier HSC | 2009 | 40 | 6e | Michel Der Zakarian | 2017 | Stade de la Mosson | 22 000 | 27 |
| OGC Nice | 2002 | 50 | 7e | Patrick Vieira | 2018 | Allianz Riviera | 35 596 | 60 |
| Stade de Reims | 2018 | 45 | 8e | David Guion | 2017 | Stade Auguste-Delaune | 20 546 | 35 |
| Nîmes Olympique | 2018 | 27 | 9e | Bernard Blaquart | 2015 | Stade des Costières | 15 788 | 35 |
| Stade rennais FC | 1994 | 65 | 10e | Julien Stéphan | 2018 | Roazhon Park | 29 194 | 62 |
| RC Strasbourg Alsace | 2017 | 43 | 11e | Thierry Laurey | 2016 | Stade de la Meinau | 26 109 | 58 |
| FC Nantes | 2013 | 70 | 12e | Christian Gourcuff | 2019 | Stade de la Beaujoire - Louis Fonteneau | 35 322 | 51 |
| SCO d’Angers | 2015 | 32 | 13e | Stéphane Moulin | 2011 | Stade Raymond-Kopa | 14 582 | 27 |
| Girondins de Bordeaux | 1992 | 70 | 14e | Paulo Sousa | 2019 | Matmut Atlantique | 42 115 | 66 |
| Amiens SC | 2017 | 30 | 15e | Luka Elsner | 2019 | Stade Crédit Agricole la Licorne | 12 999 | 2 |
| Toulouse FC | 2003 | 35 | 16e | Denis Zanko | 2020 | Stadium de Toulouse | 33 033 | 32 |
| AS Monaco | 2013 | 220 | 17e | Robert Moreno | 2019 | Stade Louis-II | 16 500 | 60 |
| Dijon FCO | 2016 | 38 | 18e | Stéphane Jobard | 2019 | Parc des Sports Gaston-Gérard | 15 459 | 4 |
| FC Metz | 2019 | 40 | 1er (Ligue 2) | Vincent Hognon | 2019 | Stade Saint-Symphorien | 25 865 | 61 |
| Stade brestois 29 | 2019 | 30 | 2e (Ligue 2) | Olivier Dall'Oglio | 2019 | Stade Francis-Le Blé | 14 920 | 13 |
Légende des couleurs
* Phase de groupes de la Ligue des champions 2019-2020
* Phase de groupes de la Ligue Europa 2019-2020
* Deuxième tour de qualification de la Ligue Europa 2019-2020
* Promu de Ligue 2 2018-2019

### Changements d'entraîneur

Changements d'entraîneur :
| Club | Entraîneur(s) partant(s) | Motif du départ | Date de départ | Position | Entraîneur(s) arrivant(s) | Date d'arrivée |
| Stade brestois 29 | Jean-Marc Furlan | Contrat dans un autre club | 17 mai 2019 | Pré-saison | Olivier Dall'Oglio | 26 mai 2019 |
| Olympique lyonnais | Bruno Génésio | Fin de contrat | 18 mai 2019 | Pré-saison | Sylvinho | 28 mai 2019 |
| Olympique de Marseille | Rudi Garcia | Démission | 22 mai 2019 | Pré-saison | André Villas-Boas | 28 mai 2019 |
| AS Saint-Étienne | Jean-Louis Gasset | Retraite | 22 mai 2019 | Pré-saison | Ghislain Printant | 6 juin 2019 |
| Amiens SC | Christophe Pélissier | Contrat dans un autre club | 28 mai 2019 | Pré-saison | Luka Elsner | 19 juin 2019 |
| Dijon FCO | Antoine Kombouaré | Démission | 9 juin 2019 | Pré-saison | Stéphane Jobard | 20 juin 2019 |
| FC Nantes | Vahid Halilhodžić | Consentement mutuel | 2 août 2019 | Pré-saison | Patrick Collot | 5 août 2019 |
| FC Nantes | Patrick Collot | Fin de l'intérim | 8 août 2019 | Pré-saison | Christian Gourcuff | 8 août 2019 |
| AS Saint-Étienne | Ghislain Printant | Renvoi | 4 octobre 2019 | 19e | Claude Puel | 4 octobre 2019 |
| Olympique lyonnais | Sylvinho | Renvoi | 7 octobre 2019 | 14e | Gérald Baticle | 7 octobre 2019 |
| Toulouse FC | Alain Casanova | Consentement mutuel | 10 octobre 2019 | 18e | Denis Zanko | 10 octobre 2019 |
| Olympique lyonnais | Gérald Baticle | Fin de l'intérim | 14 octobre 2019 | 14e | Rudi Garcia | 14 octobre 2019 |
| Toulouse FC | Denis Zanko | Fin de l'intérim | 14 octobre 2019 | 18e | Antoine Kombouaré | 14 octobre 2019 |
| AS Monaco | Leonardo Jardim | Renvoi | 28 décembre 2019 | 7e | Robert Moreno | 28 décembre 2019 |
| Toulouse FC | Antoine Kombouaré | Renvoi | 5 janvier 2020 | 20e | Denis Zanko | 5 janvier 2020 |

## Compétition
### Règlement

Le classement est calculé avec le barème de points suivant : une victoire vaut trois points, le match nul un. La défaite ne rapporte aucun point.
Les critères de départage sont inchangés depuis la saison 2017-2018. Ceux-ci se présentent ainsi :
* plus grand nombre de points ;
* plus grande différence de buts générale ;
* plus grand nombre de points dans les confrontations directes ;
* plus grande différence de buts particulière ;
* plus grand nombre de buts dans les confrontations directes ;
* plus grand nombre de buts à l'extérieur dans les confrontations directes ;
* plus grand nombre de buts marqués ;
* plus grand nombre de buts marqués à l'extérieur ;
* plus grand nombre de buts marqués sur une rencontre de championnat ;
* meilleure place au Challenge du fair-play (1 point par joueur averti, 3 points par joueur exclu).

### Classement

* Note : classement définitif de la saison 2019-2020. Celle-ci est arrêtée à la fin de la 28e journée en raison de la pandémie de Covid-19 en France. Les points sont remplacés par le quotient des points par match pour tenir compte du match en moins du RC Strasbourg Alsace et du Paris Saint-Germain. En cas d'égalité, la différence de but particulière est retenue si tous les matchs entre équipes concernées ont pu avoir lieu ; dans le cas inverse la différence de but générale prime.
Classement :
| Rang | Équipe | Pts | J | G | N | P | Bp | Bc | Diff |
| 1 | Paris Saint-Germain $^T$ $^S$ $^C$ $^L$ | 68 (2,52) | 27 | 22 | 2 | 3 | 75 | 24 | +51 |
| 2 | Olympique de Marseille | 56 (2,00) | 28 | 16 | 8 | 4 | 41 | 29 | +12 |
| 3 | Stade rennais FC | 50 (1,79) | 28 | 15 | 5 | 8 | 38 | 24 | +14 |
| 4 | LOSC Lille | 49 (1,75) | 28 | 15 | 4 | 9 | 35 | 27 | +8 |
| 5 | OGC Nice | 41 (1,46) | 28 | 11 | 8 | 9 | 41 | 38 | +3 |
| 6 | Stade de Reims | 41 (1,46) | 28 | 10 | 11 | 7 | 26 | 21 | +5 |
| 7 | Olympique lyonnais | 40 (1,43) | 28 | 11 | 7 | 10 | 42 | 27 | +15 |
| 8 | Montpellier HSC | 40 (1,43) | 28 | 11 | 7 | 10 | 35 | 34 | +1 |
| 9 | AS Monaco | 40 (1,43) | 28 | 11 | 7 | 10 | 44 | 44 | 0 |
| 10 | RC Strasbourg Alsace | 38 (1,41) | 27 | 11 | 5 | 11 | 32 | 32 | 0 |
| 11 | Angers SCO | 39 (1,39) | 28 | 11 | 6 | 11 | 28 | 33 | -5 |
| 12 | Girondins de Bordeaux | 37 (1,32) | 28 | 9 | 10 | 9 | 40 | 34 | +6 |
| 13 | FC Nantes | 37 (1,32) | 28 | 11 | 4 | 13 | 28 | 31 | -3 |
| 14 | Stade brestois 29 $^P$ | 34 (1,21) | 28 | 8 | 10 | 10 | 34 | 37 | -3 |
| 15 | FC Metz $^P$ | 34 (1,21) | 28 | 8 | 10 | 10 | 27 | 35 | -8 |
| 16 | Dijon FCO | 30 (1,07) | 28 | 7 | 9 | 12 | 27 | 37 | -10 |
| 17 | AS Saint-Étienne | 30 (1,07) | 28 | 8 | 6 | 14 | 29 | 45 | -16 |
| 18 | Nîmes Olympique | 27 (0,96) | 28 | 7 | 6 | 15 | 29 | 44 | -15 |
| 19 | Amiens SC | 23 (0,82) | 28 | 4 | 11 | 13 | 31 | 50 | -19 |
| 20 | Toulouse FC | 13 (0,46) | 28 | 3 | 4 | 21 | 22 | 58 | -36 |

#### Ligue des champions 2020-2021

* 1er, 2e et 3e : phase de groupes

#### Ligue Europa 2020-2021

* 4e et 5e : phase de groupes
* 6e : deuxième tour de qualification

#### Relégation en Ligue 2 2020-2021

* 19e et 20e : relégation en Ligue 2

#### Abréviations

* T : Tenant du titre
* C : Vainqueur de la Coupe de France 2019-2020
* L : Vainqueur de la Coupe de la Ligue 2019-2020
* S : Vainqueur du Trophée des champions 2019
* P : Promus de Ligue 2 2018-2019

### Matchs

Tableau de résultats — mise à jour : 8 mars 2020 :
| Résultats (▼dom., ►ext.) | ASC | SCO | GDB | SB29 | DFCO | LOSC | OL | OM | FCM | ASM | MHSC | FCN | OGCN | NO | PSG | SDR | SRFC | ASSE | RCSA | TFC |
| Amiens SC | | Ann. | 1-3 | 1-0 | 1-1 | 1-0 | 2-2 | 3-1 | 0-1 | 1-2 | 1-3 | 1-2 | Ann. | Ann. | 4-4 | 1-1 | Ann. | Ann. | 0-4 | 0-0 |
| Angers SCO | 1-1 | | 3-1 | 0-1 | 2-0 | 0-2 | Ann. | 0-2 | 3-0 | 0-0 | 1-0 | 2-0 | 1-1 | 1-0 | Ann. | 1-4 | Ann. | 4-1 | 1-0 | Ann. |
| Girondins de Bordeaux | Ann. | Ann. | | 2-2 | 2-2 | Ann. | 1-2 | 0-0 | 2-0 | 2-1 | 1-1 | 2-0 | 1-1 | 6-0 | 0-1 | Ann. | Ann. | 0-1 | 0-1 | Ann. |
| Stade brestois 29 | 2-1 | 0-1 | 1-1 | | 2-0 | Ann. | 2-2 | Ann. | 2-0 | Ann. | Ann. | 1-1 | 0-0 | Ann. | 1-2 | 1-0 | 0-0 | 3-2 | 5-0 | 1-1 |
| Dijon FCO | Ann. | Ann. | 0-2 | 3-0 | | 1-0 | Ann. | 0-0 | 2-2 | 1-1 | 2-2 | 3-3 | Ann. | 0-0 | 2-1 | Ann. | 2-1 | 1-2 | 1-0 | 2-1 |
| LOSC Lille | Ann. | 2-1 | 3-0 | 1-0 | 1-0 | | 1-0 | 1-2 | 0-0 | Ann. | 2-1 | 2-1 | Ann. | 2-2 | 0-2 | Ann. | 1-0 | 3-0 | 2-0 | 3-0 |
| Olympique lyonnais | 0-0 | 6-0 | 1-1 | Ann. | 0-0 | 0-1 | | Ann. | 2-0 | Ann. | Ann. | 0-1 | 2-1 | Ann. | 0-1 | Ann. | 0-1 | 2-0 | 1-1 | 3-0 |
| Olympique de Marseille | 2-2 | 0-0 | 3-1 | 2-1 | Ann. | 2-1 | 2-1 | | Ann. | Ann. | 1-1 | 1-3 | Ann. | 3-1 | Ann. | 0-2 | 1-1 | 1-0 | 2-0 | 1-0 |
| FC Metz | 1-2 | Ann. | 1-2 | Ann. | Ann. | Ann. | 0-2 | 1-1 | | 3-0 | 2-2 | 1-0 | Ann. | 2-1 | 0-2 | 1-1 | 0-1 | 3-1 | 1-0 | 2-2 |
| AS Monaco | 3-0 | 1-0 | Ann. | 4-1 | 1-0 | 5-1 | 0-3 | 3-4 | Ann. | | 1-0 | Ann. | 3-1 | 2-2 | 1-4 | 1-1 | 3-2 | Ann. | 1-3 | Ann. |
| Montpellier Hérault SC | 4-2 | 0-0 | Ann. | 4-0 | 2-1 | Ann. | 1-0 | Ann. | 1-1 | 3-1 | | Ann. | 2-1 | 1-0 | 1-3 | Ann. | 0-1 | 1-0 | 3-0 | 3-0 |
| FC Nantes | Ann. | 1-2 | 0-1 | Ann. | 1-0 | 0-1 | Ann. | 0-0 | 0-0 | 0-1 | 1-0 | | 1-0 | Ann. | 1-2 | 1-0 | 1-0 | 2-3 | Ann. | 2-1 |
| OGC Nice | 2-1 | 3-1 | 1-1 | 2-2 | 2-1 | 1-1 | 2-1 | 1-2 | 4-1 | 2-1 | Ann. | Ann. | | 1-3 | 1-4 | 2-0 | 1-1 | Ann. | Ann. | 3-0 |
| Nîmes Olympique | 1-1 | 1-0 | Ann. | 3-0 | 2-0 | Ann. | 0-4 | 2-3 | 1-1 | 3-1 | Ann. | 0-1 | 1-2 | | Ann. | 2-0 | 0-1 | 0-1 | Ann. | 1-0 |
| Paris Saint-Germain | 4-1 | 4-0 | 4-3 | Ann. | 4-0 | 2-0 | 4-2 | 4-0 | Ann. | 3-3 | 5-0 | 2-0 | Ann. | 3-0 | | 0-2 | Ann. | Ann. | 1-0 | 4-0 |
| Stade de Reims | Ann. | 0-0 | 1-1 | 1-0 | 1-2 | 2-0 | 1-1 | Ann. | 0-1 | 0-0 | 1-0 | Ann. | 1-1 | 0-0 | Ann. | | 1-0 | 3-1 | 0-0 | Ann. |
| Stade rennais FC | 3-1 | 2-1 | 1-0 | 0-0 | Ann. | 1-1 | Ann. | 0-1 | Ann. | Ann. | 5-0 | 3-2 | 1-2 | 2-1 | 2-1 | 0-1 | | 2-1 | Ann. | 3-2 |
| AS Saint-Étienne | 2-2 | Ann. | 1-1 | 1-1 | Ann. | Ann. | 1-0 | 0-2 | 0-1 | 1-0 | 0-0 | 0-2 | 4-1 | 2-1 | 0-4 | 1-1 | Ann. | | Ann. | 2-2 |
| RC Strasbourg Alsace | 0-0 | Ann. | Ann. | Ann. | Ann. | 1-2 | 1-2 | Ann. | 1-1 | 2-2 | 1-0 | 2-1 | 1-0 | 4-1 | Ann. | 3-0 | 0-2 | 2-1 | | 4-2 |
| Toulouse FC | 2-0 | 0-2 | 1-3 | 2-5 | 1-0 | 2-1 | 2-3 | 0-2 | Ann. | 1-2 | Ann. | Ann. | 0-2 | Ann. | Ann. | 0-1 | 0-2 | Ann. | 0-1 | |
| Victoire à domicile Match nul Victoire à l'extérieur |||||||||||||||||||||
Ann. : Annulé

#### Barrages de relégation

Les barrages de relégation consistent en une confrontation aller-retour entre le dix-huitième de Ligue 1 et le vainqueur du match 2 des barrages de Ligue 2 2019-2020. Le vainqueur de ces barrages obtient une place pour le championnat de Ligue 1 2020-2021 tandis que le perdant va en Ligue 2. Ces barrages sont annulés en raison de la pandémie de Covid-19.
| Match aller | (L2) Vainqueur des barrages d'accession de la Ligue 2 2019-2020 | Annulé | 18e de la Ligue 1 (L1) | Stade du vainqueur des barrages de la Ligue 2 |
| Match retour | (L1) 18e de la Ligue 1 | Annulé | Vainqueur des barrages d'accession de la Ligue 2 2019-2020 (L2) | Stade du 18e de la Ligue 1 |

## Statistiques
### Domicile et extérieur

Classement domicile :
| Rang | Équipe | Pts | J | G | N | P | Bp | Bc | Diff |
| 1 | Paris Saint-Germain | 37 | 14 | 12 | 1 | 1 | 44 | 11 | +33 |
| 2 | LOSC Lille | 35 | 15 | 11 | 2 | 2 | 24 | 9 | +15 |
| 3 | Montpellier HSC | 32 | 14 | 10 | 2 | 2 | 26 | 10 | +16 |
| 4 | Stade rennais FC | 29 | 14 | 9 | 2 | 3 | 25 | 14 | +11 |
| 5 | OGC Nice | 28 | 15 | 8 | 4 | 3 | 28 | 20 | +8 |
| 6 | Olympique de Marseille | 28 | 14 | 8 | 4 | 2 | 21 | 14 | +7 |
| 7 | SCO d’Angers | 27 | 15 | 8 | 3 | 4 | 20 | 13 | +7 |
| 8 | AS Monaco | 26 | 14 | 8 | 2 | 4 | 29 | 22 | +7 |
| 9 | Stade brestois 29 | 24 | 14 | 6 | 6 | 2 | 21 | 11 | +10 |
| 10 | RC Strasbourg Alsace | 24 | 13 | 7 | 3 | 3 | 22 | 14 | +8 |
| 11 | Dijon FCO | 24 | 14 | 6 | 6 | 2 | 20 | 15 | +5 |
| 12 | Stade de Reims | 22 | 14 | 5 | 7 | 2 | 12 | 7 | +5 |
| 13 | Nîmes Olympique | 20 | 14 | 6 | 2 | 6 | 17 | 15 | +2 |
| 14 | FC Nantes | 20 | 14 | 6 | 2 | 6 | 11 | 11 | 0 |
| 15 | Olympique lyonnais | 19 | 13 | 5 | 4 | 4 | 17 | 7 | +10 |
| 16 | FC Metz | 19 | 14 | 5 | 4 | 5 | 18 | 17 | +1 |
| 17 | AS Saint-Étienne | 18 | 14 | 4 | 6 | 4 | 15 | 18 | -3 |
| 18 | Girondins de Bordeaux | 17 | 13 | 4 | 5 | 4 | 19 | 12 | +7 |
| 19 | Amiens SC | 14 | 14 | 3 | 5 | 6 | 17 | 23 | -6 |
| 20 | Toulouse FC | 9 | 13 | 3 | 0 | 10 | 11 | 24 | -13 |
Classement extérieur :
| Rang | Équipe | Pts | J | G | N | P | Bp | Bc | Diff |
| 1 | Paris Saint-Germain | 31 | 13 | 10 | 1 | 2 | 31 | 13 | +18 |
| 2 | Olympique de Marseille | 28 | 14 | 8 | 4 | 2 | 20 | 15 | +5 |
| 3 | Olympique lyonnais | 21 | 15 | 6 | 3 | 6 | 25 | 20 | +5 |
| 4 | Stade rennais FC | 21 | 14 | 6 | 3 | 5 | 13 | 10 | +3 |
| 5 | Girondins de Bordeaux | 20 | 15 | 5 | 5 | 5 | 21 | 22 | -1 |
| 6 | Stade de Reims | 19 | 14 | 5 | 4 | 5 | 14 | 14 | 0 |
| 7 | FC Nantes | 17 | 14 | 5 | 2 | 7 | 17 | 20 | -3 |
| 8 | FC Metz | 15 | 14 | 3 | 6 | 5 | 9 | 18 | -9 |
| 9 | AS Monaco | 14 | 14 | 3 | 5 | 6 | 15 | 22 | -7 |
| 10 | LOSC Lille | 14 | 13 | 4 | 2 | 7 | 11 | 18 | -7 |
| 11 | RC Strasbourg Alsace | 14 | 14 | 4 | 2 | 8 | 10 | 18 | -8 |
| 12 | OGC Nice | 13 | 13 | 3 | 4 | 6 | 13 | 18 | -5 |
| 13 | SCO d’Angers | 12 | 13 | 3 | 3 | 7 | 8 | 20 | -12 |
| 14 | AS Saint-Étienne | 12 | 14 | 4 | 0 | 10 | 14 | 27 | -13 |
| 15 | Stade brestois 29 | 10 | 14 | 2 | 4 | 8 | 13 | 26 | -13 |
| 16 | Amiens SC | 9 | 14 | 1 | 6 | 7 | 14 | 27 | -13 |
| 17 | Montpellier HSC | 8 | 14 | 1 | 5 | 8 | 9 | 24 | -15 |
| 18 | Nîmes Olympique | 7 | 14 | 1 | 4 | 9 | 12 | 29 | -17 |
| 19 | Dijon FCO | 6 | 14 | 1 | 3 | 10 | 7 | 22 | -15 |
| 20 | Toulouse FC | 4 | 15 | 0 | 4 | 11 | 11 | 34 | -23 |

### Évolution du classement

Le classement final est légèrement différent du classement à l’issue de la dernière journée jouée (la 28e) : en effet, les points sont remplacés par le quotient des points par match pour tenir compte du match en moins (entre Strasbourg et Paris) et en cas d’égalité, la différence de but particulière est retenue (mais uniquement si tous les matchs entre équipes concernées ont pu avoir lieu, dans le cas inverse la différence de but générale prime).
En raison de la crise sanitaire, le barrage est aussi annulé pour l’équipe classée 18e qui est automatiquement conservé en Ligue 1 la saison suivante.
Après la fin de saison, les victoires de Paris dans les Coupes de France puis de la Ligue ouvrent les 5e et 6e places du championnat à la Ligue Europa. De même, le vainqueur de la Ligue Europa 2019-2020 est déjà qualifié pour la Ligue des Champions via son championnat national, Rennes est alors automatiquement rebasculé en phase de poules de la Ligue des Champions sans avoir à passer par la phase de barrages.
Évolution du classement :
| Journée → | 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 | Cl.Fin. | 1er | bar. | rel. |
| Équipe ↓ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
| Paris SG | 2 | 8 | 3 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 25 | | |
| Marseille | 18 | 17 | 13 | 8 | 4 | 5 | 6 | 5 | 8 | 4 | 7 | 4 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | | 1 | |
| Rennes | 8 | 3 | 1 | 2 | 2 | 4 | 9 | 8 | 10 | 12 | 9 | 14 | 10 | 11 | 11 | 7 | 4 | 4 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 1 | | |
| Lille | 6 | 10 | 4 | 10 | 5 | 6 | 3 | 4 | 5 | 7 | 3 | 5 | 5 | 10 | 8 | 4 | 3 | 3 | 4 | 5 | 7 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | | | |
| Nice | 7 | 2 | 5 | 3 | 6 | 3 | 7 | 6 | 9 | 11 | 15 | 13 | 13 | 15 | 12 | 14 | 13 | 14 | 10 | 11 | 12 | 8 | 8 | 11 | 9 | 10 | 9 | 6 | 5 | | | |
| Reims | 4 | 5 | 8 | 6 | 11 | 10 | 8 | 9 | 6 | 3 | 4 | 7 | 8 | 7 | 10 | 11 | 9 | 6 | 6 | 8 | 11 | 7 | 7 | 10 | 8 | 8 | 8 | 5 | 6 | | | |
| Lyon | 1 | 1 | 2 | 5 | 8 | 9 | 11 | 11 | 14 | 17 | 13 | 10 | 14 | 9 | 7 | 10 | 7 | 8 | 12 | 7 | 5 | 6 | 6 | 9 | 11 | 7 | 5 | 7 | 7 | 2 | | |
| Montpellier | 16 | 14 | 12 | 14 | 12 | 12 | 10 | 10 | 7 | 8 | 10 | 11 | 6 | 6 | 4 | 6 | 10 | 12 | 9 | 6 | 4 | 5 | 5 | 5 | 6 | 9 | 6 | 8 | 8 | | | |
| Monaco | 20 | 20 | 19 | 19 | 19 | 19 | 18 | 12 | 16 | 14 | 11 | 15 | 11 | 14 | 14 | 13 | 11 | 9 | 7 | 9 | 13 | 13 | 10 | 7 | 5 | 5 | 7 | 9 | 9 | | 1 | 6 |
| Strasbourg | 11 | 13 | 17 | 17 | 18 | 16 | 17 | 13 | 17 | 20 | 16 | 17 | 16 | 12 | 13 | 15 | 15 | 13 | 11 | 12 | 8 | 11 | 9 | 6 | 7 | 6 | 10 | 11 | 10 | | 1 | 1 |
| Angers | 3 | 11 | 6 | 4 | 7 | 2 | 2 | 2 | 3 | 5 | 6 | 2 | 3 | 3 | 3 | 8 | 12 | 10 | 8 | 10 | 9 | 12 | 13 | 14 | 14 | 14 | 13 | 10 | 11 | | | |
| Bordeaux | 17 | 16 | 9 | 11 | 9 | 8 | 5 | 7 | 4 | 6 | 8 | 6 | 7 | 4 | 5 | 3 | 5 | 7 | 13 | 13 | 10 | 10 | 12 | 8 | 10 | 12 | 12 | 12 | 12 | | | |
| Nantes | 13 | 14 | 11 | 7 | 3 | 7 | 4 | 3 | 2 | 2 | 2 | 3 | 9 | 8 | 6 | 9 | 6 | 5 | 5 | 4 | 6 | 9 | 11 | 12 | 12 | 11 | 11 | 13 | 13 | | | |
| Brest | 11 | 12 | 7 | 12 | 13 | 15 | 13 | 18 | 12 | 9 | 5 | 9 | 12 | 13 | 15 | 12 | 14 | 15 | 15 | 14 | 14 | 14 | 14 | 13 | 13 | 13 | 14 | 14 | 14 | | 1 | |
| Metz | 10 | 4 | 10 | 15 | 17 | 18 | 17 | 17 | 20 | 16 | 19 | 19 | 17 | 18 | 17 | 18 | 18 | 18 | 17 | 17 | 16 | 16 | 16 | 16 | 15 | 16 | 15 | 15 | 15 | | 5 | 3 |
| Dijon | 15 | 18 | 20 | 20 | 20 | 20 | 20 | 20 | 19 | 19 | 20 | 16 | 18 | 17 | 18 | 16 | 16 | 16 | 16 | 16 | 17 | 17 | 17 | 17 | 18 | 17 | 17 | 16 | 16 | | 4 | 9 |
| St-Étienne | 5 | 6 | 14 | 16 | 15 | 17 | 19 | 19 | 13 | 10 | 12 | 8 | 4 | 5 | 9 | 5 | 8 | 11 | 14 | 15 | 15 | 15 | 15 | 15 | 16 | 15 | 16 | 17 | 17 | | | 2 |
| Nîmes | 19 | 19 | 18 | 13 | 14 | 11 | 12 | 15 | 15 | 18 | 18 | 20 | 20 | 20 | 19 | 19 | 19 | 19 | 19 | 19 | 19 | 19 | 18 | 18 | 17 | 18 | 18 | 18 | 18 | | 8 | 13 |
| Amiens | 14 | 9 | 16 | 18 | 16 | 14 | 15 | 16 | 11 | 13 | 14 | 12 | 15 | 16 | 16 | 17 | 17 | 17 | 18 | 18 | 18 | 18 | 19 | 19 | 19 | 19 | 19 | 19 | 19 | | 5 | 6 |
| Toulouse | 9 | 7 | 15 | 9 | 10 | 13 | 14 | 14 | 18 | 15 | 17 | 18 | 19 | 19 | 20 | 20 | 20 | 20 | 20 | 20 | 20 | 20 | 20 | 20 | 20 | 20 | 20 | 20 | 20 | | 2 | 16 |
À l’issue de deux journées différentes, deux équipes étaient classées ex æquo selon tous les points du règlement :
* ↑ Brest et Strasbourg tous les deux à la 11e place du classement après la 1re journée ;
* ↑ Montpellier et Nantes tous les deux à la 14e place après la 2e journée.
En gras et italique, les équipes comptant un match en retard (exemple : 14 pour Rennes à l’issue de la 12e journée) :
* ↑ Nîmes-Rennes, match de la 12e journée reporté en raison d’un terrain impraticable à cause de fortes pluies, a été joué entre les 20e et 21e journées le même jour que les rencontres Monaco-Paris (match reporté de la 15e journée) et Amiens-Reims (match reporté de la 16e journée).
* ↑ Monaco-Paris, match de la 15e journée reporté en raison des conditions météorologiques, a été joué entre les 20e et 21e journées le même jour que les rencontres Nîmes-Rennes (match reporté de la 12e journée) et Amiens-Reims (match reporté de la 16e journée). Hasard du calendrier, le match de la phase aller Monaco-Paris a donc eu lieu quelques jours après le match de la phase retour Paris-Monaco.
* ↑ Amiens-Reims, match de la 16e journée reporté en raison du brouillard, a été joué entre les 20e et 21e journées le même jour que les rencontres Nîmes-Rennes (match reporté de la 12e journée) et Monaco-Paris (match reporté de la 15e journée).
* ↑ Strasbourg-Paris, match de la 28e journée, est reporté à la suite d’un arrêté de la préfecture du Bas-Rhin en raison de l’épidémie de maladie à coronavirus et en particulier de la concentration de personnes touchées par la maladie dans le Haut-Rhin d’où provient une forte proportion de spectateurs à chaque match à domicile de Strasbourg. La rencontre est d’abord reprogrammée à huis clos entre les 29e et 30e journées avant d’être de nouveau reportée lors de la suspension du championnat décidée avant la 29e journée à cause de cette même épidémie. Finalement, le match ne pourra jamais se jouer et la saison est définitivement arrêtée à la 28e journée à la suite de la crise sanitaire qui touche la France.

### Buts marqués par journée

Ce graphique représente le nombre de buts marqués lors de chaque journée.
* La 28e journée ne compte que 9 matchs puisque celui entre Strasbourg et le PSG a été définitivement annulé.

### Classement des buteurs

Mise à jour : 30 avril 2020
| | Buteur | Club | Buts |
| 1 | Kylian Mbappé | Paris Saint-Germain | 18 |
| 2 | Wissam Ben Yedder | AS Monaco | 18 |
| 3 | Moussa Dembélé | Olympique lyonnais | 16 |
| 4 | Victor Osimhen | LOSC Lille | 13 |
| 5 | Neymar | Paris Saint-Germain | 13 |
| 6 | Mauro Icardi | Paris Saint-Germain | 12 |
| 7 | Habib Diallo | FC Metz | 12 |
| 8 | Kasper Dolberg | OGC Nice | 11 |
| 9 | Darío Benedetto | Olympique de Marseille | 11 |
| 10 | M'Baye Niang | Stade rennais FC | 10 |
Il est à noter qu'en cas d'égalité et selon une décision prise par la LFP, c'est le buteur qui a marqué le plus de buts dans le jeu qui est en tête du classement. Wissam Ben Yedder en a marqué 15 dans le jeu contre 18 pour Kylian Mbappé.

#### Leader par journée
### Classement des passeurs

Mise à jour : 1er mars 2020
| | Passeur | Club | Pas. |
| 1 | Ángel Di María | Paris Saint-Germain | 14 |
| 2 | Islam Slimani | AS Monaco | 8 |
| 3 | Yoann Court | Stade brestois 29 | 7 |
| 4 | Pierre Lees-Melou | OGC Nice | 6 |
| 5 | Neymar | Paris Saint-Germain | 6 |
| 6 | Jonathan Ikoné | LOSC Lille | 6 |
| 7 | Romain Del Castillo | Stade rennais FC | 5 |
| 8 | Kylian Mbappé | Paris Saint-Germain | 5 |
| 9 | Moses Simon | FC Nantes | 5 |
| 10 | Gaëtan Laborde | Montpellier Hérault SC | 5 |

#### Leader par journée
### Affluence
#### Meilleures affluences de la saison

Classement des 10 affluences les plus importantes de la saison$^,$ :
| Rang | Match | Journée | Date | Affluence |
| 1 | Olympique de Marseille - Olympique lyonnais | J13 | 10 novembre 2019 | 65 421 |
| 2 | Olympique de Marseille - FC Nantes | J26 | 22 février 2020 | 60 430 |
| 3 | Olympique de Marseille - Nîmes Olympique | J19 | 21 décembre 2019 | 59 043 |
| 4 | Olympique de Marseille - SCO Angers | J21 | 25 janvier 2020 | 55 761 |
| 5 | Olympique lyonnais - Paris Saint-Germain | J6 | 22 septembre 2019 | 54 583 |
| 6 | Olympique de Marseille - Toulouse | J24 | 8 février 2020 | 53 995 |
| 7 | Olympique de Marseille - LOSC Lille | J12 | 2 novembre 2019 | 53 321 |
| 8 | Olympique de Marseille - Stade de Reims | J1 | 10 août 2019 | 52 887 |
| 9 | Olympique lyonnais - AS Saint-Étienne | J27 | 1er mars 2020 | 52 772 |
| 10 | Olympique lyonnais - Girondins de Bordeaux | J4 | 31 août 2019 | 52 327 |

#### Affluences par journée

Ce graphique représente le nombre de spectateurs présents dans les stades lors de chaque journée.
* : Affluence communiquée par le club à domicile mais non validée par le service « Stades » de la LFP, ou journée de championnat pas encore disputée intégralement

## Bilan de la saison

Tableau d'honneur :
| Championnat de France de football 2019-2020 ||
| Champion | Paris Saint-Germain Football Club |
| Champion d'automne | Paris Saint-Germain Football Club |
| Coupes et trophées ||
| Vainqueur du Trophée des champions 2019 | Paris Saint-Germain Football Club |
| Vainqueur de la Coupe de France 2019-2020 | Paris Saint-Germain Football Club |
| Vainqueur de la Coupe de la Ligue 2019-2020 | Paris Saint-Germain Football Club |
| Qualifications continentales ||
| Ligue des champions de l'UEFA 2020-2021 | Paris Saint-Germain Football Club |
| Ligue des champions de l'UEFA 2020-2021 | Olympique de Marseille |
| Ligue des champions de l'UEFA 2020-2021 | Stade rennais Football Club |
| Ligue Europa 2020-2021 | LOSC Lille |
| Ligue Europa 2020-2021 | Olympique Gymnaste Club Nice |
| Ligue Europa 2020-2021 | Stade de Reims |
| Promotions et relégations ||
| Promus en Ligue 1 | Football Club de Lorient |
| Promus en Ligue 1 | Racing Club de Lens |
| Relégués en Ligue 2 | Amiens Sporting Club |
| Relégués en Ligue 2 | Toulouse Football Club |
* Meilleure attaque : Paris Saint-Germain (75 buts inscrits)
* Meilleure défense : Stade de Reims (21 buts encaissés)
* Premier but de la saison : Moussa Dembélé 5e pour l'Olympique lyonnais contre l'AS Monaco (3-0) le 9 août 2019 (1re journée).
* Dernier but de la saison : Loïc Rémy 33e pour le LOSC Lille contre l'Olympique lyonnais (1-0) le 8 mars 2020 (28e journée).
* Premier penalty :
** Transformé : Júlio Tavares 34e (pen.) pour Dijon FCO contre l'AS Saint-Étienne (1-2) le 10 août 2019 (1re journée).
** Raté : Andy Delort 61e pour Montpellier HSC contre le Stade rennais FC (0-1) le 10 août 2019 (1re journée).
* Premier but sur coup franc direct : Nicolas de Préville 4e pour les Girondins de Bordeaux contre le SCO d'Angers (1-3) le 10 août 2019 (1re journée).
* Premier but contre son camp : Zeki Çelik 51e (csc) de LOSC Lille en faveur du FC Nantes (2-1) le 11 août 2019 (1re journée).
* But le plus rapide d'une rencontre :
** Nolan Roux 1re pour le Nîmes olympique contre le stade rennais (2-1) le 23 février 2020 (26e journée).
* But le plus tardif d'une rencontre :
** Raphinha 90+8e pour le Stade rennais FC contre le FC Nantes (3-2) le 31 janvier 2020 (22e journée).
* Premier doublé : Victor Osimhen 19e 80e pour LOSC Lille contre le FC Nantes (2-1) le 11 août 2019 (1re journée).
* Doublé le plus rapide : 5 minutes
** Casimir Ninga 84e 89e pour le SCO d'Angers contre l'AS Saint-Étienne (4-1) le 22 septembre 2019 (6e journée)
* Premier triplé : Casimir Ninga 78e 84e 89e pour le SCO d’Angers contre l'AS Saint-Étienne (4-1) le 22 septembre 2019 (6e journée)
* Triplé le plus rapide : 11 minutes
** Casimir Ninga 78e 84e 89e pour le SCO d'Angers contre l'AS Saint-Étienne (4-1) le 22 septembre 2019 (6e journée)
* Plus grand nombre de buts dans une rencontre pour un joueur : 3 buts
** Casimir Ninga 78e 84e 89e pour le SCO d'Angers contre l'AS Saint-Étienne (4-1) le 22 septembre 2019 (6e journée)
** Cristian Battocchio 45+1e 53e 75e pour le Stade brestois 29 contre le RC Strasbourg (5-0) le 3 décembre 2019 (16e journée)
** Josh Maja 25e 38e 53e pour les Girondins de Bordeaux contre le Nîmes Olympique (6-0) le 3 décembre 2019 (16e journée)
** Darío Benedetto 10e 36e 69e pour l'Olympique de Marseille contre le Nîmes Olympique (2-3) le 28 février 2020 (27e journée)
* Premier carton jaune : Diego Benaglio et Houssem Aouar 33e lors de AS Monaco - Olympique lyonnais (0-3) le 9 août 2019 (1re journée).
* Premier carton rouge : Cesc Fàbregas 30e lors de AS Monaco - Olympique lyonnais (0-3) le 9 août 2019 (1re journée).
* Plus large victoire à domicile : 6 buts d'écart
** 6-0 lors de Olympique lyonnais - SCO d'Angers le 16 août 2019 (2e journée).
** 6-0 lors de Girondins de Bordeaux - Nîmes Olympique le 3 décembre 2019 (16e journée).
* Plus large victoire à l'extérieur : 4 buts d'écart
** 0-4 lors de AS Saint-Étienne - Paris Saint-Germain le 15 décembre 2019 (18e journée)
* Plus grand nombre de buts dans une rencontre : 8 buts
** 4-4 lors de Amiens SC - Paris Saint-Germain le 15 février 2020 (25e journée).
* Plus grand nombre de buts dans une mi-temps :
** en 1re mi-temps 5 buts :
*** 3-2 lors de Paris Saint-Germain 3 - 3 AS Monaco le 12 janvier 2020 (20e journée).
** en 2e mi-temps 5 buts :
*** 3-2 lors de Stade rennais FC 3 - 2 FC Nantes le 31 janvier 2020 (22e journée).
* Plus grand nombre de buts dans une mi-temps pour une équipe :
** 4 buts :
*** 4-0 lors de Paris Saint-Germain 4 - 0 Toulouse FC le 25 août 2019 (3e journée).
*** 4-0 lors de SCO d’Angers 4 - 1 AS Saint-Étienne le 22 septembre 2019 (6e journée).
*** 4-0 lors de Paris Saint-Germain 4 - 0 Olympique de Marseille le 27 octobre 2019 (11e journée).
*** 4-0 lors de Girondins de Bordeaux 6 - 0 Nîmes Olympique le 3 décembre 2019 (16e journée).
*** 0-4 lors de Toulouse FC 2 - 5 Stade brestois le 11 janvier 2020 (20e journée).
* Champion d'automne : Paris Saint-Germain
* Champion : Paris Saint-Germain

## Trophée UNFP

Chaque début de mois les internautes votent pour élire le trophée UNFP du joueur du mois de Ligue 1.
| Mois | Premier | Premier | Premier | Deuxième | Deuxième | Deuxième | Troisième | Troisième | Troisième | Réf. |
| Mois | Joueur | Club | % | Joueur | Club | % | Joueur | Club | % | Réf. |
| Août | Eduardo Camavinga | Stade rennais | 50 | Zinedine Ferhat | Nîmes Olympique | 32 | Baptiste Reynet | Toulouse FC | 18 | |
| Septembre | Victor Osimhen | LOSC Lille | 45 | Islam Slimani | AS Monaco | 37 | Nicolas Pallois | FC Nantes | 18 | |
| Octobre | Thiago Silva | Paris Saint-Germain | 37 | Wissam Ben Yedder | AS Monaco | 33 | Ángel Di María | Paris Saint-Germain | 30 | |
| Novembre | Jeff Reine-Adélaïde | Olympique lyonnais | 39 | Ludovic Ajorque | RC Strasbourg | 33 | Denis Bouanga | AS Saint-Étienne | 28 | |
| Décembre | Wissam Ben Yedder | AS Monaco | 49 | Dimitri Payet | Olympique de Marseille | 39 | Ludovic Ajorque | RC Strasbourg | 12 | |
| Janvier | Neymar | Paris Saint-Germain | 62 | Yunis Abdelhamid | Stade de Reims | 20 | Moussa Dembélé | Olympique lyonnais | 18 | |
| Février | Annulés | Annulés | Annulés | Annulés | Annulés | Annulés | Annulés | Annulés | Annulés | |
| Mars | Annulés | Annulés | Annulés | Annulés | Annulés | Annulés | Annulés | Annulés | Annulés | |
| Avril | Annulés | Annulés | Annulés | Annulés | Annulés | Annulés | Annulés | Annulés | Annulés | |
Le 19 mai 2020, l'Union nationale des footballeurs professionnels (UNFP) annonce l'annulation de la cérémonie des « trophées UNFP du football 2020 ».
| Meilleur joueur | Meilleur gardien | Meilleur espoir | Meilleur entraîneur | Plus beau but | Réf. |
| Annulés | Annulés | Annulés | Annulés | Annulés | |
Équipe type :
| Gardien de but | Défenseurs | Milieux de terrain | Attaquants | Réf. |
| Annulés | Annulés | Annulés | Annulés | |

## Parcours en Coupes d'Europe

Le parcours des clubs français en coupes d'Europe est important puisqu'il détermine le coefficient UEFA, et donc le nombre de clubs français présents en coupes d'Europe les années suivantes. Cette saison européenne est notamment marquée par la présence de deux clubs français en demi-finale de Ligue des champions, une première dans l'histoire du football français.
| Club | Compétition | Résultat | Ultime(s) adversaire(s) | Ultime(s) adversaire(s) | Ultime(s) adversaire(s) |
| Paris Saint-Germain | Ligue des champions | Finaliste | Bayern Munich | Bayern Munich | Bayern Munich |
| Olympique lyonnais | Ligue des champions | Demi-finale | Bayern Munich | Bayern Munich | Bayern Munich |
| LOSC Lille | Ligue des champions | Phase de groupes | Ajax Amsterdam | Valence CF | Chelsea FC |
| Stade rennais FC | Ligue Europa | Phase de groupes | Celtic Glasgow | CFR Cluj | Lazio Rome |
| AS Saint-Étienne | Ligue Europa | Phase de groupes | La Gantoise | VfL Wolfsburg | FK Oleksandria |
| RC Strasbourg Alsace | Ligue Europa | Tour de barrage | Eintracht Francfort | Eintracht Francfort | Eintracht Francfort |

## Perturbations lors du championnat
### Controverse au sujet de l'homophobie

Dès la troisième journée du championnat, le match opposant l'OGC Nice à l'Olympique de Marseille est interrompu en raison d'une bannière jugée homophobe : « Bienvenue au groupe Ineos : à Nice aussi on aime la pédale ». Le match est arrêté à la 28e minute par l'arbitre Clément Turpin à la suite des chants des ultras de la Populaire Sud. La secrétaire d'État à l'égalité entre les femmes et les hommes, Marlène Schiappa, félicite l'arbitre Clément Turpin pour sa décision quelques minutes plus tard. Le ministre de l'intérieur Christophe Castaner se dit « prêt à travailler avec la ministre chargé des Sports, mais aussi avec la Fédération française et la Ligue ».

### Matchs repoussés

Lors de la troisième journée, les rencontres Lille-Saint-Étienne, Nice-Marseille et Montpellier-Lyon, reconnues comme les plus à risque, furent repoussées de quelques jours à la suite de la mobilisation des forces de l’ordre pour le sommet du G7 à Biarritz. Ces matchs furent tout de même joués avant le début de la quatrième journée et n’ont donc pas été considérés comme reportés.

## Arrêt subit de la compétition
### Chronologie

Le 28 février 2020, se tient à Lyon une rencontre de ligue des champions OL-Juventus de Turin. Une controverse éclate lorsque le gouvernement autorise le déplacement de 5000 supporters italiens, alors pays européen le plus durement touché par la crise Covid.
Le 5 mars, le gouvernement publie un décret interdisant les réunions publiques de plus de 1000 personnes à compter du lundi 9 mars. La LFP décide de maintenir l'organisation de la 28e journée de championnat qui se déroule du 6 au 8 mars, avec du public. Puis de poursuivre le championnat à huis clos.
Le 8 mars, se tient le match de Ligue 2, premier match à huis clos en raison de la jauge coronavirus.
Le 7 mars 2020, la rencontre entre le RC Strasbourg et le Paris Saint-Germain (28e journée) est reportée à cause d'un arrêté de la préfecture du Bas-Rhin concernant « la propagation du coronavirus ».
Le 11 mars, se tient à Paris une rencontre de ligue des champions Paris SG-Dortmund. Conformément au décret du 5 mars, le match se tient à huis clos. Près de 5 à 6000 supporters se rassemblent néanmoins à l'extérieur du stade pour encourager leur équipe. Le préfet de police de Paris refuse de prononcer la dispersion de la foule pour éviter les troubles à l'ordre public.
Le 13 mars 2020, craignant que les matchs de la 29e journée prévus à huis-clos produisent des attroupements similaires de supporters devant les stades, la Ligue de football professionnel (LFP), de sa propre initiative, suspend jusqu'à nouvel ordre, les matchs de Ligue 1 et Ligue 2 en raison de la pandémie de Covid-19.
Le 17 mars, devant la propagation de l'épidémie, le gouvernement proclame un confinement généralisé du pays. Le décret est publié le 18 mars, interdisant la pratique du sport professionnel jusqu'au 31 mars, y compris à huis clos. La LFP ne peut plus prononcer la reprise de la compétition sans la levée de cette interdiction. Le décret sur le confinement est ensuite prolongé jusqu'au 17 avril puis à de multiples reprises jusqu'au 10 juin.
Le 2 avril, le diffuseur Canal Plus par une lettre à la LFP se déclare libéré de son obligation payer le dernier tiers des droits TV (200M€) si le championnat ne reprend pas, et réclame une ristourne si le championnat devait reprendre en décalé. Dans le même courrier, il déclare ne pas vouloir négocier avec le président de la LFP mais seulement avec les dirigeants de club. Une délégation regroupant le président du Paris SG, de l'OM, de Nice et de Toulouse est chargé de mener la négociation avec Canal Plus au nom de l'ensemble des clubs de L1 et L2.
Le contrat audiovisuel prévoit expressément que la totalité de la somme est exigible, quel que soit le nombre de matchs joués dans la saison, à la seule condition qu'un titre de champion de France soit décerné. Un compromis est trouvé le 24 avril. Si le championnat ne reprend pas avant le 30 juin en raison des interdictions gouvernementales, alors la LFP ne réclamera pas les 200M€. Mais si la LFP est autorisée par le gouvernement à reprendre la compétition, alors la totalité de la somme sera due par Canal Plus.
Le 28 avril 2020, Édouard Philippe, premier ministre, présente à l'Assemblée nationale un plan de déconfinement par étapes. Il s'agit d'un discours, qui n'est pas suivi d'un vote de l'Assemblée. La levée du confinement étant de la compétence exclusive du gouvernement qui légifère par décret. Dans sa déclaration, le premier Ministre déclare « La saison 19/20 de sport professionnel, notamment le football, ne pourra pas reprendre ».
Le soir même du 28 avril, bien qu'aucun texte législatif ne l'ait finalement officialisé, que le décret qui ne sera publié que le 5 mai ne fasse aucune mention de cette disposition annoncée dans le discours, le conseil d'administration de la LFP vote la fin officielle des championnats de Ligue 1 et Ligue 2. Il annonce la convocation pour le 30 avril de l'assemblée générale extraordinaire de la ligue (20 clubs de L1 et 20 clubs de L2) devant entériner un classement.
Canal Plus déclare le 30 avril au matin être libéré de son obligation de verser les 200M€.
Le 30 avril, le conseil d'administration de la Ligue décide d'ajourner l'assemblée générale extraordinaire et vote de son propre chef un classement définitif. Il inclut dans le règlement la clause permettant de départager les égalités par la différence de but particulier en lieu et place de la différence de but générale. Cette modification ne s'applique de fait qu'aux clubs de Nice et Reims et permet à Nice, dont le président est membre du conseil d'administration, de gagner une place au classement, lui garantissant une participation à la coupe d'Europe.

### Méthode de classement

L'arrêt du championnat à la journée 28 s'est vu contesté devant le Conseil d'État par Jean-Michel Aulas de l'Olympique lyonnais, dont la 7e place était le plus mauvais résultat depuis 23 ans, et l'Amiens SC, relégué. Le Conseil d'État, saisi en procédure de référé, a débouté les deux plaignants au motif que le conseil d'administration de la LFP était autorisé par les statuts de la LFP à prendre seul toutes les décisions de modification du règlement, notamment sur le nombre de journées composant une saison ou sur le mode de classement, y compris sur les saisons en cours, y compris sans devoir fournir une justification.
Julien Guyon, un mathématicien français enseignant aux États-Unis, constatant que chaque équipe avait bénéficié d'un calendrier plus ou moins difficile, et qu'il serait donc inéquitable d'arrêter le classement à la journée 28, avait proposé dans Le Monde du 16 mars d'utiliser les probabilités de victoire issues des résultats des 28 premières journées, afin de calculer les résultats des 10 dernières . Cette méthode n'aurait pas modifié les places pour l'Europe et la relégation, mais elle aurait notamment fait passer Montpellier devant Nice et Lyon.
Néanmoins, cette formule n'est pas retenue. Le règlement de la LFP ne prévoyait aucune méthode pour pallier ces cas de force majeure. Finalement, pour déterminer le classement final, la Ligue réunie en assemblée générale a opté pour un indice de performance basé sur la moyenne de points (ratio points déjà obtenus sur le nombre de matchs déjà joués). Le 18e, le Nîmes Olympique, se maintient car le barrage est annulé.