France

Ligue 1 2019/20 final table, results and top scorers

The 2019/20 season as it ended: the final table, every result by month and the player boards. History only, never a prediction.

Final table

Final table
#TeamPWDLGoalsGDPts
1Paris Saint-Germain27222375:24+5168
2Marseille28168441:29+1256
3Rennes28155838:24+1450
4Lille28154935:27+849
5Reims281011726:21+541
6Nice28118941:38+341
7Lyon281171042:27+1540
8Montpellier281171035:34+140
9Monaco281171044:44040
10Strasbourg271151132:32038
11Angers281161128:33−539
12Bordeaux28910940:34+637
13Nantes281141328:31−337
14Brest288101034:37−334
15Metz288101027:35−834
16Dijon28791227:37−1030
17Saint-Étienne28861429:45−1630
18Nîmes28761529:44−1527
19Amiens284111331:50−1923
20Toulouse28342122:58−3613

The season was cut short: places by points per game, then goal difference and goals scored.

Player boards

Top scorers

Player boards · Top scorers
#PlayerGoals
1Kylian Mbappé
Paris Saint-Germain
18
2Wissam Ben Yedder
Monaco
18
3Moussa Dembélé
Lyon
16

Penalties scored

Player boards · Penalties scored
#PlayerGoals
1Wylan Cyprien
Nice
5
2Moussa Dembélé
Lyon
4
3Neymar
Paris Saint-Germain
4

Hat-tricks

Player boards · Hat-tricks
#PlayerHat-tricks
1Casimir Ninga
Angers
1
2Cristian Battocchio
Brest
1
3Darío Benedetto
Marseille
1
4Josh Maja
Bordeaux
1

Yellow cards

Player boards · Yellow cards
#PlayerYellow
1Jacques-Alaixys Romao
Reims
11
2Nicolas Pallois
Nantes
10
3Pedro Mendes
Montpellier
10

The season's records

Biggest win: Lyon 6–0 Angers (16 Aug 2019)

Highest-scoring game: Amiens 4–4 Paris Saint-Germain (15 Feb 2020)

All results

