betaider.com
Sign in

Borussia Dortmund v Wolfsburg — Prediction, Odds & Stats

Sunday 21 September 2025 · GER-Bundesliga · 2526

Bundesliga xG Prediction generated

1–0
1.25 – 0.98 xG
Shots
12 – 9
On target
4 – 0
Shots in box
7 – 4
xG per shot
0.10 – 0.12
Set-piece xG
0.24 – 0.88
Goals − xG
-0.25 – -1.06

AI prediction

ai-blend-oos No snapshot has been taken for this fixture yet; this is the stored price.
Borussia Dortmund win
58.4%
Draw
22.0%
Wolfsburg win
19.5%

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

Borussia Dortmund are finishing below their chances — 2.3 goals fewer than expected across 10 matches, despite creating the openings. They are also conceding fewer than expected — 2.7 goals saved beyond what the chances suggest.

WWLLWLWWWW last 10 scored 20 from 22.3 xG conceded 10 from 12.7 xG

Wolfsburg are finishing sharply below their chances — 6.8 goals fewer than expected across 10 matches, despite creating the openings. They are also conceding fewer than expected — 2.2 goals saved beyond what the chances suggest.

LDLLLWDDLW last 10 scored 12 from 18.8 xG conceded 16 from 18.2 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.17–1.20 0% 0% 0% Home ✓
dc-xg-oos 2.46–1.09 2-1 9% 69% 61% 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.30.71.01.40'15'30'45'60'75'90'Karim Adeyemi 19' — goal
Borussia Dortmund 1.25 xGWolfsburg 1.06 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

Karim Adeyemi 1' — Missed Shot (0.04 xG, Open Play)Karim Adeyemi 4' — Missed Shot (0.03 xG, From Corner)Nico Schlotterbeck 4' — Blocked Shot (0.03 xG, From Corner)Vinicius Souza 7' — Missed Shot (0.01 xG, Open Play)Patrick Wimmer 8' — Blocked Shot (0.03 xG, Open Play)Andreas Skov Olsen 9' — Blocked Shot (0.02 xG, Open Play)Lovro Majer 17' — Blocked Shot (0.06 xG, Open Play)Mohammed Amoura 17' — Missed Shot (0.05 xG, Open Play)Karim Adeyemi 19' — Goal (0.02 xG, Open Play)Karim Adeyemi 27' — Missed Shot (0.10 xG, Open Play)Maximilian Beier 33' — Missed Shot (0.47 xG, Open Play)Maximilian Beier 43' — Saved Shot (0.12 xG, Open Play)Karim Adeyemi 46' — Missed Shot (0.04 xG, Open Play)Maximilian Beier 46' — Saved Shot (0.07 xG, From Corner)Daniel Svensson 54' — Missed Shot (0.12 xG, Open Play)Konstantinos Koulierakis 57' — Shot On Post (0.73 xG, Set Piece)Mohammed Amoura 57' — Missed Shot (0.12 xG, Set Piece)Felix Nmecha 74' — Saved Shot (0.11 xG, From Corner)Serhou Guirassy 86' — Blocked Shot (0.09 xG, Open Play)Konstantinos Koulierakis 89' — Missed Shot (0.02 xG, Open Play)Kamil Grabara 93' — Missed Shot (0.04 xG, Set Piece)
Borussia Dortmund attacking right Wolfsburg attacking left Marker size is xG; filled markers are goals.

Every shot

