Bundesliga · 2025Stadion An der Alten Försterei

1. FC Union Berlin 2–4 TSG Hoffenheim · Bundesliga

2–4Historical match

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

Match at a glance

TSG Hoffenheim won 2–4.

Shots
209
Shots on target
78
Expected goals
2.592.76
Possession
42%58%

Full time

What the match recorded

1899 Hoffenheim beat Union Berlin 4–2. Recorded in this match (Union Berlin – 1899 Hoffenheim): shots 20–9, shots on target 7–8, expected goals 2.59–2.76, possession 42%–58%. 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.

Both teams have elevated fouls records

weak

Each team's season fouls average is above the competition baseline.

13.7 fouls/matchFoulsUnion Berlin · 1899 Hoffenheim14.3 fouls/match
Evidence and caveat

Comparison: Both team averages are compared with the same competition baseline.

Window: season

MetricUnion Berlin1899 HoffenheimBaseline
Fouls13.7 fouls/match14.3 fouls/match10.8 fouls/match

Caveat: A shared historical pattern is descriptive and may not repeat in one fixture.

The teams have contrasting possession records

weak

1899 Hoffenheim have recorded the higher season possession share.

34%PossessionUnion Berlin · 1899 Hoffenheim● 52%
Evidence and caveat

Comparison: The recorded possession gap is 18.0 percentage points.

Window: season

MetricUnion Berlin1899 HoffenheimBaseline
Possession34%52%51.7%

Caveat: Possession share does not show where possession occurred or how chances were created.

This match

Match statistics

  • Shots20 shots9 shots1. FC Union Berlin 20 shots, TSG Hoffenheim 9 shots
  • Shots on target7 shots8 shots1. FC Union Berlin 7 shots, TSG Hoffenheim 8 shots
  • Expected goals2.59 xG2.76 xG1. FC Union Berlin 2.59 xG, TSG Hoffenheim 2.76 xG
  • Possession42%58%1. FC Union Berlin 42%, TSG Hoffenheim 58%
  • Corners9 corners2 corners1. FC Union Berlin 9 corners, TSG Hoffenheim 2 corners
  • Fouls13 fouls12 fouls1. FC Union Berlin 13 fouls, TSG Hoffenheim 12 fouls
  • Yellow cards0 cards1 card1. FC Union Berlin 0 cards, TSG Hoffenheim 1 card

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.

Oliver Burke · Union Berlin · 27′ · 0.01 xG · off target or blockedDerrick Köhn · Union Berlin · 87′ · 0.02 xG · off target or blockedAlex Král · Union Berlin · 90′ · 0.02 xG · on targetFisnik Asllani · 1899 Hoffenheim · 23′ · 0.03 xG · off target or blockedIlyas Ansah · Union Berlin · 5′ · 0.04 xG · off target or blockedTim Skarke · Union Berlin · 90′ · 0.04 xG · off target or blockedJanik Haberer · Union Berlin · 29′ · 0.05 xG · off target or blockedTom Rothe · Union Berlin · 65′ · 0.05 xG · off target or blockedAndrej Ilić · Union Berlin · 71′ · 0.05 xG · off target or blockedAndrej Ilić · Union Berlin · 41′ · 0.08 xG · off target or blockedAlbian Hajdari · 1899 Hoffenheim · 55′ · 0.09 xG · on targetTim Lemperle · 1899 Hoffenheim · 70′ · 0.09 xG · on targetTom Rothe · Union Berlin · 71′ · 0.09 xG · goalDanilho Doekhi · Union Berlin · 27′ · 0.10 xG · off target or blockedBazoumana Touré · 1899 Hoffenheim · 58′ · 0.10 xG · on targetTim Skarke · Union Berlin · 90′ · 0.12 xG · on targetDanilho Doekhi · Union Berlin · 85′ · 0.13 xG · off target or blockedOliver Burke · Union Berlin · 19′ · 0.14 xG · on targetAndrej Ilić · Union Berlin · 45′ · 0.18 xG · off target or blockedOliver Burke · Union Berlin · 12′ · 0.19 xG · off target or blockedFisnik Asllani · 1899 Hoffenheim · 5′ · 0.20 xG · on targetFisnik Asllani · 1899 Hoffenheim · 45′ · 0.20 xG · goalAndrej Ilić · Union Berlin · 90′ · 0.20 xG · on targetDanilho Doekhi · Union Berlin · 71′ · 0.21 xG · off target or blockedFisnik Asllani · 1899 Hoffenheim · 51′ · 0.51 xG · goalAndrej Ilić · Union Berlin · 49′ · 0.63 xG · on targetIlyas Ansah · Union Berlin · 49′ · 0.71 xG · goalAndrej Kramarić · 1899 Hoffenheim · 45′ · 0.82 xG · goalTim Lemperle · 1899 Hoffenheim · 83′ · 0.82 xG · goal
  • off target
  • on target
  • goal
  • penalty
  • size = xG

Union Berlin: 20 shots, 7 on target, 3.06 xG. 1899 Hoffenheim: 9 shots, 8 on target, 2.86 xG.

How the match built

Expected-goals timeline

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

01.753.50′HT90′Ilyas Ansah · Union Berlin · 49′Tom Rothe · Union Berlin · 71′Andrej Kramarić · 1899 Hoffenheim · 45′Fisnik Asllani · 1899 Hoffenheim · 45′Fisnik Asllani · 1899 Hoffenheim · 51′Tim Lemperle · 1899 Hoffenheim · 83′

The step line is cumulative expected goals; circles mark goals. Final: Union Berlin 3.06 xG · 1899 Hoffenheim 2.86 xG.

History

Head-to-head

Recent meetings between these teams.

Last 5 meetings

31. FC Union Berlin
0Draws
2TSG Hoffenheim
TSG Hoffenheim — 1. FC Union Berlin · Bundesliga0–4
1. FC Union Berlin — TSG Hoffenheim · Bundesliga2–1
TSG Hoffenheim — 1. FC Union Berlin · Bundesliga0–1
1. FC Union Berlin — TSG Hoffenheim · Bundesliga0–2
TSG Hoffenheim — 1. FC Union Berlin · Bundesliga4–2

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 Union Berlin favored in 0 of 11 directional metrics · TSG Hoffenheim in 0 · 11 too close

led this metric higher value (descriptive) too close

Window

Season

1. FC Union Berlin3 matchesTSG Hoffenheim3 matches
1.33 goals/matchGoals scored3/3▲ 2.33 goals/match
2.67 goals/matchGoals allowed3/3▲ 2 goals/match
1.36 xG/matchExpected goals3/3▲ 1.53 xG/match
13.3 shots/match ▲Shots3/312 shots/match
4 shots/matchShots on target3/3▲ 6 shots/match
34%Possession3/3● 52%
6.67 corners/match ●Corners3/33.33 corners/match
1.67 cards/matchCards3/32.33 cards/match
13.7 fouls/matchFouls3/314.3 fouls/match

Evidence quality

How much supports this analysis

Grade C · Limited evidenceLimited evidence — limited
Season samples3 / 3home / away teams
Recent samples3 / 3last-five windows
FreshnessLess than one dayfrom nearest prior match
  • At least one team has fewer than the configured season sample.
  • At least one team has an incomplete last-five window.

Known unknowns

  • Lineups, injuries, suspensions and tactical changes are not available in the retained dataset.
  • The completed-match sample is too small for broad style conclusions.
  • The fixture season differs from the competition's configured active season.
Analysis cutoff: Sat, 13 Sept 2025, 17: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