Bundesliga Regular Season - 23

1. FC Köln 2 - 2 FT 1899 Hoffenheim

RheinEnergieStadion

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

Futmetrix Verdict
75
FT
Sat, Feb 21
Deutsch
1. FC Köln
2-2
1899 Hoffenheim
⚡ Intensity 54
⚖️ Balance 84
🏆 Stakes 44
🎲 Upset 51
Köln hold high-flying Hoffenheim in thriller.

Points Shared in Cologne Chaos

Highly Entertaining Futmetrix Score: 75/100. A spirited Köln performance derailed Hoffenheim’s momentum in a clash defined by tactical swings and VAR drama at the RheinEnergieSTADION.

Early Intensity at the Cathedral

The Intensity was high from the opening whistle as 1. FC Köln looked to unsettle the high-flying visitors. The home crowd didn't have to wait long for a breakthrough. In the 15th minute, Said El Mala turned provider, delivering a pinpoint ball for R. Ache to slot home. Despite 1899 Hoffenheim controlling possession with 64%, they struggled to break down a resilient Köln block. The hosts maintained a disciplined defensive Balance, absorbing pressure and looking lethal on the counter. The match quickly turned into a tactical chess match, with Köln’s directness clashing against Hoffenheim’s patient build-up play. The early goal set a frantic pace that rarely let up throughout the first half.

The VAR Rollercoaster

Hoffenheim eventually found their footing just before the interval. A. Hajdari swung in a corner that found the rising Ozan Kabak, whose header leveled the scores in the 45th minute. The second half amplified the Stakes significantly. Drama erupted in the 59th minute when W. Burger appeared to have completed the comeback, only for his goal to be chalked off following a VAR review. However, the reprieve for Köln was short-lived. Barely a minute later, A. Kramaric capitalised on a lapse in concentration to put the visitors ahead. It was a whirlwind sequence that threatened to leave the hosts empty-handed after such a promising start.

Mala Rescues a Point

Köln refused to crumble under the pressure of the title contenders. In the 63rd minute, Jakub Kamiński produced a moment of creative brilliance, teeing up Said El Mala for a clinical finish to make it 2-2. A barrage of 27 shots turned the pitch into a shooting gallery in the final stages. Hoffenheim forced 10 corners in a desperate attempt to reclaim their lead, but Köln’s backline held firm. The Upset Factor remained high until the final whistle, with both sides missing late chances to snatch all three points. For Hoffenheim, this feels like two points dropped in the title race, while Köln earns a massive morale boost in their mid-table journey.

Key Questions

Who was the standout performer in the match?

Said El Mala was the star for Köln, recording both a goal and an assist in the 2-2 draw.

Why was W. Burger's goal disallowed?

W. Burger's 59th-minute goal was ruled out following a video review by the VAR for a prior infringement.

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
36%
64%
1. FC Köln 36%
1899 Hoffenheim 64%
Shots
9
18
1. FC Köln 9
1899 Hoffenheim 18
Shots on Target
4
6
1. FC Köln 4
1899 Hoffenheim 6
Expected Goals (xG)
1.07
1.47
1. FC Köln 1.07
1899 Hoffenheim 1.47
Passes
258
475
1. FC Köln 258
1899 Hoffenheim 475
Pass Accuracy
70%
81%
1. FC Köln 70%
1899 Hoffenheim 81%
Corners
3
10
1. FC Köln 3
1899 Hoffenheim 10
Fouls
6
11
1. FC Köln 6
1899 Hoffenheim 11
Yellow Cards
1
2
1. FC Köln 1
1899 Hoffenheim 2
Red Cards
0
0
1. FC Köln 0
1899 Hoffenheim 0

Match Events

15' R. Ache (S. El Mala)
A. Hajdari 🟨 42'
O. Kabak (A. Hajdari) 45'
HT
W. Burger 59'
A. Kramaric 60'
63' S. El Mala (J. Kaminski)
69' 🔄 S. Sebulonsen J. Simpson-Pusey
W. Burger A. Prass 🔄 73'
V. Coufal 🟨 75'
78' 🟨 C. Ozkacar
85' 🔄 R. Ache L. Waldschmidt
85' 🔄 S. El Mala M. Bulter
A. Kramaric M. Moerstedt 🔄 89'
90'+1 🔄 T. Krauss I. Johannesson
90'+1 🔄 J. Kaminski F. Schenten
F. Asllani Y. Eduardo 🔄 90'+2
B. Toure V. Gendrey 🔄 90'+2
M. Moerstedt 🟨 90'+5
FT

Player Cards

Our take on every player in this match

1. FC Köln

