Bundesliga · 2025RheinEnergieStadion

1. FC Köln 2–2 TSG Hoffenheim · Bundesliga

2–2Historical match

A completed match from a finished season. This page is the record of what happened.

Match at a glance

1. FC Köln and TSG Hoffenheim drew 2–2.

Shots
918
Shots on target
46
Expected goals
1.071.47
Possession
36%64%

Full time

What the match recorded

1. FC Köln and 1899 Hoffenheim drew 2–2. Recorded in this match (1. FC Köln – 1899 Hoffenheim): shots 9–18, shots on target 4–6, expected goals 1.07–1.47, possession 36%–64%. This is what was recorded. It is not a claim that the result was foreseeable.

Pre-match record

What the data showed before kick-off. Kept for reference; it did not know the result.

1. FC Köln's recent record differs from the season

weak

1. FC Köln's last-five goals scored average is below their season average.

1.2 goals/match ▲Goals forLast 5 · Season1.43 goals/match
Evidence and caveat

Comparison: An unweighted last-five average is compared with the unweighted season average.

Window: last_5 versus season

MetricLast 5SeasonBaseline
Goals for1.2 goals/match1.43 goals/match1.43 goals/match

Caveat: Five matches are sensitive to opponent mix and isolated match states.

This match

Match statistics

  • Shots9 shots18 shots1. FC Köln 9 shots, TSG Hoffenheim 18 shots
  • Shots on target4 shots6 shots1. FC Köln 4 shots, TSG Hoffenheim 6 shots
  • Expected goals1.07 xG1.47 xG1. FC Köln 1.07 xG, TSG Hoffenheim 1.47 xG
  • Possession36%64%1. FC Köln 36%, TSG Hoffenheim 64%
  • Corners3 corners10 corners1. FC Köln 3 corners, TSG Hoffenheim 10 corners
  • Fouls6 fouls12 fouls1. FC Köln 6 fouls, TSG Hoffenheim 12 fouls
  • Yellow cards1 card3 cards1. FC Köln 1 card, TSG Hoffenheim 3 cards

Every shot

Shot map

Every recorded shot, placed where it was taken and sized by its expected-goals value. Arrows show each team’s attacking direction.

Grischa Prömel · 1899 Hoffenheim · 66′ · 0.01 xG · off target or blockedFisnik Asllani · 1899 Hoffenheim · 2′ · 0.02 xG · off target or blockedGrischa Prömel · 1899 Hoffenheim · 35′ · 0.02 xG · off target or blockedSaid El Mala · 1. FC Köln · 53′ · 0.02 xG · off target or blockedBazoumana Touré · 1899 Hoffenheim · 79′ · 0.02 xG · off target or blockedRagnar Ache · 1. FC Köln · 17′ · 0.03 xG · off target or blockedAlexander Prass · 1899 Hoffenheim · 79′ · 0.03 xG · off target or blockedSaid El Mala · 1. FC Köln · 84′ · 0.03 xG · off target or blockedGrischa Prömel · 1899 Hoffenheim · 25′ · 0.04 xG · off target or blockedAndrej Kramarić · 1899 Hoffenheim · 29′ · 0.04 xG · on targetOzan Kabak · 1899 Hoffenheim · 30′ · 0.04 xG · off target or blockedGrischa Prömel · 1899 Hoffenheim · 35′ · 0.04 xG · on targetRagnar Ache · 1. FC Köln · 23′ · 0.05 xG · off target or blockedAndrej Kramarić · 1899 Hoffenheim · 52′ · 0.05 xG · off target or blockedBazoumana Touré · 1899 Hoffenheim · 60′ · 0.07 xG · on targetFisnik Asllani · 1899 Hoffenheim · 70′ · 0.08 xG · off target or blockedCenk Özkaçar · 1. FC Köln · 18′ · 0.10 xG · on targetJakub Kamiński · 1. FC Köln · 21′ · 0.10 xG · on targetRagnar Ache · 1. FC Köln · 15′ · 0.11 xG · goalBazoumana Touré · 1899 Hoffenheim · 62′ · 0.11 xG · off target or blockedOzan Kabak · 1899 Hoffenheim · 90′ · 0.12 xG · on targetGrischa Prömel · 1899 Hoffenheim · 9′ · 0.15 xG · off target or blockedBazoumana Touré · 1899 Hoffenheim · 57′ · 0.17 xG · off target or blockedEric Martel · 1. FC Köln · 23′ · 0.19 xG · off target or blockedOzan Kabak · 1899 Hoffenheim · 45′ · 0.21 xG · goalAndrej Kramarić · 1899 Hoffenheim · 60′ · 0.21 xG · goalSaid El Mala · 1. FC Köln · 63′ · 0.42 xG · goal
  • off target
  • on target
  • goal
  • penalty
  • size = xG

