The model makes Reims the title favourite, first in 26.1% of 1,000,000 simulated seasons, ahead of Saint Etienne on 18.8% and Nantes on 10.5%. On expected points that is Reims 58.6, Saint Etienne 56.4, Nantes 53.6. Two clubs finish in the top four more often than not: Reims 65.8%, Saint Etienne 56.1%.

At the other end, Laval carries the highest relegation risk at 47.1%, then Nancy on 41.1% and Boulogne on 40.2%. The bottom club averages 36.1 points to Reims's 58.6.

This simulation gives you a spread of possible outcomes, not a single, definitive answer. It's great for understanding the range of where a club might finish, but remember, it's based purely on pre-season data and doesn't account for the chaos of an actual season. Injuries, form, fixture pile-ups – none of that's in the model. It's a tool, not a crystal ball. Use it to gauge potential, not to chase certainty. When you look at the table, think of it as a map of possibilities, not a forecast. It's there to show you the lay of the land, not to tell you where the next twist in the road is. Keep your eyes open, stay adaptable, and let the data guide, not dictate, your selections.

Every club, every finishing position

Club123456789101112131415161718xPts
Reims26.1317.1412.739.817.776.174.953.953.122.411.851.370.970.680.450.270.150.0658.6
Saint Etienne18.7615.0012.1610.168.577.206.035.014.193.402.722.121.611.190.850.550.340.1456.4
Nantes10.5411.2210.8810.169.288.407.546.555.724.853.963.232.581.931.380.930.570.2653.6
Metz9.349.779.569.038.538.007.376.716.065.404.704.023.332.722.161.601.100.6252.3
Rodez8.149.129.289.048.748.257.667.046.355.664.954.203.462.792.161.571.040.5651.9
Annecy6.788.028.478.668.528.227.847.356.746.095.344.643.903.182.491.811.270.6851.1
Dijon4.496.006.927.437.767.877.887.687.336.906.345.614.894.103.312.591.851.0549.3
Sochaux4.506.036.877.457.757.887.867.677.316.876.315.654.914.113.372.561.831.0849.3
RED Star FC 933.595.086.056.767.217.557.657.637.537.206.776.175.494.733.913.082.241.3548.3
Dunkerque3.554.955.916.597.057.417.577.627.477.236.826.245.594.844.063.242.371.4648.2
Montpellier2.423.935.066.036.757.337.727.967.967.827.396.866.125.274.333.362.331.3647.4
Grenoble0.420.881.401.972.633.294.054.915.786.617.478.268.879.279.409.158.527.1140.9
Guingamp0.370.771.221.692.222.843.504.275.055.896.787.688.539.189.7610.1410.199.9339.8
PAU0.400.761.161.612.132.673.283.954.695.476.317.198.048.949.7010.4611.1712.0739.2
Clermont Foot0.150.350.640.991.391.922.523.274.034.976.077.208.379.7110.8411.9412.7812.8338.0
Nancy0.200.420.691.051.421.892.433.073.794.645.576.627.779.0110.3311.8013.4415.8737.5
Boulogne0.140.340.590.931.351.812.343.023.804.655.716.898.129.4110.6912.1613.4614.5837.5
Laval0.090.230.400.630.941.301.792.353.063.914.916.047.458.9410.8012.8015.3718.9836.1

Each cell is the percentage of 1,000,000 simulated seasons in which that club finished in that position, so every row adds up to 100%. A blank cell is under 0.005%, not impossible. The xPts column is the club's average points total across those seasons. Club names link to that club's full model profile.

View the same grid as a shaded heatmap, which is easier to scan than the table above.

How it's built

Every one of the 306 fixtures is played out from each club's attacking and defending strength, a blend of shots-adjusted Elo and last season's goal rates, then adjusted for this summer's transfers on both sides of the ball: a departed 16-goal scorer weakens a club's attack, while an incoming ball-winner (tackles won, interceptions, blocks) strengthens its defence. Scorelines are drawn from the same negative-binomial and Dixon-Coles model the live BetSignals signals use. Strengths are frozen at pre-season, so this is a start-of-season expectation, not a mid-season read.

_Generated from the BetSignals season simulation, 1,000,000 runs._