Fixture360 only lists fixtures from a curated set of leagues, chosen specifically to keep our prediction model accurate.
Stalemate at Bayer Leverkusen's ground as both sides cancel each other out in a goalless draw.
📝 Match Report
How It Unfolded
Bayer Leverkusen and Union Berlin finished level at 0-0 at BayArena, Regular Season - 29, in the Bundesliga. 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 Bayer Leverkusen 2.17 xG and Union Berlin 1.10 xG, a combined 3.27. The scoreboard read 0-0 for 0 actual goals. Bayer Leverkusen fell 2.2 short of their projected output. Union Berlin landed 1.1 under their projected return. Those figures were built on strength ratings of Bayer Leverkusen attack 1.21 / defence 0.85 against Union Berlin attack 0.90 / defence 1.19, drawn from 62/62 games (CurrentSeason).
On the result, the model split it Bayer Leverkusen 61% | Draw 20% | Union Berlin 18%, with Bayer Leverkusen to win its most likely call at 61%. Instead the game produced a draw, an outcome the model had rated at just 20% — a clear break from expectation and a genuine upset by the numbers.
Goals & Markets
The model rated Over 2.5 goals at 63%. The game delivered 0, so it stayed under — against the model's lean. Over 1.5 had been 84% and missed. Over 3.5 was 41% and did not. On both teams to score, the model sat at 59% and the match did not — a miss on BTTS. Historically the two sides average 58% Over 2.5 across their same-competition games (Bayer Leverkusen 69%, Union Berlin 47%), a base rate that pointed the other way from today's under. Their combined BTTS history runs at 52%, which did not match the one-sided outcome.
Trading Patterns vs Reality
Bayer Leverkusen's trading profile (62 games, 31 home) set some clear expectations: BTTS lands in 61% of their matches — today it did not; they keep a clean sheet 37% of the time, and duly kept one.
Union Berlin's trading profile (62 games, 31 away) set some clear expectations: BTTS lands in 42% of their matches — today it did not; they fail to score in 45% of games, a blank that repeated today.
Form vs Result
On form, Bayer Leverkusen arrived the stronger side — 2.45 PPG against 1.08. The form guide was only half-right: the stronger side did not lose, but could not convert the edge into a win. Bayer Leverkusen (home/away splits) managed 0 against a 2.55 scoring average — below par going forward and conceded 0 against a 0.94 average — tighter than their form line. Union Berlin (home/away splits) managed 0 against a 0.81 scoring average — below par going forward and conceded 0 against a 1.74 average — tighter than their form line.
Verdict
Grading the result against the stored data, 0 of 4 pre-match signals came in: result (miss), Over 2.5 (miss), BTTS (miss), form (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.