Bundesliga Regular Season - 23

RB Leipzig 2 - 2 FT Borussia Dortmund

Red Bull Arena

Match previews and recaps to help you decide which games are worth watching

Futmetrix Verdict
98
FT
Sat, Feb 21
Deutsch
RB Leipzig
2-2
Borussia Dortmund
⚡ Intensity 78
⚖️ Balance 40
🏆 Stakes 72
🎲 Upset 50
Dortmund Stun Leipzig with Last-Gasp Equalizer

Baumgartner Brace Denied by Last-Gasp Dortmund Drama

Must-Watch Futmetrix Score: 98/100. A relentless Bundesliga classic at the Red Bull Arena saw RB Leipzig's dominance undone by a resilient Dortmund comeback and a 95th-minute heartbreaker.

The Setup

Leipzig set a high Intensity from the opening whistle, suffocating the visitors with their trademark high-press. The home side controlled possession with a 56% share, and it didn't take long for the pressure to tell. Yan Diomande was the architect of chaos, delivering a perfect ball for C. Baumgartner to open the scoring in the 20th minute. Dortmund struggled to find any rhythm as RB Leipzig continued to pour forward. The lead was doubled just before the break when David Raum found Baumgartner again, whose clinical finish seemed to have put the game out of reach. Leipzig headed into the tunnel looking entirely dominant, while the visitors appeared shell-shocked by the pace of the encounter.

The Pivot

The Balance of the contest shifted dramatically five minutes into the second half. In a moment of defensive indecision, Romulo Cardoso turned the ball into his own net, gifting Borussia Dortmund a lifeline they barely deserved at that point. This freak goal completely altered the psychological dynamic of the match. Leipzig, previously composed, began to drop deeper, allowing Dortmund to dictate the tempo. Despite the heroic efforts of goalkeeper Maarten Vandevoordt, who made three crucial saves to preserve the lead, the momentum had clearly swung. The tactical battle became one of Leipzig trying to hold what they had while Dortmund threw caution to the wind in search of an equalizer.

Resolution

With the Stakes high in the title race, the final minutes were played at a frantic pace. Dortmund's substitutes eventually provided the decisive Upset Factor. As the clock ticked into the fifth minute of stoppage time, K. Adeyemi broke free and squared the ball for F. Silva to tap home. The late equalizer stunned the home crowd and secured a vital point for Dortmund, keeping them firmly in second place. For Leipzig, the result is a bitter pill to swallow after controlling so much of the match. They remain in fifth, missing a golden opportunity to close the gap on the Champions League spots, while Dortmund celebrates a draw that felt very much like a victory.

Key Questions

What made Yan Diomande the Man of the Match?

Diomande was exceptional, providing an assist and four key passes while maintaining a high rating of 9.0 throughout the match.

How did RB Leipzig complete the comeback from behind?

Actually, Leipzig led 2-0. Dortmund were the ones who completed the comeback through an own goal and a 95th-minute equalizer.

What does this mean for RB Leipzig's season?

The draw keeps Leipzig in 5th place. It highlights their ability to dominate top teams but also their vulnerability in closing games out.

What is the Futmetrix Score?

The Futmetrix Score is our 0-100 verdict on how entertaining a match is. We look at intensity, balance, stakes, and star quality to tell you if it's worth your time.

Match Statistics

Possession
56%
44%
RB Leipzig 56%
Borussia Dortmund 44%
Shots
13
10
RB Leipzig 13
Borussia Dortmund 10
Shots on Target
3
4
RB Leipzig 3
Borussia Dortmund 4
Expected Goals (xG)
1.78
1.32
RB Leipzig 1.78
Borussia Dortmund 1.32
Passes
445
353
RB Leipzig 445
Borussia Dortmund 353
Pass Accuracy
84%
76%
RB Leipzig 84%
Borussia Dortmund 76%
Corners
6
2
RB Leipzig 6
Borussia Dortmund 2
Fouls
11
17
RB Leipzig 11
Borussia Dortmund 17
Yellow Cards
3
4
RB Leipzig 3
Borussia Dortmund 4
Red Cards
0
0
RB Leipzig 0
Borussia Dortmund 0

