Fixture360 only lists fixtures from a curated set of leagues, chosen specifically to keep our prediction model accurate.
Prediction vindicated as Atalanta edge out AC Milan 0-1.
📝 Match Report
How It Unfolded
Atalanta beat AC Milan 0-1 at Stadio Giuseppe Meazza, Regular Season - 33, in the Serie A. With the result on the board, the sections below measure it against everything the model and the numbers projected in advance.
The Model vs The Result
The Poisson model went into this projecting AC Milan 0.93 xG and Atalanta 1.74 xG, a combined 2.68. The scoreboard read 0-1 for 1 actual goal. AC Milan fell 0.9 short of their projected output. Those figures were built on strength ratings of AC Milan attack 1.13 / defence 0.99 against Atalanta attack 1.54 / defence 0.66, drawn from 70/70 games (CurrentSeason).
On the result, the model split it AC Milan 19% | Draw 26% | Atalanta 55%, with Atalanta to win its most likely call at 55%. That is exactly how it finished — the model's leading outcome was vindicated.
Goals & Markets
The model rated Over 2.5 goals at 50%. The game delivered 1, so it stayed under — the opposite of the projected direction. Over 1.5 had been 76% and missed. On both teams to score, the model sat at 51% and the match did not — a miss on BTTS. Historically the two sides average 62% Over 2.5 across their same-competition games (AC Milan 64%, Atalanta 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
AC Milan's trading profile (70 games, 35 home) set some clear expectations: BTTS lands in 60% of their matches — today it did not; they keep a clean sheet 34% of the time, and conceded here.
Atalanta's trading profile (70 games, 35 away) set some clear expectations: BTTS lands in 50% of their matches — today it did not; they keep a clean sheet 40% of the time, and duly kept one.
Form vs Result
The form lines were close — AC Milan 1.80 PPG, Atalanta 1.86 PPG — offering no strong steer, and the Atalanta win broke the near-deadlock. AC Milan (home/away splits) managed 0 against a 1.80 scoring average — below par going forward. Atalanta (home/away splits) managed 1 against a 1.83 scoring average — below par going forward and conceded 0 against a 1.06 average — tighter than their form line.
Verdict
Grading the result against the stored data, 1 of 3 pre-match signals came in: result (hit), Over 2.5 (miss), BTTS (miss). The data was on the wrong side of this result more often than not — a reminder that a single match sits well inside the model's variance.
💡 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.