Fixture360 only lists fixtures from a curated set of leagues, chosen specifically to keep our prediction model accurate.
Lyon cruise to a comfortable 0-2 victory over Nice.
📝 Match Report
How It Unfolded
Lyon beat Nice 0-2 at Allianz Riviera, Regular Season - 25, in the Ligue 1. The remainder of the report sets that outcome against the pre-match model, the markets and the teams' data profiles.
The Model vs The Result
The Poisson model went into this projecting Nice 1.98 xG and Lyon 1.14 xG, a combined 3.13. The scoreboard read 0-2 for 2 actual goals. Nice fell 2.0 short of their projected output. Lyon outscored their 1.14 projection by 0.9. Those figures were built on strength ratings of Nice attack 1.30 / defence 0.71 against Lyon attack 1.15 / defence 1.00, drawn from 58/58 games (CurrentSeason).
On the result, the model split it Nice 56% | Draw 23% | Lyon 21%, with Nice to win its most likely call at 56%. Instead the game produced a Lyon win, an outcome the model had rated at just 21% — a clear break from expectation and a genuine upset by the numbers.
Goals & Markets
The model rated Over 2.5 goals at 60%. The game delivered 2, so it stayed under — against the model's lean. Over 1.5 had been 83% and landed. On both teams to score, the model sat at 59% and the match did not — a miss on BTTS. Historically the two sides average 53% Over 2.5 across their same-competition games (Nice 47%, Lyon 60%), a base rate that pointed the other way from today's under. Their combined BTTS history runs at 55%, which did not match the one-sided outcome.
Trading Patterns vs Reality
Nice's trading profile (58 games, 28 home) set some clear expectations: BTTS lands in 53% of their matches — today it did not; they keep a clean sheet 40% of the time, and conceded here.
Lyon's trading profile (58 games, 28 away) set some clear expectations: BTTS lands in 57% of their matches — today it did not; they keep a clean sheet 31% of the time, and duly kept one.
Form vs Result
The form lines were close — Nice 1.74 PPG, Lyon 1.59 PPG — offering no strong steer, and the Lyon win broke the near-deadlock. Nice (home/away splits) managed 0 against a 1.71 scoring average — below par going forward and shipped 2 against a 0.71 concession average — a leakier day than usual. Lyon (home/away splits) conceded 0 against a 1.43 average — tighter than their form line.
Verdict
Grading the result against the stored data, 0 of 3 pre-match signals came in: result (miss), Over 2.5 (miss), BTTS (miss). This one broke away from the data — most of the pre-match signals were overturned by how the ninety minutes actually played out.
💡 Key Insights
⚠️ This match report is generated algorithmically from the final score, our prediction model, and each team's historical form and trading data. Analysis is for informational purposes only.