betaider.com

Werder Bremen v Borussia M.Gladbach — Prediction, Odds & Stats

Saturday 15 March 2025 · GER-Bundesliga · 2425

Bundesliga xG Prediction generated

Shots
23 – 13
On target
2 – 7
Shots in box
17 – 9
xG per shot
0.14 – 0.18
Set-piece xG
0.95 – 0.86
Goals − xG
-1.15 – +1.68

AI prediction

ai-blend-oos No snapshot has been taken for this fixture yet; this is the stored price.
Werder Bremen win
44.7%
Draw
26.8%
Borussia M.Gladbach win
28.6%

Probabilities, not certainties. How they are made: the methodology.

Was this pick made in advance?
A model whose name ends -oos is out of sample: it was fitted only on matches played before this one, so its pick is a genuine forecast rather than hindsight. Anything without that suffix was fitted on all available data.

What the chances say

Werder Bremen are finishing above their chances — 2.7 goals more than expected across 10 matches, which usually cools off. They are also conceding fewer than expected — 3.4 goals saved beyond what the chances suggest.

WLLWDLLLLW last 10 scored 12 from 9.3 xG conceded 18 from 21.4 xG

Borussia M.Gladbach are conceding fewer than expected — 3.6 goals saved beyond what the chances suggest.

DDLDDWLWLL last 10 scored 15 from 14.1 xG conceded 17 from 20.6 xG

Finishing swings far more than chance creation, so a gap this size usually narrows. Over ten matches it is suggestive, not settled — a genuinely elite finisher beats expected goals for years.

What the model said

ModelHome / Draw / Away Expected goalsLikeliest score O2.5BTTSOutcome
ai-blend-oos 1.82–1.44 0% 0% 0% Home ✗

A model whose name ends -oos was produced by the walk-forward backtest: it was fitted only on matches played before this one, so the pick is genuinely out of sample.

Reading the xG timeline
Each step up is a shot; the height of the step is how good the chance was. Dots mark goals. A side whose line climbs steadily created chances all match. A side that scored while its line stayed flat took a rare chance — that is finishing luck, and it rarely repeats.

Expected goals by minute

0.00.91.82.63.50'15'30'45'60'75'90'Alassane Pléa 6' — goalAlassane Pléa 27' — goalRomano Schmid 37' — goalAndré Silva 45' — goalAlassane Pléa 46' — goalTim Kleindienst 80' — goal
Werder Bremen 3.15 xGBorussia M.Gladbach 2.32 xG
Reading the shot map
Each circle is a shot, placed where it was taken. Bigger means a better chance; filled circles are goals. Clusters near the goal mean a side worked good openings; lots of small circles far out means shooting from poor positions and hoping. Hover any circle for the player, minute and chance quality.

Shot map

Alassane Pléa 6' — Goal (0.76 xG, )Tim Kleindienst 10' — Missed Shot (0.04 xG, Open Play)Anthony Jung 12' — Shot On Post (0.02 xG, Open Play)Alassane Pléa 17' — Missed Shot (0.04 xG, Open Play)Oliver Burke 24' — Missed Shot (0.40 xG, Open Play)Joe Scally 25' — Missed Shot (0.02 xG, From Corner)Nathan N'Goumou Minpol 26' — Missed Shot (0.08 xG, From Corner)Alassane Pléa 27' — Goal (0.04 xG, Open Play)Nathan N'Goumou Minpol 27' — Blocked Shot (0.15 xG, Open Play)Nathan N'Goumou Minpol 33' — Saved Shot (0.09 xG, Open Play)Oliver Burke 33' — Missed Shot (0.03 xG, Open Play)Issa Kabore 35' — Blocked Shot (0.03 xG, Open Play)Senne Lynen 35' — Blocked Shot (0.02 xG, Open Play)Romano Schmid 37' — Goal (0.07 xG, Direct Freekick)Felix Agu 39' — Missed Shot (0.35 xG, Open Play)Oliver Burke 39' — Missed Shot (0.46 xG, Open Play)Issa Kabore 42' — Blocked Shot (0.08 xG, Open Play)Romano Schmid 42' — Blocked Shot (0.05 xG, Open Play)André Silva 45' — Goal (0.76 xG, )Alassane Pléa 46' — Goal (0.35 xG, Open Play)Jens Stage 47' — Blocked Shot (0.02 xG, Open Play)Julian Weigl 50' — Missed Shot (0.03 xG, Open Play)Nathan N'Goumou Minpol 52' — Saved Shot (0.09 xG, Open Play)Issa Kabore 57' — Blocked Shot (0.10 xG, Open Play)Jens Stage 61' — Shot On Post (0.15 xG, Open Play)Romano Schmid 62' — Missed Shot (0.03 xG, Open Play)Oliver Burke 67' — Blocked Shot (0.05 xG, Open Play)Justin Njinmah 74' — Missed Shot (0.08 xG, Open Play)Leonardo Bittencourt 77' — Missed Shot (0.02 xG, Open Play)Tim Kleindienst 80' — Goal (0.61 xG, Open Play)Justin Njinmah 83' — Missed Shot (0.04 xG, Open Play)Jens Stage 85' — Missed Shot (0.04 xG, From Corner)Robin Hack 87' — Saved Shot (0.03 xG, Open Play)Keke Maximilian Topp 88' — Blocked Shot (0.04 xG, From Corner)Marvin Ducksch 89' — Missed Shot (0.26 xG, Open Play)Justin Njinmah 94' — Missed Shot (0.04 xG, From Corner)
Werder Bremen attacking right Borussia M.Gladbach attacking left Marker size is xG; filled markers are goals.