Match Events

20' C. Baumgartner (Y. Diomande)
30' 🟨 Romulo Cardoso
39' C. Baumgartner (D. Raum)
41' 🟨 C. Lukeba
R. Bensebaini 🟨 45'+2
HT
Romulo Cardoso 50'
L. Reggiani 🟨 54'
M. Beier J. Brandt 🔄 64'
F. Nmecha C. Chukwuemeka 🔄 64'
L. Reggiani Y. Couto 🔄 65'
65' 🔄 X. Schlager A. Nusa
J. Ryerson 🟨 69'
S. Guirassy F. Silva 🔄 72'
M. Sabitzer K. Adeyemi 🔄 76'
F. Silva 🟨 78'
81' 🔄 B. Gruda E. Banzuzi
81' 🔄 Romulo Cardoso C. Harder
82' 🔄 R. Baku B. Henrichs
90'+2 🟨 D. Raum
90'+4 🔄 Y. Diomande M. Finkgrafe
F. Silva (K. Adeyemi) 90'+5
FT

Player Cards

Our take on every player in this match

RB Leipzig

Goalkeepers
Maarten Vandevoordt
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
97
Total Mins
Started
Entry
Defenders
Ridle Baku
PROVOCATEUR
PROVOCATEUR
2
Fouls Won
2
Fouls Won
4
Duels Won
0
Pens Won
Willi Orbán
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
97
Total Mins
Started
Entry
Castello Lukeba
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
97
Total Mins
Started
Entry
David Raum
ARCHITECT
ARCHITECT
4
Key Passes
4
Key Passes
1
Assists
51%
Pass Acc
Midfielders
Christoph Baumgartner
HITMAN
HITMAN
2
Goals
2
Goals
2
On Target
7.2
Rating
Nicolas Seiwald
STORMTROOPER
STORMTROOPER
2
Shots
2
Shots
0
Goals
0
On Target
Xaver Schlager
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
65
Total Mins
65
Entry
Forwards
Brajan Gruda
PROVOCATEUR
PROVOCATEUR
4
Fouls Won
4
Fouls Won
7
Duels Won
0
Pens Won
Rômulo
FRIENDLY FIRE
FRIENDLY FIRE
Own Goal
Mistake
Own Goal
Mistake
2
Fouls
6.9
Rating
Yan Diomande
ARCHITECT
ARCHITECT
4
Key Passes
4
Key Passes
1
Assists
29%
Pass Acc
BENCH
Leopold Zingerle
SPECTATOR
SPECTATOR
0
Saves
0
Saves
0
Conceded
0
Minutes
Benjamin Henrichs
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
15
Total Mins
Started
Entry
El Chadaille Bitshiabu
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Max Finkgräfe
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
3
Total Mins
Started
Entry
Ezechiel Banzuzi
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
15
Total Mins
Started
Entry
Antonio Nusa
PROVOCATEUR
PROVOCATEUR
3
Fouls Won
3
Fouls Won
3
Duels Won
0
Pens Won
Tidiam Gomis
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Conrad Harder
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
16
Total Mins
Started
Entry
Johan Bakayoko
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry

Borussia Dortmund

