Bayern Munich vs Borussia Dortmund

12 April 2025 · Bundesliga · 2024/25 · Referee Tobias Welz

Full time 2 – 2

Half-time: 0–0

  • Raphael Guerreiro 65’
  • Serge Gnabry 69’
  • Maximilian Beier 48’
  • Waldemar Anton 75’

Match summary

Bayern Munich and Borussia Dortmund drew 2-2. It was goalless at half-time.

Maximilian Beier put Borussia Dortmund ahead with a header in the 48th minute, set up by Julian Ryerson, Raphael Guerreiro equalised in the 65th minute, set up by Thomas Müller, Serge Gnabry put Bayern Munich in front in the 69th minute, set up by Josip Stanisic, and Waldemar Anton equalised from a corner in the 75th minute.

Bayern Munich had the better of the chances, with 2.95 expected goals (xG) from 28 shots to Borussia Dortmund's 1.78 from 11.

Match stats

Bayern Munich Borussia Dortmund
28 Shots 11
11 Shots on Target 3
6 Corners 5
0 Yellow Cards 0
0 Red Cards 0
2.95 xG 1.72
2.95 Non-penalty xG 1.72
19 Deep Completions 4

Key events

Bayern Munich Borussia Dortmund
Kick-off
Half-time0-0
48’
Maximilian Beier
Assist: Julian Ryerson
0-1 (Borussia Dortmund)
Raphael Guerreiro
Assist: Thomas Müller
1-1 (Bayern Munich)
65’
Serge Gnabry
Assist: Josip Stanisic
2-1 (Bayern Munich)
69’
75’
Waldemar Anton2-2 (Borussia Dortmund)
Full-time2-2

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.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 2.95 1.78 48’ Maximilian Beier (Borussia Dortmund), 0-1 48’ 65’ Raphael Guerreiro (Bayern Munich), 1-1 65’ 69’ Serge Gnabry (Bayern Munich), 2-1 69’ 75’ Waldemar Anton (Borussia Dortmund), 2-2 75’ 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 2.95 1.78 48’ Maximilian Beier (Borussia Dortmund), 0-1 Beier 48’ 65’ Raphael Guerreiro (Bayern Munich), 1-1 Guerreiro 65’ 69’ Serge Gnabry (Bayern Munich), 2-1 Gnabry 69’ 75’ Waldemar Anton (Borussia Dortmund), 2-2 Anton 75’
Bayern Munich 2.95 xGBorussia Dortmund 1.78 xG Goal

Tap a goal for the scorer and score.

Shot map

Every shot and where it was taken from.

 Borussia Dortmund attacking Bayern Munich attacking 
