
TSG Hoffenheim vs Borussia Dortmund, 2024-25 German Bundesliga
· German Bundesliga
FT
2 - 3
2 - 3
Borussia Dortmund win late to boost Champions League chances
![Borussia Dortmund celeb vs Hoffenheim Bundesliga [1296x729]](https://a.espncdn.com/photo/2025/0426/r1484200_1296x729_16-9.jpg)
Borussia Dortmund conceded a stoppage-time equaliser but still managed to score a last-gasp winner for a 3-2 win at Hoffenheim on Saturday.
Match Commentary
- 0': Lineups are announced and players are warming up.
- 0': First Half begins.
- 1': Delay in match because of an injury Pavel Kaderábek (TSG Hoffenheim).
- 2': Delay over. They are ready to continue.
- 3': Adam Hlozek (TSG Hoffenheim) wins a free kick in the attacking half.
- 3': Foul by Emre Can (Borussia Dortmund).
- 3': Offside, TSG Hoffenheim. Bazoumana Touré is caught offside.
- 6': Foul by Leo Østigård (TSG Hoffenheim).
- 6': Serhou Guirassy (Borussia Dortmund) wins a free kick in the attacking half.
- 7': Attempt missed. Serhou Guirassy (Borussia Dortmund) header from the centre of the box misses to the right. Assisted by Daniel Svensson with a cross following a set piece situation.
- 8': Foul by Leo Østigård (TSG Hoffenheim).
- 8': Jamie Gittens (Borussia Dortmund) wins a free kick on the left wing.
- 9': Attempt saved. Julian Brandt (Borussia Dortmund) left footed shot from the centre of the box is saved in the centre of the goal. Assisted by Emre Can.
- 11': Attempt saved. Bazoumana Touré (TSG Hoffenheim) left footed shot from outside the box is saved in the bottom right corner. Assisted by Anton Stach.
- 12': Foul by Arthur Chaves (TSG Hoffenheim).
- 12': Jamie Gittens (Borussia Dortmund) wins a free kick in the defensive half.
- 14': Corner, Borussia Dortmund. Conceded by Andrej Kramaric.
- 17': Andrej Kramaric (TSG Hoffenheim) wins a free kick in the defensive half.
- 17': Foul by Julian Ryerson (Borussia Dortmund).
- 20': Goal! TSG Hoffenheim 0, Borussia Dortmund 1. Serhou Guirassy (Borussia Dortmund) right footed shot from the centre of the box to the bottom left corner. Assisted by Daniel Svensson.Goal awarded following VAR Review.
- 23': VAR Decision: Goal TSG Hoffenheim 0-1 Borussia Dortmund (Daniel Svensson).
- 24': Attempt missed. Jamie Gittens (Borussia Dortmund) right footed shot from more than 35 yards misses to the left. Assisted by Julian Brandt.
- 26': Foul by Adam Hlozek (TSG Hoffenheim).
- 26': Julian Ryerson (Borussia Dortmund) wins a free kick in the defensive half.
- 27': Bazoumana Touré (TSG Hoffenheim) wins a free kick on the right wing.
- 27': Foul by Ramy Bensebaini (Borussia Dortmund).
- 28': Attempt missed. Dennis Geiger (TSG Hoffenheim) right footed shot from a difficult angle and long range on the right is high and wide to the right from a direct free kick.
- 30': Delay in match because of an injury Kevin Akpoguma (TSG Hoffenheim).
- 30': Delay over. They are ready to continue.
- 30': Substitution, TSG Hoffenheim. Stanley Nsoki replaces Kevin Akpoguma because of an injury.
- 32': Penalty Borussia Dortmund. Jamie Gittens draws a foul in the penalty area.
- 32': Penalty conceded by Leo Østigård (TSG Hoffenheim) after a foul in the penalty area.
- 34': Penalty saved. Serhou Guirassy (Borussia Dortmund) right footed shot saved in the bottom right corner.
- 35': Corner, TSG Hoffenheim. Conceded by Daniel Svensson.
- 35': Attempt blocked. Andrej Kramaric (TSG Hoffenheim) right footed shot from the centre of the box is blocked. Assisted by Adam Hlozek.
- 35': Foul by Dennis Geiger (TSG Hoffenheim).
- 35': Jamie Gittens (Borussia Dortmund) wins a free kick in the defensive half.
- 38': Attempt blocked. Anton Stach (TSG Hoffenheim) right footed shot from outside the box is blocked. Assisted by Marius Bülter.
- 39': Attempt missed. Adam Hlozek (TSG Hoffenheim) right footed shot from the centre of the box misses to the left. Assisted by Stanley Nsoki.
- 40': Offside, TSG Hoffenheim. Pavel Kaderábek is caught offside.
- 41': Adam Hlozek (TSG Hoffenheim) wins a free kick in the defensive half.
- 41': Foul by Waldemar Anton (Borussia Dortmund).
- 41': Waldemar Anton (Borussia Dortmund) is shown the yellow card for a bad foul.
- 44': Attempt saved. Niklas Süle (Borussia Dortmund) right footed shot from the right side of the box is saved in the centre of the goal. Assisted by Felix Nmecha.
- 44': Attempt saved. Jamie Gittens (Borussia Dortmund) right footed shot from a difficult angle on the left is saved in the bottom left corner. Assisted by Daniel Svensson.
- 44': Corner, Borussia Dortmund. Conceded by Oliver Baumann.
- 45'+1': Fourth official has announced 4 minutes of added time.
- 45'+1': Attempt blocked. Serhou Guirassy (Borussia Dortmund) header from the right side of the six yard box is blocked. Assisted by Julian Ryerson with a cross.
- 45'+1': Attempt missed. Felix Nmecha (Borussia Dortmund) right footed shot from very close range is close, but misses to the right following a corner.
- 45'+3': Attempt blocked. Felix Nmecha (Borussia Dortmund) right footed shot from outside the box is blocked. Assisted by Julian Brandt.
- 45'+4': Dennis Geiger (TSG Hoffenheim) wins a free kick in the defensive half.
- 45'+4': Foul by Daniel Svensson (Borussia Dortmund).
- 45'+5': First Half ends, TSG Hoffenheim 0, Borussia Dortmund 1.
- 45': Second Half begins TSG Hoffenheim 0, Borussia Dortmund 1.
- 47': Adam Hlozek (TSG Hoffenheim) wins a free kick in the defensive half.
- 47': Foul by Emre Can (Borussia Dortmund).
- 48': Attempt blocked. Julian Ryerson (Borussia Dortmund) right footed shot from the right side of the box is blocked. Assisted by Jamie Gittens.
- 48': Corner, Borussia Dortmund. Conceded by Arthur Chaves.
- 50': Delay in match because of an injury Julian Ryerson (Borussia Dortmund).
- 51': Delay over. They are ready to continue.
- 52': Foul by Bazoumana Touré (TSG Hoffenheim).
- 52': Ramy Bensebaini (Borussia Dortmund) wins a free kick in the defensive half.
- 54': Attempt missed. Bazoumana Touré (TSG Hoffenheim) left footed shot from the left side of the box is too high. Assisted by Dennis Geiger.
- 55': Foul by Dennis Geiger (TSG Hoffenheim).
- 55': Waldemar Anton (Borussia Dortmund) wins a free kick in the defensive half.
- 57': Offside, TSG Hoffenheim. Pavel Kaderábek is caught offside.
- 57': Hand ball by Dennis Geiger (TSG Hoffenheim).
- 58': Attempt missed. Bazoumana Touré (TSG Hoffenheim) right footed shot from the right side of the box misses to the right. Assisted by Oliver Baumann.
- 59': Daniel Svensson (Borussia Dortmund) wins a free kick in the defensive half.
- 59': Foul by Pavel Kaderábek (TSG Hoffenheim).
- 60': Dennis Geiger (TSG Hoffenheim) wins a free kick in the defensive half.
- 60': Foul by Jamie Gittens (Borussia Dortmund).
- 61': Goal! TSG Hoffenheim 1, Borussia Dortmund 1. Adam Hlozek (TSG Hoffenheim) left footed shot from the centre of the box to the top right corner. Assisted by Anton Stach with a through ball.
- 63': Foul by Arthur Chaves (TSG Hoffenheim).
- 63': Waldemar Anton (Borussia Dortmund) wins a free kick in the defensive half.
- 64': Arthur Chaves (TSG Hoffenheim) is shown the yellow card for a bad foul.
- 67': Attempt blocked. Julian Ryerson (Borussia Dortmund) right footed shot from the right side of the box is blocked. Assisted by Felix Nmecha.
- 67': Foul by Anton Stach (TSG Hoffenheim).
- 67': Jamie Gittens (Borussia Dortmund) wins a free kick on the left wing.
- 68': Substitution, Borussia Dortmund. Karim Adeyemi replaces Jamie Gittens.
- 68': Substitution, Borussia Dortmund. Salih Özcan replaces Felix Nmecha.
- 69': Foul by Stanley Nsoki (TSG Hoffenheim).
- 69': Serhou Guirassy (Borussia Dortmund) wins a free kick in the defensive half.
- 70': Offside, TSG Hoffenheim. Andrej Kramaric is caught offside.
- 71': Substitution, TSG Hoffenheim. David Jurásek replaces Marius Bülter.
- 71': Substitution, TSG Hoffenheim. Haris Tabakovic replaces Adam Hlozek.
- 71': Foul by Dennis Geiger (TSG Hoffenheim).
- 71': Salih Özcan (Borussia Dortmund) wins a free kick in the defensive half.
- 73': Offside, TSG Hoffenheim. Bazoumana Touré is caught offside.
- 74': Goal! TSG Hoffenheim 1, Borussia Dortmund 2. Julian Brandt (Borussia Dortmund) right footed shot from the right side of the box to the centre of the goal. Assisted by Daniel Svensson.
- 77': Substitution, Borussia Dortmund. Yan Couto replaces Julian Ryerson.
- 77': Substitution, TSG Hoffenheim. Umut Tohumcu replaces Dennis Geiger.
- 78': Corner, TSG Hoffenheim. Conceded by Ramy Bensebaini.
- 79': Offside, TSG Hoffenheim. Haris Tabakovic is caught offside.
- 79': Foul by Salih Özcan (Borussia Dortmund).
- 79': Umut Tohumcu (TSG Hoffenheim) wins a free kick on the right wing.
- 80': Attempt missed. Haris Tabakovic (TSG Hoffenheim) header from the centre of the box misses to the left. Assisted by Umut Tohumcu with a cross following a set piece situation.
- 81': Substitution, Borussia Dortmund. Carney Chukwuemeka replaces Julian Brandt.
- 81': Substitution, Borussia Dortmund. Giovanni Reyna replaces Niklas Süle.
- 82': Corner, Borussia Dortmund. Conceded by Leo Østigård.
- 83': Corner, Borussia Dortmund. Conceded by Arthur Chaves.
- 84': Attempt saved. Karim Adeyemi (Borussia Dortmund) left footed shot from the centre of the box is saved in the centre of the goal. Assisted by Salih Özcan.
- 84': Foul by Umut Tohumcu (TSG Hoffenheim).
- 84': Giovanni Reyna (Borussia Dortmund) wins a free kick in the attacking half.
- 85': Attempt missed. Daniel Svensson (Borussia Dortmund) right footed shot from the centre of the box is close, but misses to the right. Assisted by Carney Chukwuemeka.
- 87': Foul by Salih Özcan (Borussia Dortmund).
- 87': Umut Tohumcu (TSG Hoffenheim) wins a free kick in the defensive half.
- 90': Goal! TSG Hoffenheim 2, Borussia Dortmund 2. Pavel Kaderábek (TSG Hoffenheim) header from the right side of the six yard box to the top left corner. Assisted by David Jurásek with a cross.
- 90'+1': Fourth official has announced 5 minutes of added time.
- 90'+2': Attempt missed. Pavel Kaderábek (TSG Hoffenheim) header from the centre of the box is too high. Assisted by Stanley Nsoki with a cross.
- 90'+5': Goal! TSG Hoffenheim 2, Borussia Dortmund 3. Waldemar Anton (Borussia Dortmund) right footed shot from the right side of the box to the centre of the goal. Assisted by Serhou Guirassy.
- 90'+6': Delay in match because of an injury Oliver Baumann (TSG Hoffenheim).
- 90'+7': Stanley Nsoki (TSG Hoffenheim) is shown the yellow card.
- 90'+8': Pavel Kaderábek (TSG Hoffenheim) is shown the yellow card.
- 90'+11': Delay over. They are ready to continue.
- 90'+12': Foul by Andrej Kramaric (TSG Hoffenheim).
- 90'+12': Waldemar Anton (Borussia Dortmund) wins a free kick in the defensive half.
- 90'+12': Anton Stach (TSG Hoffenheim) is shown the yellow card.
- 90'+13': Foul by Arthur Chaves (TSG Hoffenheim).
- 90'+13': Karim Adeyemi (Borussia Dortmund) wins a free kick on the left wing.
- 90'+13': Umut Tohumcu (TSG Hoffenheim) is shown the yellow card.
- 90'+14': Second Half ends, TSG Hoffenheim 2, Borussia Dortmund 3.
- 0': Match ends, TSG Hoffenheim 2, Borussia Dortmund 3.
Statistics
![]() |
TSG![]() |
|
---|---|---|
9 | Fouls | 17 |
1 | Yellow Cards | 5 |
0 | Red Cards | 0 |
0 | Offsides | 6 |
5 | Corner Kicks | 2 |
1 | Saves | 6 |
62.4 | Possession | 37.6 |
16 | SHOTS | 11 |
8 | ON GOAL | 3 |
0.5 | On Target % | 0.3 |
0 | Penalty Goals | 0 |
1 | Penalty Kicks Taken | 0 |
541 | Accurate Passes | 288 |
622 | Passes | 369 |
0.9 | Pass Completion % | 0.8 |
2 | Accurate Crosses | 6 |
14 | Crosses | 15 |
0.1 | Cross % | 0.4 |
45 | Long Balls | 46 |
19 | Accurate Long Balls | 17 |
0.4 | Long Balls % | 0.4 |
4 | Blocked Shots | 2 |
9 | Effective Tackles | 13 |
15 | Tackles | 27 |
0.6 | Tackle % | 0.5 |
8 | Interceptions | 13 |
18 | Effective Clearances | 30 |
18 | Clearances | 30 |
Game Information
Competition: German Bundesliga
Venue: PreZero Arena
Location: Sinsheim, Germany
Attendance: 30,150
Venue: PreZero Arena
Location: Sinsheim, Germany
Attendance: 30,150
Bundesliga Standings
# | TEAM | GP | GD | PTS |
---|---|---|---|---|
1 | Bayern Munich | 31 | +61 | 75 |
2 | Bayer Leverkusen | 31 | +31 | 67 |
3 | Eintracht Frankfurt | 31 | +20 | 55 |
4 | SC Freiburg | 31 | -3 | 51 |
Line-Ups
TSG Hoffenheim (3-4-2-1)
No. | Name |
---|---|
1 | Oliver Baumann (GK) |
4 | Leo Østigard |
25 | Kevin Akpoguma |
35 | Arthur Chaves ![]() |
16 | Anton Stach |
8 | Dennis Geiger |
21 | Marius Bulter |
3 | Pavel Kaderábek |
23 | Adam Hlozek |
27 | Andrej Kramaric |
29 | Bazoumana Touré |
Borussia Dortmund (3-4-2-1)
No. | Name |
---|---|
1 | Gregor Kobel (GK) |
3 | Waldemar Anton ![]() |
5 | Ramy Bensebaini |
25 | Niklas Süle |
8 | Felix Nmecha |
23 | Emre Can |
24 | Daniel Svensson |
26 | Julian Ryerson |
9 | Serhou Guirassy |
43 | Jamie Gittens |
10 | Julian Brandt |
Bundesliga News

Matus Bero scores goal for VfL Bochum
Matus Bero scores goal for VfL Bochum

Men's soccer rivalries to know: El Clásico, Manchester Derby
From El Clásico to Manchester Derby, here are some of the most notable men's rivalries in soccer around the world.

Kompany: Kane's suspension won't stop him travelling to Leipzig
Vincent Kompnay speaks about Harry Kane missing Bayern Munich's potential title winning game vs. RB Leipzig.

Transfer rumors, news: Arsenal, Bayern eye Chelsea's Nkunku
Arsenal and Bayern Munich are reportedly ready to compete to sign Chelsea's Christopher Nkunku in the summer. Transfer Talk has the latest.