Goalkeepers
Gregor Kobel
PROVOCATEUR
PROVOCATEUR
1
Fouls Won
1
Fouls Won
1
Duels Won
0
Pens Won
Defenders
Luca Reggiani
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
64
Total Mins
65
Entry
Waldemar Anton
WALL
WALL
0
Dribbled Past
0
Dribbled Past
6
Tackles
57%
Duel Win %
Ramy Bensebaini
WALL
WALL
0
Dribbled Past
0
Dribbled Past
2
Tackles
47%
Duel Win %
Midfielders
Julian Ryerson
ARCHITECT
ARCHITECT
3
Key Passes
3
Key Passes
0
Assists
24%
Pass Acc
Marcel Sabitzer
LATE SHIFT
LATE SHIFT
14
Late Mins
14
Late Mins
76
Total Mins
76
Entry
Jobe Bellingham
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
97
Total Mins
Started
Entry
Felix Nmecha
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
65
Total Mins
64
Entry
Daniel Svensson
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
97
Total Mins
Started
Entry
Forwards
Serhou Guirassy
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
71
Total Mins
72
Entry
Maximilian Beier
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
64
Total Mins
64
Entry
BENCH
Alexander Meyer
SPECTATOR
SPECTATOR
0
Saves
0
Saves
0
Conceded
0
Minutes
Yan Couto
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
33
Total Mins
Started
Entry
Elias Benkara
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Salih Özcan
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Carney Chukwuemeka
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
32
Total Mins
Started
Entry
Julian Brandt
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
33
Total Mins
Started
Entry
Karim Adeyemi
SUPER SUB
SUPER SUB
1
Assist
1
Assist
21
Minutes
6.7
Rating
Samuele Inacio
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Fábio Silva
CLUTCH HERO
CLUTCH HERO
90
Goal Time
90
Goal Time
Goal
Impact
7.2
Rating

Head to Head

Date Home Score Away Competition Venue
04/10/2025 Borussia Dortmund 1 - 1 RB Leipzig Bundesliga Signal Iduna Park
15/03/2025 RB Leipzig 2 - 0 Borussia Dortmund Bundesliga Red Bull Arena
02/11/2024 Borussia Dortmund 2 - 1 RB Leipzig Bundesliga SIGNAL IDUNA PARK
27/04/2024 RB Leipzig 4 - 1 Borussia Dortmund Bundesliga Leipzig Stadium
09/12/2023 Borussia Dortmund 2 - 3 RB Leipzig Bundesliga BVB Stadion Dortmund
05/04/2023 RB Leipzig 2 - 0 Borussia Dortmund DFB Pokal Red Bull Arena
03/03/2023 Borussia Dortmund 2 - 1 RB Leipzig Bundesliga SIGNAL IDUNA PARK
10/09/2022 RB Leipzig 3 - 0 Borussia Dortmund Bundesliga Red Bull Arena
02/04/2022 Borussia Dortmund 1 - 4 RB Leipzig Bundesliga Signal-Iduna-Park
06/11/2021 RB Leipzig 2 - 1 Borussia Dortmund Bundesliga Red Bull Arena
04/10/2025
Bundesliga Signal Iduna Park
15/03/2025
Bundesliga Red Bull Arena
02/11/2024
Bundesliga SIGNAL IDUNA PARK
27/04/2024
Bundesliga Leipzig Stadium
09/12/2023
Bundesliga BVB Stadion Dortmund
05/04/2023
DFB Pokal Red Bull Arena
03/03/2023
Bundesliga SIGNAL IDUNA PARK
10/09/2022
Bundesliga Red Bull Arena
02/04/2022
Bundesliga Signal-Iduna-Park
06/11/2021
Bundesliga Red Bull Arena
RB Leipzig Win
Borussia Dortmund Win
Draw

League Standings

