betaider.com
Sign in

RasenBallsport Leipzig v Borussia M.Gladbach — Prediction, Odds & Stats

Saturday 29 August 2026 · GER-Bundesliga · 2627

Bundesliga xG Prediction generated

Shots
25 – 15
On target
11 – 4
Shots in box
19 – 10
xG per shot
0.18 – 0.08
Set-piece xG
1.93 – 0.48
Goals − xG
-1.44 – -1.23

AI prediction

ai-blend-oos No snapshot has been taken for this fixture yet; this is the stored price.
RasenBallsport Leipzig win
60.1%
Draw
21.7%
Borussia M.Gladbach win
18.2%

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

RasenBallsport Leipzig have scored 24 from 22.6 expected and conceded 20 from 21.7 — both ends in line with the chances, so the recent record is a fair reflection.

LWLWLWLWLW last 10 scored 24 from 22.6 xG conceded 20 from 21.7 xG

Borussia M.Gladbach have scored 17 from 16.5 expected and conceded 25 from 23.1 — both ends in line with the chances, so the recent record is a fair reflection.

WLWLLLLLLW last 10 scored 17 from 16.5 xG conceded 25 from 23.1 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 2.01–1.02 0% 0% 0% Home ✓
dc-xg-oos 2.44–1.18 2-1 9% 70% 63% 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.01.22.53.75.00'15'30'45'60'75'90'Bote Baku 25' — goalAntonio Nusa 48' — goalRocco Reitz 65' — goal
RasenBallsport Leipzig 4.44 xGBorussia M.Gladbach 1.23 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

Philipp Sander 5' — Missed Shot (0.02 xG, Open Play)Ezechiel Banzuzi 15' — Missed Shot (0.07 xG, Open Play)Tidiam Gomis 17' — Missed Shot (0.02 xG, Open Play)Hugo Bolin 20' — Saved Shot (0.36 xG, From Corner)Brajan Gruda 22' — Saved Shot (0.03 xG, Open Play)Bote Baku 25' — Goal (0.33 xG, Open Play)Tidiam Gomis 26' — Blocked Shot (0.10 xG, Open Play)Lukas Ullrich 30' — Blocked Shot (0.05 xG, Open Play)Ezechiel Banzuzi 33' — Missed Shot (0.31 xG, Open Play)Antonio Nusa 37' — Missed Shot (0.08 xG, Open Play)Tidiam Gomis 40' — Missed Shot (0.59 xG, Open Play)Willi Orban 41' — Shot On Post (0.06 xG, From Corner)Hugo Bolin 44' — Blocked Shot (0.07 xG, Open Play)Robin Hack 44' — Blocked Shot (0.05 xG, Open Play)David Raum 44' — Saved Shot (0.04 xG, Direct Freekick)Bote Baku 46' — Missed Shot (0.04 xG, Open Play)Ezechiel Banzuzi 47' — Missed Shot (0.14 xG, Open Play)Antonio Nusa 48' — Goal (0.09 xG, Open Play)Antonio Nusa 56' — Saved Shot (0.06 xG, Open Play)Rocco Reitz 57' — Blocked Shot (0.10 xG, From Corner)Brajan Gruda 58' — Saved Shot (0.10 xG, Open Play)Antonio Nusa 59' — Saved Shot (0.04 xG, From Corner)Ezechiel Banzuzi 59' — Saved Shot (0.68 xG, From Corner)Willi Orban 59' — Saved Shot (0.93 xG, From Corner)Castello Lukeba 60' — Missed Shot (0.02 xG, From Corner)Tidiam Gomis 60' — Blocked Shot (0.06 xG, From Corner)Daiki Hashioka 62' — Missed Shot (0.09 xG, Open Play)Rocco Reitz 65' — Goal (0.31 xG, Open Play)Isac Lidberg 75' — Blocked Shot (0.07 xG, Open Play)Philipp Sander 75' — Missed Shot (0.04 xG, From Corner)Hugo Bolin 77' — Blocked Shot (0.02 xG, Open Play)Joe Scally 78' — Missed Shot (0.05 xG, Open Play)Tim Kleindienst 80' — Missed Shot (0.25 xG, Open Play)Franck Honorat 81' — Saved Shot (0.03 xG, Open Play)Hugo Bolin 85' — Saved Shot (0.06 xG, Open Play)Arthur Vermeeren 85' — Missed Shot (0.08 xG, Open Play)Conrad Harder 86' — Saved Shot (0.08 xG, Open Play)Ko Itakura 90' — Blocked Shot (0.05 xG, Set Piece)Franck Honorat 91' — Saved Shot (0.02 xG, From Corner)Conrad Harder 94' — Blocked Shot (0.07 xG, Open Play)
RasenBallsport Leipzig attacking right Borussia M.Gladbach attacking left Marker size is xG; filled markers are goals.