March 2020 · 12 matches
All results · March 2020
DateMatchScore
1 MarBordeaux – Nice1–1
1 MarLyon – Saint-Étienne2–0
1 MarNantes – Lille0–1
6 MarMarseille – Amiens2–2
7 MarAngers – Nantes2–0
7 MarDijon – Toulouse2–1
7 MarMetz – Nîmes2–1
7 MarNice – Monaco2–1
7 MarReims – Brest1–0
8 MarLille – Lyon1–0
8 MarRennes – Montpellier5–0
8 MarSaint-Étienne – Bordeaux1–1
February 2020 · 56 matches
All results · February 2020
DateMatchScore
1 FebAmiens – Toulouse0–0
1 FebAngers – Reims1–4
1 FebDijon – Brest3–0
1 FebNîmes – Monaco3–1
1 FebParis Saint-Germain – Montpellier5–0
1 FebStrasbourg – Lille1–2
2 FebBordeaux – Marseille0–0
2 FebMetz – Saint-Étienne3–1
2 FebNice – Lyon2–1
4 FebLille – Rennes1–0
4 FebMonaco – Angers1–0
4 FebNantes – Paris Saint-Germain1–2
5 FebBrest – Bordeaux1–1
5 FebLyon – Amiens0–0
5 FebMontpellier – Metz1–1
5 FebNîmes – Dijon2–0
5 FebReims – Nice1–1
5 FebSaint-Étienne – Marseille0–2
5 FebToulouse – Strasbourg0–1
7 FebAngers – Lille0–2
8 FebAmiens – Monaco1–2
8 FebDijon – Nantes3–3
8 FebMarseille – Toulouse1–0
8 FebMetz – Bordeaux1–2
8 FebNice – Nîmes1–3
8 FebRennes – Brest0–0
9 FebMontpellier – Saint-Étienne1–0
9 FebParis Saint-Germain – Lyon4–2
9 FebStrasbourg – Reims3–0
14 FebMonaco – Montpellier1–0
15 FebAmiens – Paris Saint-Germain4–4
15 FebBordeaux – Dijon2–2
15 FebNantes – Metz0–0
15 FebNîmes – Angers1–0
15 FebToulouse – Nice0–2
16 FebBrest – Saint-Étienne3–2
16 FebLille – Marseille1–2
16 FebLyon – Strasbourg1–1
16 FebReims – Rennes1–0
21 FebMetz – Lyon0–2
21 FebNice – Brest2–2
22 FebAngers – Montpellier1–0
22 FebDijon – Monaco1–1
22 FebLille – Toulouse3–0
22 FebMarseille – Nantes1–3
22 FebStrasbourg – Amiens0–0
23 FebParis Saint-Germain – Bordeaux4–3
23 FebRennes – Nîmes2–1
23 FebSaint-Étienne – Reims1–1
28 FebNîmes – Marseille2–3
29 FebAmiens – Metz0–1
29 FebBrest – Angers0–1
29 FebMonaco – Reims1–1
29 FebMontpellier – Strasbourg3–0
29 FebParis Saint-Germain – Dijon4–0
29 FebToulouse – Rennes0–2
January 2020 · 24 matches
All results · January 2020
DateMatchScore
10 JanRennes – Marseille0–1
11 JanAmiens – Montpellier1–2
11 JanAngers – Nice1–1
11 JanBordeaux – Lyon1–2
11 JanMetz – Strasbourg1–0
11 JanNîmes – Reims2–0
11 JanToulouse – Brest2–5
12 JanDijon – Lille1–0
12 JanParis Saint-Germain – Monaco3–3
12 JanSaint-Étienne – Nantes0–2
15 JanAmiens – Reims1–1
15 JanMonaco – Paris Saint-Germain1–4
15 JanNîmes – Rennes0–1
24 JanNice – Rennes1–1
25 JanBrest – Amiens2–1
25 JanMarseille – Angers0–0
25 JanMonaco – Strasbourg1–3
25 JanMontpellier – Dijon2–1
25 JanReims – Metz0–1
25 JanSaint-Étienne – Nîmes2–1
26 JanLille – Paris Saint-Germain0–2
26 JanLyon – Toulouse3–0
26 JanNantes – Bordeaux0–1
31 JanRennes – Nantes3–2
December 2019 · 41 matches
All results · December 2019
DateMatchScore
1 DecNantes – Toulouse2–1
1 DecRennes – Saint-Étienne2–1
3 DecAngers – Marseille0–2
3 DecBordeaux – Nîmes6–0
3 DecBrest – Strasbourg5–0
3 DecLyon – Lille0–1
4 DecDijon – Montpellier2–2
4 DecMetz – Rennes0–1
4 DecParis Saint-Germain – Nantes2–0
4 DecSaint-Étienne – Nice4–1
4 DecToulouse – Monaco1–2
6 DecLille – Brest1–0
6 DecNîmes – Lyon0–4
7 DecMonaco – Amiens3–0
7 DecMontpellier – Paris Saint-Germain1–3
7 DecNice – Metz4–1
7 DecRennes – Angers2–1
7 DecStrasbourg – Toulouse4–2
8 DecMarseille – Bordeaux3–1
8 DecNantes – Dijon1–0
8 DecReims – Saint-Étienne3–1
13 DecLille – Montpellier2–1
14 DecAmiens – Dijon1–1
14 DecAngers – Monaco0–0
14 DecBrest – Nice0–0
14 DecMetz – Marseille1–1
14 DecNîmes – Nantes0–1
14 DecToulouse – Reims0–1
15 DecBordeaux – Strasbourg0–1
15 DecLyon – Rennes0–1
15 DecSaint-Étienne – Paris Saint-Germain0–4
21 DecDijon – Metz2–2
21 DecMarseille – Nîmes3–1
21 DecMonaco – Lille5–1
21 DecMontpellier – Brest4–0
21 DecNantes – Angers1–2
21 DecNice – Toulouse3–0
21 DecParis Saint-Germain – Amiens4–1
21 DecReims – Lyon1–1
21 DecRennes – Bordeaux1–0
21 DecStrasbourg – Saint-Étienne2–1
November 2019 · 36 matches
All results · November 2019
DateMatchScore
1 NovDijon – Paris Saint-Germain2–1
2 NovAmiens – Brest1–0
2 NovAngers – Strasbourg1–0
2 NovMarseille – Lille2–1
2 NovMetz – Montpellier2–2
2 NovToulouse – Lyon2–3
3 NovBordeaux – Nantes2–0
3 NovNice – Reims2–0
3 NovSaint-Étienne – Monaco1–0
8 NovNice – Bordeaux1–1
9 NovBrest – Paris Saint-Germain1–2
9 NovLille – Metz0–0
9 NovMonaco – Dijon1–0
9 NovReims – Angers0–0
9 NovStrasbourg – Nîmes4–1
10 NovMarseille – Lyon2–1
10 NovMontpellier – Toulouse3–0
10 NovNantes – Saint-Étienne2–3
10 NovRennes – Amiens3–1
22 NovParis Saint-Germain – Lille2–0
23 NovAmiens – Strasbourg0–4
23 NovAngers – Nîmes1–0
23 NovBrest – Nantes1–1
23 NovDijon – Rennes2–1
23 NovLyon – Nice2–1
23 NovMetz – Reims1–1
24 NovBordeaux – Monaco2–1
24 NovSaint-Étienne – Montpellier0–0
24 NovToulouse – Marseille0–2
29 NovMarseille – Brest2–1
30 NovLille – Dijon1–0
30 NovMontpellier – Amiens4–2
30 NovNice – Angers3–1
30 NovNîmes – Metz1–1
30 NovReims – Bordeaux1–1
30 NovStrasbourg – Lyon1–2
October 2019 · 30 matches
All results · October 2019
DateMatchScore
4 OctAmiens – Marseille3–1
5 OctBrest – Metz2–0
5 OctDijon – Strasbourg1–0
5 OctMontpellier – Monaco3–1
5 OctNantes – Nice1–0
5 OctParis Saint-Germain – Angers4–0
5 OctToulouse – Bordeaux1–3
6 OctLille – Nîmes2–2
6 OctRennes – Reims0–1
6 OctSaint-Étienne – Lyon1–0
18 OctNice – Paris Saint-Germain1–4
19 OctAngers – Brest0–1
19 OctLyon – Dijon0–0
19 OctMetz – Nantes1–0
19 OctNîmes – Amiens1–1
19 OctReims – Montpellier1–0
19 OctToulouse – Lille2–1
20 OctBordeaux – Saint-Étienne0–1
20 OctMarseille – Strasbourg2–0
20 OctMonaco – Rennes3–2
25 OctNantes – Monaco0–1
26 OctBrest – Dijon2–0
26 OctLille – Bordeaux3–0
26 OctLyon – Metz2–0
26 OctMontpellier – Angers0–0
26 OctReims – Nîmes0–0
26 OctStrasbourg – Nice1–0
27 OctParis Saint-Germain – Marseille4–0
27 OctRennes – Toulouse3–2
27 OctSaint-Étienne – Amiens2–2
September 2019 · 44 matches
All results · September 2019
DateMatchScore
1 SepMarseille – Saint-Étienne1–0
1 SepReims – Lille2–0
1 SepRennes – Nice1–2
1 SepStrasbourg – Monaco2–2
13 SepAmiens – Lyon2–2
13 SepLille – Angers2–1
14 SepBordeaux – Metz2–0
14 SepBrest – Rennes0–0
14 SepDijon – Nîmes0–0
14 SepMontpellier – Nice2–1
14 SepParis Saint-Germain – Strasbourg1–0
15 SepMonaco – Marseille3–4
15 SepNantes – Reims1–0
15 SepSaint-Étienne – Toulouse2–2
20 SepStrasbourg – Nantes2–1
21 SepBordeaux – Brest2–2
21 SepMarseille – Montpellier1–1
21 SepMetz – Amiens1–2
21 SepNice – Dijon2–1
21 SepNîmes – Toulouse1–0
21 SepReims – Monaco0–0
22 SepAngers – Saint-Étienne4–1
22 SepLyon – Paris Saint-Germain0–1
22 SepRennes – Lille1–1
24 SepDijon – Marseille0–0
24 SepMonaco – Nice3–1
25 SepAmiens – Bordeaux1–3
25 SepBrest – Lyon2–2
25 SepLille – Strasbourg2–0
25 SepMontpellier – Nîmes1–0
25 SepNantes – Rennes1–0
25 SepParis Saint-Germain – Reims0–2
25 SepSaint-Étienne – Metz0–1
25 SepToulouse – Angers0–2
28 SepAngers – Amiens1–1
28 SepBordeaux – Paris Saint-Germain0–1
28 SepLyon – Nantes0–1
28 SepMetz – Toulouse2–2
28 SepMonaco – Brest4–1
28 SepNice – Lille1–1
28 SepReims – Dijon1–2
29 SepMarseille – Rennes1–1
29 SepNîmes – Saint-Étienne0–1
29 SepStrasbourg – Montpellier1–0
August 2019 · 36 matches
All results · August 2019
DateMatchScore
9 AugMonaco – Lyon0–3
10 AugAngers – Bordeaux3–1
10 AugBrest – Toulouse1–1
10 AugDijon – Saint-Étienne1–2
10 AugMarseille – Reims0–2
10 AugMontpellier – Rennes0–1
10 AugNice – Amiens2–1
11 AugLille – Nantes2–1
11 AugParis Saint-Germain – Nîmes3–0
11 AugStrasbourg – Metz1–1
16 AugLyon – Angers6–0
17 AugAmiens – Lille1–0
17 AugBordeaux – Montpellier1–1
17 AugMetz – Monaco3–0
17 AugNantes – Marseille0–0
17 AugNîmes – Nice1–2
17 AugToulouse – Dijon1–0
18 AugReims – Strasbourg0–0
18 AugRennes – Paris Saint-Germain2–1
18 AugSaint-Étienne – Brest1–1
24 AugAmiens – Nantes1–2
24 AugAngers – Metz3–0
24 AugBrest – Reims1–0
24 AugDijon – Bordeaux0–2
25 AugMonaco – Nîmes2–2
25 AugParis Saint-Germain – Toulouse4–0
25 AugStrasbourg – Rennes0–2
27 AugMontpellier – Lyon1–0
28 AugLille – Saint-Étienne3–0
28 AugNice – Marseille1–2
30 AugMetz – Paris Saint-Germain0–2
31 AugAngers – Dijon2–0
31 AugLyon – Bordeaux1–1
31 AugNantes – Montpellier1–0
31 AugNîmes – Brest3–0
31 AugToulouse – Amiens2–0

League rounds, 90 minutes, by month.

Referees

Referees
RefereeMatches
Antony Gautier16
Ruddy Buquet16
H. Ben El Hadj15
Willy Delajod15
Amaury Delerue14
Frank Schneider14
François Letexier14
Johan Hamel14
Jérôme Brisard14
Thomas Léonard14
Mikael Lesage13
Clement Turpin12
Eric Wattellier12
Florent Batta12
Jeremie Pignard12
Jeremy Stinat12
Karim Abed12
Benoît Bastien11
Stephanie Frappart11
Benoît Millot10
Olivier Thual10
Jerome Miguelgorry4

Matches per referee from the season's schedule; the table lists referees with at least 3 matches.

From our data: the season's league matches. History only, never a prediction.

The day's tips on Telegram

Every morning (about 10:00 Tallinn time) the day's card tips go to the free Telegram channel; on some days there are none, and we say so.