Every shot

MinTeamPlayerxG SituationBody partResultAssisted by
6' Borussia M.Gladbach Alassane Pléa 0.76 Right Foot Goal
10' Borussia M.Gladbach Tim Kleindienst 0.04 Open Play Missed Shot Nathan N'Goumou Minpol
12' Werder Bremen Anthony Jung 0.02 Open Play Left Foot Shot On Post Jens Stage
17' Borussia M.Gladbach Alassane Pléa 0.04 Open Play Right Foot Missed Shot Robin Hack
24' Werder Bremen Oliver Burke 0.40 Open Play Right Foot Missed Shot André Silva
25' Borussia M.Gladbach Joe Scally 0.02 From Corner Right Foot Missed Shot
26' Borussia M.Gladbach Nathan N'Goumou Minpol 0.08 From Corner Left Foot Missed Shot Joe Scally
27' Borussia M.Gladbach Alassane Pléa 0.04 Open Play Left Foot Goal
27' Borussia M.Gladbach Nathan N'Goumou Minpol 0.15 Open Play Blocked Shot Robin Hack
33' Borussia M.Gladbach Nathan N'Goumou Minpol 0.09 Open Play Right Foot Saved Shot Robin Hack
33' Werder Bremen Oliver Burke 0.03 Open Play Missed Shot André Silva
35' Werder Bremen Issa Kabore 0.03 Open Play Blocked Shot Romano Schmid
35' Werder Bremen Senne Lynen 0.02 Open Play Right Foot Blocked Shot
37' Werder Bremen Romano Schmid 0.07 Direct Freekick Right Foot Goal
39' Werder Bremen Felix Agu 0.35 Open Play Right Foot Missed Shot Oliver Burke
39' Werder Bremen Oliver Burke 0.46 Open Play Left Foot Missed Shot Issa Kabore
42' Werder Bremen Issa Kabore 0.08 Open Play Right Foot Blocked Shot
42' Werder Bremen Romano Schmid 0.05 Open Play Right Foot Blocked Shot André Silva
45' Werder Bremen André Silva 0.76 Right Foot Goal
46' Borussia M.Gladbach Alassane Pléa 0.35 Open Play Right Foot Goal Robin Hack
47' Werder Bremen Jens Stage 0.02 Open Play Right Foot Blocked Shot
50' Borussia M.Gladbach Julian Weigl 0.03 Open Play Right Foot Missed Shot Alassane Pléa
52' Borussia M.Gladbach Nathan N'Goumou Minpol 0.09 Open Play Right Foot Saved Shot Tim Kleindienst
57' Werder Bremen Issa Kabore 0.10 Open Play Right Foot Blocked Shot Romano Schmid
61' Werder Bremen Jens Stage 0.15 Open Play Shot On Post Felix Agu
62' Werder Bremen Romano Schmid 0.03 Open Play Left Foot Missed Shot Issa Kabore
67' Werder Bremen Oliver Burke 0.05 Open Play Right Foot Blocked Shot Leonardo Bittencourt
74' Werder Bremen Justin Njinmah 0.08 Open Play Missed Shot Felix Agu
77' Werder Bremen Leonardo Bittencourt 0.02 Open Play Left Foot Missed Shot Romano Schmid
80' Borussia M.Gladbach Tim Kleindienst 0.61 Open Play Left Foot Goal Alassane Pléa
83' Werder Bremen Justin Njinmah 0.04 Open Play Right Foot Missed Shot Keke Maximilian Topp
85' Werder Bremen Jens Stage 0.04 From Corner Missed Shot Romano Schmid
87' Borussia M.Gladbach Robin Hack 0.03 Open Play Right Foot Saved Shot Tim Kleindienst
88' Werder Bremen Keke Maximilian Topp 0.04 From Corner Right Foot Blocked Shot Jens Stage
89' Werder Bremen Marvin Ducksch 0.26 Open Play Missed Shot Felix Agu
94' Werder Bremen Justin Njinmah 0.04 From Corner Right Foot Missed Shot Romano Schmid

