Borussia Dortmund vs Stuttgart

22 November 2025 · Bundesliga · 2025/26 · Referee Benjamin Brand

Full time 3 – 3

Half-time: 2–0

  • Emre Can 34’ (pen)
  • Maximilian Beier 41’
  • Karim Adeyemi 89’
  • Deniz Undav 47’, 71’, 90+1’

Match summary

Borussia Dortmund and Stuttgart drew 3-3. Borussia Dortmund led 2-0 at half-time.

In the first half, Emre Can put Borussia Dortmund ahead from the penalty spot in the 34th minute and Maximilian Beier made it 2-0 in the 41st minute. In the second half, Deniz Undav pulled one back to make it 2-1 in the 47th minute, set up by Bilal El Khannouss, Undav equalised from a corner in the 71st minute, set up by Maximilian Mittelstädt, Karim Adeyemi put Borussia Dortmund back in front in the 89th minute, set up by Maximilian Beier, and Undav equalised in stoppage time, set up by Chris Führich.

Borussia Dortmund had the better of the chances, with 3.73 expected goals (xG) from 14 shots to Stuttgart's 1.81 from 16.

Match stats

46% Possession 54%
14 Shots 16
6 Shots on target 6
2 Corners 4
90 Attacks 110
49 Dangerous attacks 52
428 Passes 509
79% Pass accuracy 82%
21 Tackles 15
12 Fouls 10
1 Yellow cards 1
0 Red cards 0
3 Offsides 1

Key events

Borussia Dortmund Stuttgart
Kick-off
24’
Emre CanPenalty1-0 (Borussia Dortmund)
34’
37’
Tiago TomásShot on target
Maximilian BeierRight foot shot2-0 (Borussia Dortmund)
41’
Serhou GuirassyShot on target
41’
Maximilian BeierShot on target
41’
Half-time2-0
47’
Deniz UndavRight foot shot2-1 (Stuttgart)
Second half underway
VAR review
56’
63’
Jamie LewelingShot on target
71’
Deniz UndavRight foot shot2-2 (Stuttgart)
73’
Daniel SvenssonJulian Brandt
73’
80’
Nikolas NarteyChema Andrés
81’
82’
Chris FührichShot on target
Karim AdeyemiShot on target
83’
Karim AdeyemiLeft foot shot3-2 (Borussia Dortmund)
89’
90+1’
Deniz UndavRight foot shot3-3 (Stuttgart)
Full-time3-3

How the chances added up

Running total of expected goals (xG) for each side through the match. xG rates each chance by how often similar shots are scored. A goal is marked where it was scored.

0 1 2 3 4 5 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 3.73 1.81 34’ Emre Can (Borussia Dortmund), 1-0 34’ 41’ Maximilian Beier (Borussia Dortmund), 2-0 41’ 47’ Deniz Undav (Stuttgart), 2-1 47’ 71’ Deniz Undav (Stuttgart), 2-2 71’ 89’ Karim Adeyemi (Borussia Dortmund), 3-2 89’ 90+1’ Deniz Undav (Stuttgart), 3-3 90+1’ 0 1 2 3 4 5 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 3.73 1.81 34’ Emre Can (Borussia Dortmund), 1-0 Can 34’ 41’ Maximilian Beier (Borussia Dortmund), 2-0 Beier 41’ 47’ Deniz Undav (Stuttgart), 2-1 Undav 47’ 71’ Deniz Undav (Stuttgart), 2-2 Undav 71’ 89’ Karim Adeyemi (Borussia Dortmund), 3-2 Adeyemi 89’ 90+1’ Deniz Undav (Stuttgart), 3-3 Undav 90+1’
Borussia Dortmund 3.73 xGStuttgart 1.81 xG Goal

Tap a goal for the scorer and score.

Shot map

Every shot and where it was taken from.

 Stuttgart attacking Borussia Dortmund attacking 