1. FC Köln: 9 shots, 4 on target, 1.05 xG. 1899 Hoffenheim: 18 shots, 6 on target, 1.43 xG.

How the match built

Expected-goals timeline

Expected goals accumulated minute by minute. Circles mark the goals that were actually scored.

00.751.50′HT90′Ragnar Ache · 1. FC Köln · 15′Said El Mala · 1. FC Köln · 63′Ozan Kabak · 1899 Hoffenheim · 45′Andrej Kramarić · 1899 Hoffenheim · 60′

The step line is cumulative expected goals; circles mark goals. Final: 1. FC Köln 1.05 xG · 1899 Hoffenheim 1.43 xG.

History

Head-to-head

Recent meetings between these teams.

Last 5 meetings

21. FC Köln
2Draws
1TSG Hoffenheim
TSG Hoffenheim — 1. FC Köln · Bundesliga0–1
TSG Hoffenheim — 1. FC Köln · Bundesliga1–1
1. FC Köln — TSG Hoffenheim · Bundesliga1–3
TSG Hoffenheim — 1. FC Köln · Bundesliga1–3
1. FC Köln — TSG Hoffenheim · Bundesliga1–1

Head-to-Head & Recent Meetings

Metric comparison

Team comparison

Season averages, with the sample size beside each metric.

Where the edge is

Season: 1. FC Köln favored in 0 of 11 directional metrics · TSG Hoffenheim in 8 · 3 too close

led this metric higher value (descriptive) too close

Window

Season

1. FC Köln23 matchesTSG Hoffenheim23 matches
1.43 goals/matchGoals scored23/23▲ 2.13 goals/match
1.7 goals/matchGoals allowed23/23▲ 1.3 goals/match
1.41 xG/matchExpected goals23/23▲ 1.58 xG/match
13 shots/matchShots23/2313.4 shots/match
4.39 shots/matchShots on target23/23▲ 5 shots/match
46.7%Possession23/23● 53.7%
4.13 corners/matchCorners23/23● 5.22 corners/match
1.65 cards/matchCards23/232.17 cards/match
8.3 fouls/matchFouls23/2314 fouls/match

Evidence quality

How much supports this analysis

Grade A · Strong evidenceStrong evidence — limited
Season samples23 / 23home / away teams
Recent samples5 / 5last-five windows
FreshnessLess than one dayfrom nearest prior match
  • The fixture is outside the configured active season.
  • Recent samples and important metric coverage meet the strong evidence threshold.

Known unknowns

  • Lineups, injuries, suspensions and tactical changes are not available in the retained dataset.
  • The fixture season differs from the competition's configured active season.
Analysis cutoff: Sat, 21 Feb 2026, 18:30 UTC · analysis-v4

Team rankings in Bundesliga

Make a graphic from this match

Creator Studio builds a branded post from this match's recorded data, with its evidence grade and source cutoff carried into the export.

Turn this match into a graphicReady-made from PitchMath data · No sign-up required