Every shot

MinTeamPlayerxG SituationBody partResultAssisted by
5' Borussia M.Gladbach Philipp Sander 0.02 Open Play Right Foot Missed Shot —
15' RasenBallsport Leipzig Ezechiel Banzuzi 0.07 Open Play Right Foot Missed Shot —
17' RasenBallsport Leipzig Tidiam Gomis 0.02 Open Play Right Foot Missed Shot —
20' Borussia M.Gladbach Hugo Bolin 0.36 From Corner Right Foot Saved Shot Philipp Sander
22' RasenBallsport Leipzig Brajan Gruda 0.03 Open Play Left Foot Saved Shot Antonio Nusa
25' RasenBallsport Leipzig Bote Baku 0.33 Open Play Left Foot Goal Tidiam Gomis
26' RasenBallsport Leipzig Tidiam Gomis 0.10 Open Play Right Foot Blocked Shot Rocco Reitz
30' Borussia M.Gladbach Lukas Ullrich 0.05 Open Play Left Foot Blocked Shot Robin Hack
33' RasenBallsport Leipzig Ezechiel Banzuzi 0.31 Open Play — Missed Shot Antonio Nusa
37' RasenBallsport Leipzig Antonio Nusa 0.08 Open Play Right Foot Missed Shot David Raum
40' RasenBallsport Leipzig Tidiam Gomis 0.59 Open Play — Missed Shot David Raum
41' RasenBallsport Leipzig Willi Orban 0.06 From Corner — Shot On Post David Raum
44' Borussia M.Gladbach Hugo Bolin 0.07 Open Play Left Foot Blocked Shot Wael Mohya
44' Borussia M.Gladbach Robin Hack 0.05 Open Play Right Foot Blocked Shot Tim Kleindienst
44' RasenBallsport Leipzig David Raum 0.04 Direct Freekick Left Foot Saved Shot —
46' RasenBallsport Leipzig Bote Baku 0.04 Open Play Left Foot Missed Shot Rocco Reitz
47' RasenBallsport Leipzig Ezechiel Banzuzi 0.14 Open Play Right Foot Missed Shot Brajan Gruda
48' RasenBallsport Leipzig Antonio Nusa 0.09 Open Play Right Foot Goal Tidiam Gomis
56' RasenBallsport Leipzig Antonio Nusa 0.06 Open Play Right Foot Saved Shot Ezechiel Banzuzi
57' RasenBallsport Leipzig Rocco Reitz 0.10 From Corner Left Foot Blocked Shot —
58' RasenBallsport Leipzig Brajan Gruda 0.10 Open Play Left Foot Saved Shot Rocco Reitz
59' RasenBallsport Leipzig Antonio Nusa 0.04 From Corner Right Foot Saved Shot David Raum
59' RasenBallsport Leipzig Ezechiel Banzuzi 0.68 From Corner Left Foot Saved Shot —
59' RasenBallsport Leipzig Willi Orban 0.93 From Corner Right Foot Saved Shot —
60' RasenBallsport Leipzig Castello Lukeba 0.02 From Corner Left Foot Missed Shot —
60' RasenBallsport Leipzig Tidiam Gomis 0.06 From Corner Right Foot Blocked Shot Brajan Gruda
62' Borussia M.Gladbach Daiki Hashioka 0.09 Open Play Right Foot Missed Shot Hugo Bolin
65' RasenBallsport Leipzig Rocco Reitz 0.31 Open Play Right Foot Goal Christopher Nkunku
75' Borussia M.Gladbach Isac Lidberg 0.07 Open Play Right Foot Blocked Shot Franck Honorat
75' Borussia M.Gladbach Philipp Sander 0.04 From Corner — Missed Shot Franck Honorat
77' Borussia M.Gladbach Hugo Bolin 0.02 Open Play Right Foot Blocked Shot Mathieu Nguefack
78' Borussia M.Gladbach Joe Scally 0.05 Open Play Right Foot Missed Shot Franck Honorat
80' Borussia M.Gladbach Tim Kleindienst 0.25 Open Play — Missed Shot Franck Honorat
81' Borussia M.Gladbach Franck Honorat 0.03 Open Play Left Foot Saved Shot —
85' Borussia M.Gladbach Hugo Bolin 0.06 Open Play Right Foot Saved Shot Franck Honorat
85' RasenBallsport Leipzig Arthur Vermeeren 0.08 Open Play Right Foot Missed Shot Conrad Harder
86' RasenBallsport Leipzig Conrad Harder 0.08 Open Play Left Foot Saved Shot Benjamin Henrichs
90' Borussia M.Gladbach Ko Itakura 0.05 Set Piece Left Foot Blocked Shot Franck Honorat
91' Borussia M.Gladbach Franck Honorat 0.02 From Corner Right Foot Saved Shot —
94' RasenBallsport Leipzig Conrad Harder 0.07 Open Play Left Foot Blocked Shot —