Goalkeepers
Marvin Schwäbe
PROVOCATEUR
PROVOCATEUR
1
Fouls Won
1
Fouls Won
1
Duels Won
0
Pens Won
Defenders
Joel Schmied
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
94
Total Mins
Started
Entry
Rav van den Berg
SWEEPER
SWEEPER
7
Cleanups
7
Cleanups
6
Interceptions
1
Blocks
Cenk Özkaçar
STORMTROOPER
STORMTROOPER
1
Shots
1
Shots
0
Goals
1
On Target
Midfielders
Sebastian Sebulonsen
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
69
Total Mins
69
Entry
Eric Martel
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
94
Total Mins
Started
Entry
Tom Krauß
ENFORCER
ENFORCER
8
Tackles
8
Tackles
10
Duels Won
71%
Win %
Kristoffer Lund
PROVOCATEUR
PROVOCATEUR
5
Fouls Won
5
Fouls Won
6
Duels Won
0
Pens Won
Forwards
Jakub Kamiński
ARCHITECT
ARCHITECT
4
Key Passes
4
Key Passes
1
Assists
19%
Pass Acc
Said El Mala
SNIPER
SNIPER
100%
Conversion
100%
Conversion
1
Goals
1
Shots
Ragnar Ache
SNIPER
SNIPER
50%
Conversion
50%
Conversion
1
Goals
2
Shots
BENCH
Ron-Robert Zieler
SPECTATOR
SPECTATOR
0
Saves
0
Saves
0
Conceded
0
Minutes
Matthias Köbbing
SPECTATOR
SPECTATOR
0
Saves
0
Saves
0
Conceded
0
Minutes
Jahmai Simpson-Pusey
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
25
Total Mins
Started
Entry
Ísak Bergmann Jóhannesson
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
3
Total Mins
Started
Entry
Felipe Chávez
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Denis Huseinbašić
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Fynn Schenten
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
3
Total Mins
Started
Entry
Marius Bülter
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
9
Total Mins
Started
Entry
Luca Waldschmidt
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
9
Total Mins
Started
Entry

1899 Hoffenheim

Goalkeepers
Oliver Baumann
PROVOCATEUR
PROVOCATEUR
1
Fouls Won
1
Fouls Won
1
Duels Won
0
Pens Won
Defenders
Robin Hranáč
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
94
Total Mins
Started
Entry
Ozan Kabak
ARCHITECT
ARCHITECT
2
Key Passes
2
Key Passes
0
Assists
55%
Pass Acc
Albian Hajdari
ARCHITECT
ARCHITECT
2
Key Passes
2
Key Passes
1
Assists
44%
Pass Acc
Midfielders
Vladimír Coufal
ARCHITECT
ARCHITECT
4
Key Passes
4
Key Passes
0
Assists
23%
Pass Acc
Grischa Prömel
STORMTROOPER
STORMTROOPER
5
Shots
5
Shots
0
Goals
1
On Target
Leon Avdullahu
MAGNET
MAGNET
80
Activity
80
Activity
75
Passes
5
Duels
Wouter Burger
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
73
Total Mins
73
Entry
Bazoumana Touré
STORMTROOPER
STORMTROOPER
3
Shots
3
Shots
0
Goals
1
On Target
Forwards
Fisnik Asllani
NPC
NPC
92
Minutes
92
Minutes
14%
Pass Acc
6.5
Rating
Andrej Kramarić
SNIPER
SNIPER
50%
Conversion
50%
Conversion
1
Goals
2
Shots
BENCH
Luca Philipp
SPECTATOR
SPECTATOR
0
Saves
0
Saves
0
Conceded
0
Minutes
Valentin Lässig
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Valentin Gendrey
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
2
Total Mins
Started
Entry
Kevin Akpoguma
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Alexander Prass
STORMTROOPER
STORMTROOPER
1
Shots
1
Shots
0
Goals
0
On Target
Luka Duric
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Muhammed Damar
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Yannick Eduardo
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
2
Total Mins
Started
Entry
Max Moerstedt
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
5
Total Mins
Started
Entry

Head to Head

Date Home Score Away Competition Venue
03/10/2025 1899 Hoffenheim 0 - 1 1. FC Köln Bundesliga PreZero Arena
11/02/2024 1899 Hoffenheim 1 - 1 1. FC Köln Bundesliga PreZero Arena
16/09/2023 1. FC Köln 1 - 3 1899 Hoffenheim Bundesliga Cologne Stadium
22/04/2023 1899 Hoffenheim 1 - 3 1. FC Köln Bundesliga PreZero Arena
30/10/2022 1. FC Köln 1 - 1 1899 Hoffenheim Bundesliga RheinEnergieStadion
06/03/2022 1. FC Köln 0 - 1 1899 Hoffenheim Bundesliga RheinEnergieStadion
15/10/2021 1899 Hoffenheim 5 - 0 1. FC Köln Bundesliga PreZero Arena
24/01/2021 1899 Hoffenheim 3 - 0 1. FC Köln Bundesliga PreZero Arena
19/09/2020 1. FC Köln 2 - 3 1899 Hoffenheim Bundesliga RheinEnergieStadion
27/05/2020 1899 Hoffenheim 3 - 1 1. FC Köln Bundesliga PreZero Arena
03/10/2025
Bundesliga PreZero Arena
11/02/2024
Bundesliga PreZero Arena
16/09/2023
Bundesliga Cologne Stadium
22/04/2023
Bundesliga PreZero Arena
30/10/2022
Bundesliga RheinEnergieStadion
06/03/2022
Bundesliga RheinEnergieStadion
15/10/2021
Bundesliga PreZero Arena
24/01/2021
Bundesliga PreZero Arena
19/09/2020
Bundesliga RheinEnergieStadion
27/05/2020
Bundesliga PreZero Arena
1. FC Köln Win
1899 Hoffenheim 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)