France season archive: final tables from earlier years
10 season records
France · clubs · current table

2015/16 — top flight
Ligue 1
| # | Club | P | W | D | L | Goals | GD | Pts |
|---|
| 1 | Paris Saint-Germain | 38 | 30 | 6 | 2 | 102:19 | +83 | 96 |
| 2 | Lyon | 38 | 19 | 8 | 11 | 67:43 | +24 | 65 |
| 3 | Monaco | 38 | 17 | 14 | 7 | 57:50 | +7 | 65 |
| 4 | Nice | 38 | 18 | 9 | 11 | 58:41 | +17 | 63 |
| 5 | Lille | 38 | 15 | 15 | 8 | 39:27 | +12 | 60 |
| 6 | Saint-Étienne | 38 | 17 | 7 | 14 | 42:37 | +5 | 58 |
| 7 | Caen | 38 | 16 | 6 | 16 | 39:52 | -13 | 54 |
| 8 | Rennes | 38 | 13 | 13 | 12 | 52:54 | -2 | 52 |
| 9 | Angers | 38 | 13 | 11 | 14 | 40:38 | +2 | 50 |
| 10 | Bastia | 38 | 14 | 8 | 16 | 36:42 | -6 | 50 |
| 11 | Bordeaux | 38 | 12 | 14 | 12 | 50:57 | -7 | 50 |
| 12 | Montpellier | 38 | 14 | 7 | 17 | 49:47 | +2 | 49 |
| 13 | Marseille | 38 | 10 | 18 | 10 | 48:42 | +6 | 48 |
| 14 | Nantes | 38 | 12 | 12 | 14 | 33:44 | -11 | 48 |
| 15 | Lorient | 38 | 11 | 13 | 14 | 47:58 | -11 | 46 |
| 16 | Guingamp | 38 | 11 | 11 | 16 | 47:56 | -9 | 44 |
| 17 | Toulouse | 38 | 9 | 13 | 16 | 45:55 | -10 | 40 |
| 18 | Reims | 38 | 10 | 9 | 19 | 44:57 | -13 | 39 |
| 19 | Gazélec Ajaccio | 38 | 8 | 13 | 17 | 37:58 | -21 | 37 |
| 20 | Troyes | 38 | 3 | 9 | 26 | 28:83 | -55 | 18 |
2016/17 — top flight
Ligue 1
| # | Club | P | W | D | L | Goals | GD | Pts |
|---|
| 1 | Monaco | 38 | 30 | 5 | 3 | 107:31 | +76 | 95 |
| 2 | Paris Saint-Germain | 38 | 27 | 6 | 5 | 83:27 | +56 | 87 |
| 3 | Nice | 38 | 22 | 12 | 4 | 63:36 | +27 | 78 |
| 4 | Lyon | 38 | 21 | 4 | 13 | 77:48 | +29 | 67 |
| 5 | Marseille | 38 | 17 | 11 | 10 | 57:41 | +16 | 62 |
| 6 | Bordeaux | 38 | 15 | 14 | 9 | 53:43 | +10 | 59 |
| 7 | Nantes | 38 | 14 | 9 | 15 | 40:54 | -14 | 51 |
| 8 | Saint-Étienne | 38 | 12 | 14 | 12 | 41:42 | -1 | 50 |
| 9 | Rennes | 38 | 12 | 14 | 12 | 36:42 | -6 | 50 |
| 10 | Guingamp | 38 | 14 | 8 | 16 | 46:53 | -7 | 50 |
| 11 | Lille | 38 | 13 | 7 | 18 | 40:47 | -7 | 46 |
| 12 | Angers | 38 | 13 | 7 | 18 | 40:49 | -9 | 46 |
| 13 | Toulouse | 38 | 10 | 14 | 14 | 37:41 | -4 | 44 |
| 14 | Metz | 38 | 11 | 10 | 17 | 39:72 | -33 | 43 |
| 15 | Montpellier | 38 | 10 | 9 | 19 | 48:66 | -18 | 39 |
| 16 | Dijon | 38 | 8 | 13 | 17 | 46:58 | -12 | 37 |
| 17 | Caen | 38 | 10 | 7 | 21 | 36:65 | -29 | 37 |
| 18 | Lorient | 38 | 10 | 6 | 22 | 44:70 | -26 | 36 |
| 19 | Nancy | 38 | 9 | 8 | 21 | 29:52 | -23 | 35 |
| 20 | Bastia (D, R) | 38 | 8 | 10 | 20 | 29:54 | -25 | 34 |
2017/18 — top flight
Ligue 1
| # | Club | P | W | D | L | Goals | GD | Pts |
|---|
| 1 | Paris Saint-Germain | 38 | 29 | 6 | 3 | 108:29 | +79 | 93 |
| 2 | Monaco | 38 | 24 | 8 | 6 | 85:45 | +40 | 80 |
| 3 | Lyon | 38 | 23 | 9 | 6 | 87:43 | +44 | 78 |
| 4 | Marseille | 38 | 22 | 11 | 5 | 80:47 | +33 | 77 |
| 5 | Rennes | 38 | 16 | 10 | 12 | 50:44 | +6 | 58 |
| 6 | Bordeaux | 38 | 16 | 7 | 15 | 53:48 | +5 | 55 |
| 7 | Saint-Étienne | 38 | 15 | 10 | 13 | 47:50 | -3 | 55 |
| 8 | Nice | 38 | 15 | 9 | 14 | 53:52 | +1 | 54 |
| 9 | Nantes | 38 | 14 | 10 | 14 | 36:41 | -5 | 52 |
| 10 | Montpellier | 38 | 11 | 18 | 9 | 36:33 | +3 | 51 |
| 11 | Dijon | 38 | 13 | 9 | 16 | 55:73 | -18 | 48 |
| 12 | Guingamp | 38 | 12 | 11 | 15 | 48:59 | -11 | 47 |
| 13 | Amiens | 38 | 12 | 9 | 17 | 37:42 | -5 | 45 |
| 14 | Angers | 38 | 9 | 14 | 15 | 42:52 | -10 | 41 |
| 15 | Strasbourg | 38 | 9 | 11 | 18 | 44:67 | -23 | 38 |
| 16 | Caen | 38 | 10 | 8 | 20 | 27:52 | -25 | 38 |
| 17 | Lille | 38 | 10 | 8 | 20 | 41:67 | -26 | 38 |
| 18 | Toulouse | 38 | 9 | 10 | 19 | 38:54 | -16 | 37 |
| 19 | Troyes | 38 | 9 | 6 | 23 | 32:59 | -27 | 33 |
| 20 | Metz | 38 | 6 | 8 | 24 | 34:76 | -42 | 26 |
2018/19 — top flight
Ligue 1
| # | Club | P | W | D | L | Goals | GD | Pts |
|---|
| 1 | Paris Saint-Germain | 38 | 29 | 4 | 5 | 105:35 | +70 | 91 |
| 2 | Lille | 38 | 22 | 9 | 7 | 68:33 | +35 | 75 |
| 3 | Lyon | 38 | 21 | 9 | 8 | 70:47 | +23 | 72 |
| 4 | Saint-Étienne | 38 | 19 | 9 | 10 | 59:41 | +18 | 66 |
| 5 | Marseille | 38 | 18 | 7 | 13 | 60:52 | +8 | 61 |
| 6 | Montpellier | 38 | 15 | 14 | 9 | 53:42 | +11 | 59 |
| 7 | Nice | 38 | 15 | 11 | 12 | 30:35 | -5 | 56 |
| 8 | Reims | 38 | 13 | 16 | 9 | 39:42 | -3 | 55 |
| 9 | Nîmes | 38 | 15 | 8 | 15 | 57:58 | -1 | 53 |
| 10 | Rennes | 38 | 13 | 13 | 12 | 55:52 | +3 | 52 |
| 11 | Strasbourg | 38 | 11 | 16 | 11 | 58:48 | +10 | 49 |
| 12 | Nantes | 38 | 13 | 9 | 16 | 48:48 | 0 | 48 |
| 13 | Angers | 38 | 10 | 16 | 12 | 44:49 | -5 | 46 |
| 14 | Bordeaux | 38 | 10 | 11 | 17 | 34:42 | -8 | 41 |
| 15 | Amiens | 38 | 9 | 11 | 18 | 31:52 | -21 | 38 |
| 16 | Toulouse | 38 | 8 | 14 | 16 | 35:57 | -22 | 38 |
| 17 | Monaco | 38 | 8 | 12 | 18 | 38:57 | -19 | 36 |
| 18 | Dijon | 38 | 9 | 7 | 22 | 31:60 | -29 | 34 |
| 19 | Caen | 38 | 7 | 12 | 19 | 29:54 | -25 | 33 |
| 20 | Guingamp | 38 | 5 | 12 | 21 | 28:68 | -40 | 27 |
2019/20 — top flight
Ligue 1
| # | Club | P | W | D | L | Goals | GD | Pts |
|---|
| 1 | Paris Saint-Germain | 27 | 22 | 2 | 3 | 75:24 | +51 | 68 |
| 2 | Marseille | 28 | 16 | 8 | 4 | 41:29 | +12 | 56 |
| 3 | Rennes | 28 | 15 | 5 | 8 | 38:24 | +14 | 50 |
| 4 | Lille | 28 | 15 | 4 | 9 | 35:27 | +8 | 49 |
| 5 | Nice | 28 | 11 | 8 | 9 | 41:38 | +3 | 41 |
| 6 | Reims | 28 | 10 | 11 | 7 | 26:21 | +5 | 41 |
| 7 | Lyon | 28 | 11 | 7 | 10 | 42:27 | +15 | 40 |
| 8 | Montpellier | 28 | 11 | 7 | 10 | 35:34 | +1 | 40 |
| 9 | Monaco | 28 | 11 | 7 | 10 | 44:44 | 0 | 40 |
| 10 | Strasbourg | 27 | 11 | 5 | 11 | 32:32 | 0 | 38 |
| 11 | Angers | 28 | 11 | 6 | 11 | 28:33 | -5 | 39 |
| 12 | Bordeaux | 28 | 9 | 10 | 9 | 40:34 | +6 | 37 |
| 13 | Nantes | 28 | 11 | 4 | 13 | 28:31 | -3 | 37 |
| 14 | Brest | 28 | 8 | 10 | 10 | 34:37 | -3 | 34 |
| 15 | Metz | 28 | 8 | 10 | 10 | 27:35 | -8 | 34 |
| 16 | Dijon | 28 | 7 | 9 | 12 | 27:37 | -10 | 30 |
| 17 | Saint-Étienne | 28 | 8 | 6 | 14 | 29:45 | -16 | 30 |
| 18 | Nîmes | 28 | 7 | 6 | 15 | 29:44 | -15 | 27 |
| 19 | Amiens | 28 | 4 | 11 | 13 | 31:50 | -19 | 23 |
| 20 | Toulouse | 28 | 3 | 4 | 21 | 22:58 | -36 | 13 |
2020/21 — top flight
Ligue 1
| # | Club | P | W | D | L | Goals | GD | Pts |
|---|
| 1 | Lille | 38 | 24 | 11 | 3 | 64:23 | +41 | 83 |
| 2 | Paris Saint-Germain | 38 | 26 | 4 | 8 | 86:28 | +58 | 82 |
| 3 | Monaco | 38 | 24 | 6 | 8 | 76:42 | +34 | 78 |
| 4 | Lyon | 38 | 22 | 10 | 6 | 81:43 | +38 | 76 |
| 5 | Marseille | 38 | 16 | 12 | 10 | 54:47 | +7 | 60 |
| 6 | Rennes | 38 | 16 | 10 | 12 | 52:40 | +12 | 58 |
| 7 | Lens | 38 | 15 | 12 | 11 | 55:54 | +1 | 57 |
| 8 | Montpellier | 38 | 14 | 12 | 12 | 60:62 | -2 | 54 |
| 9 | Nice | 38 | 15 | 7 | 16 | 50:53 | -3 | 52 |
| 10 | Metz | 38 | 12 | 11 | 15 | 44:48 | -4 | 47 |
| 11 | Saint-Étienne | 38 | 12 | 10 | 16 | 42:54 | -12 | 46 |
| 12 | Bordeaux | 38 | 13 | 6 | 19 | 42:56 | -14 | 45 |
| 13 | Angers | 38 | 12 | 8 | 18 | 40:58 | -18 | 44 |
| 14 | Reims | 38 | 9 | 15 | 14 | 42:50 | -8 | 42 |
| 15 | Strasbourg | 38 | 11 | 9 | 18 | 49:58 | -9 | 42 |
| 16 | Lorient | 38 | 11 | 9 | 18 | 50:68 | -18 | 42 |
| 17 | Brest | 38 | 11 | 8 | 19 | 50:66 | -16 | 41 |
| 18 | Nantes | 38 | 9 | 13 | 16 | 47:55 | -8 | 40 |
| 19 | Nîmes | 38 | 9 | 8 | 21 | 40:71 | -31 | 35 |
| 20 | Dijon | 38 | 4 | 9 | 25 | 25:73 | -48 | 21 |
2021/22 — top flight
Ligue 1
| # | Club | P | W | D | L | Goals | GD | Pts |
|---|
| 1 | Paris Saint-Germain | 38 | 26 | 8 | 4 | 90:36 | +54 | 86 |
| 2 | Marseille | 38 | 21 | 8 | 9 | 63:38 | +25 | 71 |
| 3 | Monaco | 38 | 20 | 9 | 9 | 65:40 | +25 | 69 |
| 4 | Rennes | 38 | 20 | 6 | 12 | 82:40 | +42 | 66 |
| 5 | Nice | 38 | 20 | 7 | 11 | 52:36 | +16 | 66 |
| 6 | Strasbourg | 38 | 17 | 12 | 9 | 60:43 | +17 | 63 |
| 7 | Lens | 38 | 17 | 11 | 10 | 62:48 | +14 | 62 |
| 8 | Lyon | 38 | 17 | 11 | 10 | 66:51 | +15 | 61 |
| 9 | Nantes | 38 | 15 | 10 | 13 | 55:48 | +7 | 55 |
| 10 | Lille | 38 | 14 | 13 | 11 | 48:48 | 0 | 55 |
| 11 | Brest | 38 | 13 | 9 | 16 | 49:57 | -8 | 48 |
| 12 | Reims | 38 | 11 | 13 | 14 | 43:44 | -1 | 46 |
| 13 | Montpellier | 38 | 12 | 7 | 19 | 49:61 | -12 | 43 |
| 14 | Angers | 38 | 10 | 11 | 17 | 44:55 | -11 | 41 |
| 15 | Troyes | 38 | 9 | 11 | 18 | 37:53 | -16 | 38 |
| 16 | Lorient | 38 | 8 | 12 | 18 | 35:63 | -28 | 36 |
| 17 | Clermont | 38 | 9 | 9 | 20 | 38:69 | -31 | 36 |
| 18 | Saint-Étienne | 38 | 7 | 11 | 20 | 42:77 | -35 | 32 |
| 19 | Metz | 38 | 6 | 13 | 19 | 35:69 | -34 | 31 |
| 20 | Bordeaux | 38 | 6 | 13 | 19 | 52:91 | -39 | 31 |
2022/23 — top flight
Ligue 1
| # | Club | P | W | D | L | Goals | GD | Pts |
|---|
| 1 | Paris Saint-Germain | 38 | 27 | 4 | 7 | 89:40 | +49 | 85 |
| 2 | Lens | 38 | 25 | 9 | 4 | 68:29 | +39 | 84 |
| 3 | Marseille | 38 | 22 | 7 | 9 | 67:40 | +27 | 73 |
| 4 | Rennes | 38 | 21 | 5 | 12 | 69:39 | +30 | 68 |
| 5 | Lille | 38 | 19 | 10 | 9 | 65:44 | +21 | 67 |
| 6 | Monaco | 38 | 19 | 8 | 11 | 70:58 | +12 | 65 |
| 7 | Lyon | 38 | 18 | 8 | 12 | 65:47 | +18 | 62 |
| 8 | Clermont | 38 | 17 | 8 | 13 | 45:49 | -4 | 59 |
| 9 | Nice | 38 | 15 | 13 | 10 | 48:37 | +11 | 58 |
| 10 | Lorient | 38 | 15 | 10 | 13 | 52:53 | -1 | 55 |
| 11 | Reims | 38 | 12 | 15 | 11 | 45:45 | 0 | 51 |
| 12 | Montpellier | 38 | 15 | 5 | 18 | 65:62 | +3 | 50 |
| 13 | Toulouse | 38 | 13 | 9 | 16 | 51:57 | -6 | 48 |
| 14 | Brest | 38 | 11 | 11 | 16 | 44:54 | -10 | 44 |
| 15 | Strasbourg | 38 | 9 | 13 | 16 | 51:59 | -8 | 40 |
| 16 | Nantes | 38 | 7 | 15 | 16 | 37:55 | -18 | 36 |
| 17 | Auxerre | 38 | 8 | 11 | 19 | 35:63 | -28 | 35 |
| 18 | Ajaccio | 38 | 7 | 5 | 26 | 23:74 | -51 | 26 |
| 19 | Troyes | 38 | 4 | 12 | 22 | 45:81 | -36 | 24 |
| 20 | Angers | 38 | 4 | 6 | 28 | 33:81 | -48 | 18 |
2023/24 — top flight
Ligue 1
| # | Club | P | W | D | L | Goals | GD | Pts |
|---|
| 1 | Paris Saint-Germain | 34 | 22 | 10 | 2 | 81:33 | +48 | 76 |
| 2 | Monaco | 34 | 20 | 7 | 7 | 68:42 | +26 | 67 |
| 3 | Brest | 34 | 17 | 10 | 7 | 53:34 | +19 | 61 |
| 4 | Lille | 34 | 16 | 11 | 7 | 52:34 | +18 | 59 |
| 5 | Nice | 34 | 15 | 10 | 9 | 40:29 | +11 | 55 |
| 6 | Lyon | 34 | 16 | 5 | 13 | 49:55 | -6 | 53 |
| 7 | Lens | 34 | 14 | 9 | 11 | 45:37 | +8 | 51 |
| 8 | Marseille | 34 | 13 | 11 | 10 | 52:41 | +11 | 50 |
| 9 | Reims | 34 | 13 | 8 | 13 | 42:47 | -5 | 47 |
| 10 | Rennes | 34 | 12 | 10 | 12 | 53:46 | +7 | 46 |
| 11 | Toulouse | 34 | 11 | 10 | 13 | 42:46 | -4 | 43 |
| 12 | Montpellier | 34 | 10 | 12 | 12 | 43:48 | -5 | 41 |
| 13 | Strasbourg | 34 | 10 | 9 | 15 | 38:50 | -12 | 39 |
| 14 | Nantes | 34 | 9 | 6 | 19 | 30:55 | -25 | 33 |
| 15 | Le Havre | 34 | 7 | 11 | 16 | 34:45 | -11 | 32 |
| 16 | Metz | 34 | 8 | 5 | 21 | 35:58 | -23 | 29 |
| 17 | Lorient | 34 | 7 | 8 | 19 | 43:66 | -23 | 29 |
| 18 | Clermont | 34 | 5 | 10 | 19 | 26:60 | -34 | 25 |
2024/25 — top flight
Ligue 1
| # | Club | P | W | D | L | Goals | GD | Pts |
|---|
| 1 | Paris Saint-Germain | 34 | 26 | 6 | 2 | 92:35 | +57 | 84 |
| 2 | Marseille | 34 | 20 | 5 | 9 | 74:47 | +27 | 65 |
| 3 | Monaco | 34 | 18 | 7 | 9 | 63:41 | +22 | 61 |
| 4 | Nice | 34 | 17 | 9 | 8 | 66:41 | +25 | 60 |
| 5 | Lille | 34 | 17 | 9 | 8 | 52:36 | +16 | 60 |
| 6 | Lyon | 34 | 17 | 6 | 11 | 65:46 | +19 | 57 |
| 7 | Strasbourg | 34 | 16 | 9 | 9 | 56:44 | +12 | 57 |
| 8 | Lens | 34 | 15 | 7 | 12 | 42:39 | +3 | 52 |
| 9 | Brest | 34 | 15 | 5 | 14 | 52:59 | -7 | 50 |
| 10 | Toulouse | 34 | 11 | 9 | 14 | 44:43 | +1 | 42 |
| 11 | Auxerre | 34 | 11 | 9 | 14 | 48:51 | -3 | 42 |
| 12 | Rennes | 34 | 13 | 2 | 19 | 51:50 | +1 | 41 |
| 13 | Nantes | 34 | 8 | 12 | 14 | 39:52 | -13 | 36 |
| 14 | Angers | 34 | 10 | 6 | 18 | 32:53 | -21 | 36 |
| 15 | Le Havre | 34 | 10 | 4 | 20 | 40:71 | -31 | 34 |
| 16 | Reims | 34 | 8 | 9 | 17 | 33:47 | -14 | 33 |
| 17 | Saint-Étienne | 34 | 8 | 6 | 20 | 39:77 | -38 | 30 |
| 18 | Montpellier | 34 | 4 | 4 | 26 | 23:79 | -56 | 16 |