75’ Waldemar Anton (Borussia Dortmund), from a corner, 0.58 xG, goal 48’ Maximilian Beier (Borussia Dortmund), open play, 0.47 xG, goal 77’ Harry Kane (Bayern Munich), open play, 0.39 xG, off target 65’ Raphael Guerreiro (Bayern Munich), open play, 0.37 xG, goal 35’ Josip Stanisic (Bayern Munich), from a corner, 0.32 xG, off target 26’ Michael Olise (Bayern Munich), open play, 0.30 xG, off target 40’ Michael Olise (Bayern Munich), open play, 0.28 xG, saved 90’ Pascal Groß (Borussia Dortmund), open play, 0.28 xG, off target 77’ Harry Kane (Bayern Munich), open play, 0.21 xG, saved 69’ Serge Gnabry (Bayern Munich), open play, 0.12 xG, goal 75’ Serhou Guirassy (Borussia Dortmund), from a corner, 0.11 xG, saved 19’ Leroy Sané (Bayern Munich), open play, 0.09 xG, saved 46’ Thomas Müller (Bayern Munich), open play, 0.09 xG, blocked 58’ Maximilian Beier (Borussia Dortmund), open play, 0.09 xG, blocked 11’ Thomas Müller (Bayern Munich), open play, 0.08 xG, off target 86’ Carney Chukwuemeka (Borussia Dortmund), open play, 0.08 xG, blocked 20’ Harry Kane (Bayern Munich), open play, 0.08 xG, saved 90+3’ Michael Olise (Bayern Munich), open play, 0.07 xG, off target 47’ Harry Kane (Bayern Munich), open play, 0.06 xG, saved 77’ Konrad Laimer (Bayern Munich), open play, 0.05 xG, blocked 29’ Leon Goretzka (Bayern Munich), open play, 0.05 xG, blocked 73’ Harry Kane (Bayern Munich), open play, 0.05 xG, saved 7’ Julian Brandt (Borussia Dortmund), open play, 0.04 xG, off target 4’ Michael Olise (Bayern Munich), open play, 0.04 xG, blocked 34’ Leon Goretzka (Bayern Munich), open play, 0.04 xG, off target 58’ Waldemar Anton (Borussia Dortmund), open play, 0.04 xG, blocked 43’ Niklas Süle (Borussia Dortmund), set piece, 0.04 xG, blocked 65’ Michael Olise (Bayern Munich), open play, 0.04 xG, blocked 77’ Raphael Guerreiro (Bayern Munich), open play, 0.04 xG, saved 80’ Thomas Müller (Bayern Munich), open play, 0.04 xG, saved 38’ Daniel Svensson (Borussia Dortmund), from a corner, 0.03 xG, off target 9’ Konrad Laimer (Bayern Munich), set piece, 0.03 xG, off target 60’ Harry Kane (Bayern Munich), open play, 0.03 xG, off target 90+2’ Joshua Kimmich (Bayern Munich), open play, 0.03 xG, blocked 79’ Joshua Kimmich (Bayern Munich), open play, 0.02 xG, blocked 13’ Thomas Müller (Bayern Munich), open play, 0.02 xG, off target 37’ Pascal Groß (Borussia Dortmund), open play, 0.01 xG, blocked 48’ Leon Goretzka (Bayern Munich), from a corner, 0.01 xG, saved 89’ Serge Gnabry (Bayern Munich), open play, 0.01 xG, off target 75’ Waldemar Anton (Borussia Dortmund), from a corner, 0.58 xG, goal 48’ Maximilian Beier (Borussia Dortmund), open play, 0.47 xG, goal 77’ Harry Kane (Bayern Munich), open play, 0.39 xG, off target 65’ Raphael Guerreiro (Bayern Munich), open play, 0.37 xG, goal 35’ Josip Stanisic (Bayern Munich), from a corner, 0.32 xG, off target 26’ Michael Olise (Bayern Munich), open play, 0.30 xG, off target 40’ Michael Olise (Bayern Munich), open play, 0.28 xG, saved 90’ Pascal Groß (Borussia Dortmund), open play, 0.28 xG, off target 77’ Harry Kane (Bayern Munich), open play, 0.21 xG, saved 69’ Serge Gnabry (Bayern Munich), open play, 0.12 xG, goal 75’ Serhou Guirassy (Borussia Dortmund), from a corner, 0.11 xG, saved 19’ Leroy Sané (Bayern Munich), open play, 0.09 xG, saved 46’ Thomas Müller (Bayern Munich), open play, 0.09 xG, blocked 58’ Maximilian Beier (Borussia Dortmund), open play, 0.09 xG, blocked 11’ Thomas Müller (Bayern Munich), open play, 0.08 xG, off target 86’ Carney Chukwuemeka (Borussia Dortmund), open play, 0.08 xG, blocked 20’ Harry Kane (Bayern Munich), open play, 0.08 xG, saved 90+3’ Michael Olise (Bayern Munich), open play, 0.07 xG, off target 47’ Harry Kane (Bayern Munich), open play, 0.06 xG, saved 77’ Konrad Laimer (Bayern Munich), open play, 0.05 xG, blocked 29’ Leon Goretzka (Bayern Munich), open play, 0.05 xG, blocked 73’ Harry Kane (Bayern Munich), open play, 0.05 xG, saved 7’ Julian Brandt (Borussia Dortmund), open play, 0.04 xG, off target 4’ Michael Olise (Bayern Munich), open play, 0.04 xG, blocked 58’ Waldemar Anton (Borussia Dortmund), open play, 0.04 xG, blocked 34’ Leon Goretzka (Bayern Munich), open play, 0.04 xG, off target 43’ Niklas Süle (Borussia Dortmund), set piece, 0.04 xG, blocked 77’ Raphael Guerreiro (Bayern Munich), open play, 0.04 xG, saved 80’ Thomas Müller (Bayern Munich), open play, 0.04 xG, saved 38’ Daniel Svensson (Borussia Dortmund), from a corner, 0.03 xG, off target 65’ Michael Olise (Bayern Munich), open play, 0.04 xG, blocked 9’ Konrad Laimer (Bayern Munich), set piece, 0.03 xG, off target 60’ Harry Kane (Bayern Munich), open play, 0.03 xG, off target 90+2’ Joshua Kimmich (Bayern Munich), open play, 0.03 xG, blocked 79’ Joshua Kimmich (Bayern Munich), open play, 0.02 xG, blocked 13’ Thomas Müller (Bayern Munich), open play, 0.02 xG, off target 37’ Pascal Groß (Borussia Dortmund), open play, 0.01 xG, blocked 48’ Leon Goretzka (Bayern Munich), from a corner, 0.01 xG, saved 89’ Serge Gnabry (Bayern Munich), 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.

Player stats

PlayerPosMinGAShxGxAKPCards
Jonas Urbig GK900 0.000.000
Konrad Laimer DEF902 0.080.072
Eric Dier DEF900 0.000.000
Kim Min-Jae DEF560 0.000.021
Josip Stanisic DEF9011 0.320.202
Joshua Kimmich MID902 0.050.332
Leon Goretzka MID653 0.100.000
Michael Olise MID905 0.730.415
Thomas Müller MID8314 0.230.845
Leroy Sané MID661 0.090.091
Harry Kane FWD906 0.820.000
Raphael Guerreiro Sub3412 0.410.071
Aleksandar Pavlovic Sub250 0.000.031
Serge Gnabry Sub2412 0.130.051
Kingsley Coman Sub70 0.000.000

Starters first, then substitutes. xA is expected assists.

Before kick-off

Bayern Munich win 66% Avg odds 1.45
Draw 18% Avg odds 5.22
Borussia Dortmund win 16% Avg odds 6.02

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. Results and odds from football-data.co.uk. Referee data before 2025/26 from the Transfermarkt datasets project.