MinTeamPlayerxG SituationBody partResultAssisted by
1' Borussia Dortmund Karim Adeyemi 0.04 Open Play Left Foot Missed Shot Marcel Sabitzer
4' Borussia Dortmund Karim Adeyemi 0.03 From Corner Left Foot Missed Shot
4' Borussia Dortmund Nico Schlotterbeck 0.03 From Corner Left Foot Blocked Shot
7' Wolfsburg Vinicius Souza 0.01 Open Play Missed Shot Moritz Jenz
8' Wolfsburg Patrick Wimmer 0.03 Open Play Right Foot Blocked Shot Joakim Maehle
9' Wolfsburg Andreas Skov Olsen 0.02 Open Play Left Foot Blocked Shot Lovro Majer
17' Wolfsburg Lovro Majer 0.06 Open Play Right Foot Blocked Shot Mohammed Amoura
17' Wolfsburg Mohammed Amoura 0.05 Open Play Right Foot Missed Shot
19' Borussia Dortmund Karim Adeyemi 0.02 Open Play Left Foot Goal Julian Ryerson
27' Borussia Dortmund Karim Adeyemi 0.10 Open Play Left Foot Missed Shot Serhou Guirassy
33' Borussia Dortmund Maximilian Beier 0.47 Open Play Missed Shot Julian Ryerson
43' Borussia Dortmund Maximilian Beier 0.12 Open Play Right Foot Saved Shot
46' Borussia Dortmund Karim Adeyemi 0.04 Open Play Right Foot Missed Shot Marcel Sabitzer
46' Borussia Dortmund Maximilian Beier 0.07 From Corner Saved Shot Julian Ryerson
54' Borussia Dortmund Daniel Svensson 0.12 Open Play Missed Shot Marcel Sabitzer
57' Wolfsburg Konstantinos Koulierakis 0.73 Set Piece Left Foot Shot On Post Mohammed Amoura
57' Wolfsburg Mohammed Amoura 0.12 Set Piece Missed Shot Maximilian Arnold
74' Borussia Dortmund Felix Nmecha 0.11 From Corner Saved Shot Julian Ryerson
86' Borussia Dortmund Serhou Guirassy 0.09 Open Play Right Foot Blocked Shot Julian Brandt
89' Wolfsburg Konstantinos Koulierakis 0.02 Open Play Left Foot Missed Shot Christian Eriksen
93' Wolfsburg Kamil Grabara 0.04 Set Piece Missed Shot Maximilian Arnold

Players

Borussia Dortmund

PlayerMinGA ShKPxGxA xGChain
Daniel Svensson DML 90 0 0 1 0 0.12 0.00 0.60
Serhou Guirassy FW 90 0 0 1 1 0.09 0.10 0.66
Nico Schlotterbeck DC 90 0 0 1 0 0.03 0.00 0.60
Waldemar Anton DC 90 0 0 0 0 0.00 0.00 0.47
Gregor Kobel GK 90 0 0 0 0 0.00 0.00 0.47
Ramy Bensebaini DC 90 0 0 0 0 0.00 0.00 0.57
Julian Ryerson DMR 90 0 1 0 4 0.00 0.67 0.61
Marcel Sabitzer MC 90 0 0 0 3 0.00 0.20 0.31
Karim Adeyemi AMC 81 1 0 5 0 0.23 0.00 0.67
Felix Nmecha MC 81 0 0 1 0 0.11 0.00 0.00
Maximilian Beier AMC 69 0 0 3 0 0.66 0.00 0.60
Carney Chukwuemeka Sub 21 0 0 0 0 0.00 0.00 0.00
Julian Brandt Sub 9 0 0 0 1 0.00 0.09 0.09
Jobe Bellingham Sub 9 0 0 0 0 0.00 0.00 0.00
Salih Özcan Sub 1 0 0 0 0 0.00 0.00 0.00

Wolfsburg

PlayerMinGA ShKPxGxA xGChain
Konstantinos Koulierakis DC 90 0 0 2 0 0.74 0.00 0.04
Mohammed Amoura FW 90 0 0 2 2 0.16 0.79 0.14
Kamil Grabara GK 90 0 0 1 0 0.04 0.00 0.06
Moritz Jenz DC 90 0 0 0 1 0.00 0.01 0.04
Maximilian Arnold DMC 90 0 0 0 2 0.00 0.15 0.04
Kilian Fischer DR 90 0 0 0 0 0.00 0.00 0.09
Joakim Maehle DL 85 0 0 0 1 0.00 0.03 0.03
Patrick Wimmer AML 77 0 0 1 0 0.03 0.00 0.03
Lovro Majer AMC 64 0 0 1 1 0.06 0.02 0.11
Vinicius Souza DMC 64 0 0 1 0 0.01 0.00 0.04
Andreas Skov Olsen AMR 50 0 0 1 0 0.02 0.00 0.04
Adam Daghim Sub 40 0 0 0 0 0.00 0.00 0.00
Mattias Svanberg Sub 26 0 0 0 0 0.00 0.00 0.00
Christian Eriksen Sub 26 0 0 0 1 0.00 0.02 0.02
Jonas Wind Sub 13 0 0 0 0 0.00 0.00 0.00
Dzenan Pejcinovic Sub 5 0 0 0 0 0.00 0.00 0.00
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