Pos Team P Pts GF GA GD Form
1 Bayern München 23 60 85 21 +64 WBayern München 3 - 2 Eintracht Frankfurt (21-02-2026)WWerder Bremen 0 - 3 Bayern München (14-02-2026)WBayern München 5 - 1 1899 Hoffenheim (08-02-2026)DHamburger SV 2 - 2 Bayern München (31-01-2026)LBayern München 1 - 2 FC Augsburg (24-01-2026)
2 Borussia Dortmund 23 52 49 22 +27 DRB Leipzig 2 - 2 Borussia Dortmund (21-02-2026)WBorussia Dortmund 4 - 0 FSV Mainz 05 (13-02-2026)WVfL Wolfsburg 1 - 2 Borussia Dortmund (07-02-2026)WBorussia Dortmund 3 - 2 1. FC Heidenheim (01-02-2026)WUnion Berlin 0 - 3 Borussia Dortmund (24-01-2026)
3 1899 Hoffenheim 23 46 49 30 +19 D1. FC Köln 2 - 2 1899 Hoffenheim (21-02-2026)W1899 Hoffenheim 3 - 0 SC Freiburg (14-02-2026)LBayern München 5 - 1 1899 Hoffenheim (08-02-2026)W1899 Hoffenheim 3 - 1 Union Berlin (31-01-2026)WWerder Bremen 0 - 2 1899 Hoffenheim (27-01-2026)
4 VfB Stuttgart 22 42 41 29 +12 WVfB Stuttgart 3 - 1 1. FC Köln (14-02-2026)LFC St. Pauli 2 - 1 VfB Stuttgart (07-02-2026)WVfB Stuttgart 1 - 0 SC Freiburg (01-02-2026)WBorussia Mönchengladbach 0 - 3 VfB Stuttgart (25-01-2026)DVfB Stuttgart 1 - 1 Union Berlin (18-01-2026)
5 RB Leipzig 23 41 44 32 +12 DRB Leipzig 2 - 2 Borussia Dortmund (21-02-2026)DRB Leipzig 2 - 2 VfL Wolfsburg (15-02-2026)W1. FC Köln 1 - 2 RB Leipzig (08-02-2026)LRB Leipzig 1 - 2 FSV Mainz 05 (31-01-2026)DFC St. Pauli 1 - 1 RB Leipzig (27-01-2026)
6 Bayer Leverkusen 22 39 43 28 +15 LUnion Berlin 1 - 0 Bayer Leverkusen (21-02-2026)WBayer Leverkusen 4 - 0 FC St. Pauli (14-02-2026)DBorussia Mönchengladbach 1 - 1 Bayer Leverkusen (07-02-2026)WEintracht Frankfurt 1 - 3 Bayer Leverkusen (31-01-2026)WBayer Leverkusen 1 - 0 Werder Bremen (24-01-2026)
7 SC Freiburg 23 33 34 37 -3 WSC Freiburg 2 - 1 Borussia Mönchengladbach (22-02-2026)L1899 Hoffenheim 3 - 0 SC Freiburg (14-02-2026)WSC Freiburg 1 - 0 Werder Bremen (07-02-2026)LVfB Stuttgart 1 - 0 SC Freiburg (01-02-2026)WSC Freiburg 2 - 1 1. FC Köln (25-01-2026)
8 Eintracht Frankfurt 23 31 46 49 -3 LBayern München 3 - 2 Eintracht Frankfurt (21-02-2026)WEintracht Frankfurt 3 - 0 Borussia Mönchengladbach (14-02-2026)DUnion Berlin 1 - 1 Eintracht Frankfurt (06-02-2026)LEintracht Frankfurt 1 - 3 Bayer Leverkusen (31-01-2026)LEintracht Frankfurt 1 - 3 1899 Hoffenheim (24-01-2026)
9 Union Berlin 23 28 29 37 -8 WUnion Berlin 1 - 0 Bayer Leverkusen (21-02-2026)LHamburger SV 3 - 2 Union Berlin (14-02-2026)DUnion Berlin 1 - 1 Eintracht Frankfurt (06-02-2026)L1899 Hoffenheim 3 - 1 Union Berlin (31-01-2026)LUnion Berlin 0 - 3 Borussia Dortmund (24-01-2026)
10 FC Augsburg 23 28 28 41 -13 WVfL Wolfsburg 2 - 3 FC Augsburg (21-02-2026)WFC Augsburg 1 - 0 1. FC Heidenheim (15-02-2026)LFSV Mainz 05 2 - 0 FC Augsburg (07-02-2026)WFC Augsburg 2 - 1 FC St. Pauli (31-01-2026)WBayern München 1 - 2 FC Augsburg (24-01-2026)
11 Hamburger SV 22 26 25 32 -7 DFSV Mainz 05 1 - 1 Hamburger SV (20-02-2026)WHamburger SV 3 - 2 Union Berlin (14-02-2026)W1. FC Heidenheim 0 - 2 Hamburger SV (07-02-2026)DHamburger SV 2 - 2 Bayern München (31-01-2026)DFC St. Pauli 0 - 0 Hamburger SV (23-01-2026)
12 1. FC Köln 23 24 33 39 -6 D1. FC Köln 2 - 2 1899 Hoffenheim (21-02-2026)LVfB Stuttgart 3 - 1 1. FC Köln (14-02-2026)L1. FC Köln 1 - 2 RB Leipzig (08-02-2026)W1. FC Köln 1 - 0 VfL Wolfsburg (30-01-2026)LSC Freiburg 2 - 1 1. FC Köln (25-01-2026)
13 FSV Mainz 05 23 22 26 38 -12 DFSV Mainz 05 1 - 1 Hamburger SV (20-02-2026)LBorussia Dortmund 4 - 0 FSV Mainz 05 (13-02-2026)WFSV Mainz 05 2 - 0 FC Augsburg (07-02-2026)WRB Leipzig 1 - 2 FSV Mainz 05 (31-01-2026)WFSV Mainz 05 3 - 1 VfL Wolfsburg (24-01-2026)
14 Borussia Mönchengladbach 23 22 26 39 -13 LSC Freiburg 2 - 1 Borussia Mönchengladbach (22-02-2026)LEintracht Frankfurt 3 - 0 Borussia Mönchengladbach (14-02-2026)DBorussia Mönchengladbach 1 - 1 Bayer Leverkusen (07-02-2026)DWerder Bremen 1 - 1 Borussia Mönchengladbach (31-01-2026)LBorussia Mönchengladbach 0 - 3 VfB Stuttgart (25-01-2026)
15 VfL Wolfsburg 23 20 33 49 -16 LVfL Wolfsburg 2 - 3 FC Augsburg (21-02-2026)DRB Leipzig 2 - 2 VfL Wolfsburg (15-02-2026)LVfL Wolfsburg 1 - 2 Borussia Dortmund (07-02-2026)L1. FC Köln 1 - 0 VfL Wolfsburg (30-01-2026)LFSV Mainz 05 3 - 1 VfL Wolfsburg (24-01-2026)
16 FC St. Pauli 23 20 22 40 -18 WFC St. Pauli 2 - 1 Werder Bremen (22-02-2026)LBayer Leverkusen 4 - 0 FC St. Pauli (14-02-2026)WFC St. Pauli 2 - 1 VfB Stuttgart (07-02-2026)LFC Augsburg 2 - 1 FC St. Pauli (31-01-2026)DFC St. Pauli 1 - 1 RB Leipzig (27-01-2026)
17 Werder Bremen 23 19 23 44 -21 LFC St. Pauli 2 - 1 Werder Bremen (22-02-2026)LWerder Bremen 0 - 3 Bayern München (14-02-2026)LSC Freiburg 1 - 0 Werder Bremen (07-02-2026)DWerder Bremen 1 - 1 Borussia Mönchengladbach (31-01-2026)LWerder Bremen 0 - 2 1899 Hoffenheim (27-01-2026)
18 1. FC Heidenheim 22 13 19 48 -29 LFC Augsburg 1 - 0 1. FC Heidenheim (15-02-2026)L1. FC Heidenheim 0 - 2 Hamburger SV (07-02-2026)LBorussia Dortmund 3 - 2 1. FC Heidenheim (01-02-2026)L1. FC Heidenheim 0 - 3 RB Leipzig (24-01-2026)DVfL Wolfsburg 1 - 1 1. FC Heidenheim (17-01-2026)