41’ Maximilian Beier (Borussia Dortmund), open play, 0.78 xG, goal 34’ Emre Can (Borussia Dortmund), penalty, 0.76 xG, goal 41’ Maximilian Beier (Borussia Dortmund), open play, 0.66 xG, saved 89’ Karim Adeyemi (Borussia Dortmund), open play, 0.59 xG, goal 71’ Deniz Undav (Stuttgart), from a corner, 0.57 xG, goal 47’ Deniz Undav (Stuttgart), open play, 0.53 xG, goal 83’ Karim Adeyemi (Borussia Dortmund), open play, 0.30 xG, saved 35’ Julian Ryerson (Borussia Dortmund), open play, 0.19 xG, blocked 36’ Jobe Bellingham (Borussia Dortmund), open play, 0.12 xG, blocked 19’ Tiago Tomás (Stuttgart), open play, 0.11 xG, off target 44’ Julian Brandt (Borussia Dortmund), open play, 0.08 xG, blocked 21’ Tiago Tomás (Stuttgart), open play, 0.08 xG, blocked 70’ Angelo Stiller (Stuttgart), direct free kick, 0.08 xG, blocked 90+1’ Deniz Undav (Stuttgart), open play, 0.08 xG, goal 37’ Tiago Tomás (Stuttgart), open play, 0.07 xG, saved 13’ Serhou Guirassy (Borussia Dortmund), open play, 0.06 xG, off target 41’ Serhou Guirassy (Borussia Dortmund), open play, 0.07 xG, saved 49’ Lorenz Assignon (Stuttgart), open play, 0.06 xG, off target 82’ Chris Führich (Stuttgart), open play, 0.06 xG, saved 26’ Carney Chukwuemeka (Borussia Dortmund), open play, 0.04 xG, off target 63’ Jamie Leweling (Stuttgart), open play, 0.04 xG, saved 46’ Jamie Leweling (Stuttgart), open play, 0.04 xG, blocked 30’ Jobe Bellingham (Borussia Dortmund), open play, 0.03 xG, off target 50’ Deniz Undav (Stuttgart), open play, 0.03 xG, off target 74’ Chema Andres (Stuttgart), from a corner, 0.02 xG, blocked 78’ Felix Nmecha (Borussia Dortmund), open play, 0.02 xG, off target 15’ Maximilian Beier (Borussia Dortmund), open play, 0.02 xG, blocked 57’ Deniz Undav (Stuttgart), open play, 0.02 xG, off target 75’ Chris Führich (Stuttgart), from a corner, 0.02 xG, off target 85’ Julian Chabot (Stuttgart), open play, 0.01 xG, off target 41’ Maximilian Beier (Borussia Dortmund), open play, 0.78 xG, goal 34’ Emre Can (Borussia Dortmund), penalty, 0.76 xG, goal 41’ Maximilian Beier (Borussia Dortmund), open play, 0.66 xG, saved 89’ Karim Adeyemi (Borussia Dortmund), open play, 0.59 xG, goal 71’ Deniz Undav (Stuttgart), from a corner, 0.57 xG, goal 47’ Deniz Undav (Stuttgart), open play, 0.53 xG, goal 83’ Karim Adeyemi (Borussia Dortmund), open play, 0.30 xG, saved 35’ Julian Ryerson (Borussia Dortmund), open play, 0.19 xG, blocked 36’ Jobe Bellingham (Borussia Dortmund), open play, 0.12 xG, blocked 19’ Tiago Tomás (Stuttgart), open play, 0.11 xG, off target 21’ Tiago Tomás (Stuttgart), open play, 0.08 xG, blocked 44’ Julian Brandt (Borussia Dortmund), open play, 0.08 xG, blocked 70’ Angelo Stiller (Stuttgart), direct free kick, 0.08 xG, blocked 90+1’ Deniz Undav (Stuttgart), open play, 0.08 xG, goal 37’ Tiago Tomás (Stuttgart), open play, 0.07 xG, saved 41’ Serhou Guirassy (Borussia Dortmund), open play, 0.07 xG, saved 13’ Serhou Guirassy (Borussia Dortmund), open play, 0.06 xG, off target 49’ Lorenz Assignon (Stuttgart), open play, 0.06 xG, off target 82’ Chris Führich (Stuttgart), open play, 0.06 xG, saved 26’ Carney Chukwuemeka (Borussia Dortmund), open play, 0.04 xG, off target 46’ Jamie Leweling (Stuttgart), open play, 0.04 xG, blocked 63’ Jamie Leweling (Stuttgart), open play, 0.04 xG, saved 30’ Jobe Bellingham (Borussia Dortmund), open play, 0.03 xG, off target 50’ Deniz Undav (Stuttgart), open play, 0.03 xG, off target 74’ Chema Andres (Stuttgart), from a corner, 0.02 xG, blocked 78’ Felix Nmecha (Borussia Dortmund), open play, 0.02 xG, off target 15’ Maximilian Beier (Borussia Dortmund), open play, 0.02 xG, blocked 57’ Deniz Undav (Stuttgart), open play, 0.02 xG, off target 75’ Chris Führich (Stuttgart), from a corner, 0.02 xG, off target 85’ Julian Chabot (Stuttgart), open play, 0.01 xG, off target
Size shows xG Goal On target Off target or blocked

Hover or tap a shot for the player, minute and xG.

Lineups

Borussia Dortmund 3-4-3 Starting XI
Kobel
Anton
Can
Schlotterbeck
Ryerson
Nmecha
Bellingham
Beier 90’
Brandt 73’
Guirassy
Chukwuemeka 77’
Stuttgart 4-2-3-1 Starting XI
Nübel
Mittelstädt 80’
Chabot
Jeltsch
Assignon
Stiller 90’
Andrés 80’
Leweling 90’
Khannouss
Tomás 73’
Undav 3

Player stats

PlayerPosMinGAShxGxAKPCards
Gregor Kobel GK900 0.000.000
Nico Schlotterbeck DEF900 0.000.301
Emre Can DEF9011 0.760.000
Waldemar Anton DEF900 0.000.071
Julian Ryerson MID901 0.190.000
Maximilian Beier MID90113 1.460.591
Felix Nmecha MID901 0.020.081
Jobe Bellingham MID902 0.140.021
Julian Brandt FWD761 0.080.263
Serhou Guirassy FWD902 0.130.000
Carney Chukwuemeka FWD801 0.040.000
Daniel Svensson Sub140 0.000.000
Karim Adeyemi Sub1012 0.890.000
Fabio Silva Sub10 0.000.000

Starters first, then substitutes. xA is expected assists.

Before kick-off

Borussia Dortmund win 53% Avg odds 1.78
Draw 24% Avg odds 3.88
Stuttgart win 23% Avg odds 4.14

Chances implied by the average closing odds, with the bookmaker margin removed.

Form going into the game

Last five league games before this one, oldest first. Select one to open it.

Previous and next meeting

Shots, expected goals and player data from Understat. Timeline, lineups and team statistics from Sportmonks. Results and odds from football-data.co.uk.