Players

Borussia M.Gladbach

PlayerMinGA ShKPxGxA xGChain
Hugo Bolin AMR 90 0 0 4 1 0.51 0.09 0.54
Tim Kleindienst FW 90 0 0 1 1 0.25 0.05 0.41
Philipp Sander DMC 90 0 0 2 1 0.06 0.36 0.52
Ko Itakura DC 90 0 0 1 0 0.05 0.00 0.49
Moritz Nicolas GK 90 0 0 0 0 0.00 0.00 0.20
Kevin Diks DC 90 0 0 0 0 0.00 0.00 0.50
Daiki Hashioka DR 77 0 0 1 0 0.09 0.00 0.14
Robin Hack AML 65 0 0 1 1 0.05 0.05 0.17
Lukas Ullrich DL 65 0 0 1 0 0.05 0.00 0.05
Kevin Stöger DMC 65 0 0 0 0 0.00 0.00 0.14
Wael Mohya AMC 65 0 0 0 1 0.00 0.07 0.21
Isac Lidberg Sub 25 0 0 1 0 0.07 0.00 0.07
Franck Honorat Sub 25 0 0 2 6 0.04 0.53 0.48
Mathieu Nguefack Sub 25 0 0 0 1 0.00 0.02 0.34
David Herold Sub 25 0 0 0 0 0.00 0.00 0.00
Joe Scally Sub 13 0 0 1 0 0.05 0.00 0.14

RasenBallsport Leipzig

PlayerMinGA ShKPxGxA xGChain
Willi Orban DC 90 0 0 2 0 0.99 0.00 0.68
Antonio Nusa FWL 90 1 0 4 2 0.27 0.34 1.12
David Raum DL 90 0 0 1 4 0.04 0.77 1.57
Castello Lukeba DC 90 0 0 1 0 0.02 0.00 0.28
Nicolas Seiwald MC 90 0 0 0 0 0.00 0.00 0.53
Maarten Vandevoordt GK 90 0 0 0 0 0.00 0.00 0.17
Ezechiel Banzuzi MC 84 0 0 4 1 1.20 0.06 0.85
Rocco Reitz MC 84 1 0 2 3 0.40 0.24 0.95
Bote Baku DR 74 1 0 2 0 0.37 0.00 0.61
Brajan Gruda FWR 74 0 0 2 2 0.14 0.20 1.41
Tidiam Gomis FW 66 0 2 4 2 0.78 0.42 1.60
Christopher Nkunku Sub 24 0 1 0 1 0.00 0.31 0.31
Benjamin Henrichs Sub 16 0 0 0 1 0.00 0.08 0.16
Johan Bakayoko Sub 16 0 0 0 0 0.00 0.00 0.00
Conrad Harder Sub 6 0 0 2 1 0.15 0.08 0.23
Arthur Vermeeren Sub 6 0 0 1 0 0.08 0.00 0.08
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