Players

Borussia M.Gladbach

PlayerMinGA ShKPxGxA xGChain
Tim Kleindienst FW 90 1 0 2 2 0.64 0.12 0.77
Robin Hack AML 90 0 1 1 4 0.03 0.63 1.27
Julian Weigl DMC 90 0 0 1 0 0.03 0.00 1.18
Joe Scally DR 90 0 0 1 1 0.02 0.08 1.10
Philipp Sander DMC 90 0 0 0 0 0.00 0.00 1.04
Ko Itakura DC 90 0 0 0 0 0.00 0.00 0.48
Nico Elvedi DC 90 0 0 0 0 0.00 0.00 0.09
Alassane Pléa AMC 87 3 1 4 2 1.19 0.64 1.43
Jonas Omlin GK 74 0 0 0 0 0.00 0.00 0.13
Nathan N'Goumou Minpol AMR 72 0 0 4 1 0.41 0.04 0.44
Lukas Ullrich DL 72 0 0 0 0 0.00 0.00 0.24
Tomás Cvancara Sub 18 0 0 0 0 0.00 0.00 0.61
Luca Netz Sub 18 0 0 0 0 0.00 0.00 0.61
Tiago Pereira Cardoso Sub 16 0 0 0 0 0.00 0.00 0.00
Marvin Friedrich Sub 3 0 0 0 0 0.00 0.00 0.00
Rocco Reitz Sub 1 0 0 0 0 0.00 0.00 0.00

Werder Bremen

PlayerMinGA ShKPxGxA xGChain
Felix Agu DML 90 0 0 1 3 0.35 0.50 1.78
Jens Stage MC 90 0 0 3 2 0.22 0.06 1.05
Romano Schmid MC 90 1 0 3 5 0.15 0.23 0.85
Anthony Jung DC 90 0 0 1 0 0.02 0.00 0.68
Michael Zetterer GK 90 0 0 0 0 0.00 0.00 0.51
Amos Pieper DC 90 0 0 0 0 0.00 0.00 0.56
Oliver Burke FW 85 0 0 4 1 0.94 0.35 1.52
Issa Kabore DMR 85 0 0 3 2 0.21 0.48 0.71
Milos Veljkovic DC 85 0 0 0 0 0.00 0.00 1.00
André Silva FW 70 1 0 1 3 0.76 0.49 0.95
Senne Lynen MC 70 0 0 1 0 0.02 0.00 1.03
Justin Njinmah Sub 20 0 0 3 0 0.17 0.00 0.39
Leonardo Bittencourt Sub 20 0 0 1 1 0.02 0.05 0.20
Marvin Ducksch Sub 5 0 0 1 0 0.26 0.00 0.26
Keke Maximilian Topp Sub 5 0 0 1 1 0.04 0.04 0.04
Marco Friedl Sub 5 0 0 0 0 0.00 0.00 0.04
betaider.com

Sport

Football sections

Preferences

Appearance
Aider Reading the Football model · online
Open the Radar
Bet slip
Open full page
to move to open esc to close See all results

On this page

Match

What this page is for

One fixture in full. The model's probability for every market it prices, the prices stored against them, the teams expected to feature, and for a match already played, the shot map and the xG timeline.

How to read the shot map

Every shot is placed where it was taken and sized by its chance of being scored. A cluster of small marks from distance and a clean sheet is a side that was busy without ever threatening; two big marks and a defeat is a side that had the better of it and lost anyway. Both happen constantly, and both are invisible in the score.

How to read the xG timeline

The steps are chances as they arrived, so the shape shows who was on top and when. A flat line that jumps once near the end is a smash and grab.

Things to watch

The stored prediction is the one made before the match, kept deliberately so it can be judged afterwards. It is not re-fitted with hindsight.

Press esc to close Read the full guide