xgEdge

Saturday, 12/09/2026 at 18:30

Full time
Match report · Bundesliga

1. FC Köln 1:1 SV Werder Bremen

1. FC Köln Home 1.65 xG · 15 shots
SV Werder Bremen Away 1.12 xG · 14 shots
11 1. FC Köln had the better chances, but it finished level

1. FC Köln were the model's likeliest winner before kick-off at 53%. It finished 1–1. Both teams produced xG close to their pre-match projections.

Goals

  1. 11' Linton Maina 1. FC Köln · 0.02 xG chance 1–0
  2. 69' Niclas Füllkrug SV Werder Bremen · 0.24 xG chance 1–1

The model against the result

priced before kick-off
1. FC Köln
53%
Draw
26% What happened
SV Werder Bremen
20%

Data coverage Both teams have the full 20-match model window available.

Projected vs produced

Expected goals
1. FC Köln The model projected 1.84 Produced 1.65 Difference -0.19
SV Werder Bremen The model projected 1.13 Produced 1.12 Difference -0.01

Projected before kick-off Produced on the night

The shots behind it

1. FC Köln SV Werder Bremen
Shots
15
14
On target
6
5
Inside the box
9
11
xG per shot
0.11
0.07
Open play xG
0.36
0.50
Set-piece xG
0.45
0.46
Penalties
1
0
Shot-level xG may differ from the published match total

The provider publishes the match total separately from its shot-by-shot values. Those values are rounded to two decimals and, leaving out penalties and own goals, add up to its non-penalty xG: 0.83 for 1. FC Köln and 0.95 for SV Werder Bremen.

Shot map

Both teams shown attacking the same goal for comparison.

1. FC Köln · Thijs Dallinga · 8' · No goal · 12 m · 0.82 xG SV Werder Bremen · Niclas Füllkrug · 69' · Goal · 8 m · 0.24 xG SV Werder Bremen · Eren Dinkçi · 19' · No goal · 8 m · 0.18 xG 1. FC Köln · Marius Bülter · 73' · No goal · 9 m · 0.13 xG 1. FC Köln · Ragnar Ache · 89' · No goal · 5 m · 0.13 xG SV Werder Bremen · Chuki · 53' · No goal · 8 m · 0.10 xG 1. FC Köln · Thijs Dallinga · 57' · No goal · 3 m · 0.10 xG 1. FC Köln · Mikey Moore · 63' · No goal · 19 m · 0.10 xG 1. FC Köln · Ellyes Skhiri · 8' · No goal · 15 m · 0.07 xG SV Werder Bremen · Marco Grüll · 69' · No goal · 14 m · 0.07 xG SV Werder Bremen · Marco Grüll · 87' · No goal · 24 m · 0.07 xG SV Werder Bremen · Niclas Füllkrug · 4' · No goal · 10 m · 0.06 xG SV Werder Bremen · Amos Pieper · 69' · No goal · 8 m · 0.06 xG 1. FC Köln · Ísak Bergmann Jóhannesson · 73' · No goal · 23 m · 0.05 xG 1. FC Köln · Thijs Dallinga · 6' · No goal · 12 m · 0.04 xG 1. FC Köln · Tom Krauß · 13' · No goal · 10 m · 0.04 xG SV Werder Bremen · Marco Friedl · 43' · No goal · 9 m · 0.04 xG SV Werder Bremen · Eren Dinkçi · 58' · No goal · 9 m · 0.04 xG 1. FC Köln · Ragnar Ache · 90' · No goal · 16 m · 0.04 xG 1. FC Köln · Mikey Moore · 14' · No goal · 20 m · 0.03 xG SV Werder Bremen · Chuki · 19' · No goal · 15 m · 0.03 xG 1. FC Köln · Gideon Mensah · 64' · No goal · 19 m · 0.03 xG 1. FC Köln · Linton Maina · 11' · Goal · 13 m · 0.02 xG 1. FC Köln · Mikey Moore · 25' · No goal · 20 m · 0.02 xG SV Werder Bremen · Amos Pieper · 37' · No goal · 28 m · 0.02 xG SV Werder Bremen · Chuki · 45' · No goal · 15 m · 0.02 xG SV Werder Bremen · Olivier Deman · 49' · No goal · 12 m · 0.02 xG SV Werder Bremen · Olivier Deman · 62' · No goal · 21 m · 0.01 xG 1. FC Köln · Marius Bülter · 85' · No goal · 24 m · 0.01 xG

All shots

29 shots · 2.59 xG

Hover, focus or tap a shot to read it.

  • 1. FC Köln
  • SV Werder Bremen
  • Filled = goal
  • Dot area = xG (the smallest chances drawn at a minimum size)

Recent form

Last 6 · xG per match
1. FC Köln

1.96 xG created 2.04 xGA

  • L 3.04 created, 1.33 conceded against Bayer 04 Leverkusen
  • D 1.75 created, 1.15 conceded against 1. FC Union Berlin
  • L 1.17 created, 1.36 conceded against 1. FC Heidenheim
  • L 0.98 created, 3.05 conceded against FC Bayern München
  • W 1.95 created, 1.88 conceded against TSG Hoffenheim
  • L 2.86 created, 3.47 conceded against VfB Stuttgart
SV Werder Bremen

0.88 xG created 2.02 xGA

  • D 0.93 created, 1.82 conceded against VfB Stuttgart
  • L 1.35 created, 2.57 conceded against FC Augsburg
  • L 1.07 created, 1.52 conceded against TSG Hoffenheim
  • L 0.49 created, 2.74 conceded against Borussia Dortmund
  • L 0.48 created, 1.94 conceded against SC Freiburg
  • W 0.95 created, 1.50 conceded against RB Leipzig

xG created xG conceded (xGA) W / D / L: the match result

Head to head

1. FC Köln: 1 won · 1 drawn · 0 lost

Pre-match model & market record

5 opportunities flagged3 won2 lost

  • Won
  • Lost
  • Lost
  • Won
  • Won
View pre-match record
The outcomes the model flagged on 1. FC Köln against SV Werder Bremen before kick-off, in the order they ranked, with the price, the edge and what became of each.
Selection Price Edge Result
SV Werder Bremen at most 1 goal 1.57 +7.8% Won
1. FC Köln to win 2.00 +6.6% Lost
SV Werder Bremen not to score 3.50 +4.0% Lost
Under 2.5 goals 2.50 +3.2% Won
Draw 3.80 +0.5% Won

Pre-match model vs market

Outcome Model Market Difference Fair odds
1. FC Köln 53.3% 47.3% +6.0 pp 1.88
Draw 26.5% 24.9% +1.6 pp 3.78
SV Werder Bremen 20.3% 27.8% −7.6 pp 4.94

Other markets

Outcome Model Market Difference Fair odds
1. FC Köln to score 86.4% 82.8% +3.7 pp 1.16
1. FC Köln not to score 13.6% 17.2% −3.7 pp 7.38
SV Werder Bremen to score 70.3% 73.1% −2.8 pp 1.42
SV Werder Bremen not to score 29.7% 26.9% +2.8 pp 3.37
Both teams to score 62.3% 62.5% −0.2 pp 1.61
Both teams not to score 37.7% 37.5% +0.2 pp 2.65
1. FC Köln 2+ goals 57.0% 53.7% +3.3 pp 1.76
1. FC Köln at most 1 goal 43.0% 46.3% −3.3 pp 2.32
SV Werder Bremen 2+ goals 31.4% 41.1% −9.8 pp 3.19
SV Werder Bremen at most 1 goal 68.6% 58.9% +9.8 pp 1.46
Over 1.5 goals 83.4% 81.1% +2.4 pp 1.20
Under 1.5 goals 16.6% 18.9% −2.4 pp 6.04
Over 2.5 goals 58.7% 62.0% −3.3 pp 1.70
Under 2.5 goals 41.3% 38.0% +3.3 pp 2.42

Prices and probabilities are the ones stored before kick-off; nothing here is recalculated. Edge is the model's probability times the price, minus one, so a flagged outcome that lost is the ordinary case rather than a contradiction.

Model details

Show
Fit window
the last 20 matches, recency weighted (a match 107 days old counts half)
1. FC Köln sample
20 matches
SV Werder Bremen sample
20 matches
Computed
3 hours before kick-off
Prices taken
3 hours before kick-off

Limitations

The model reads expected goals and nothing else. It does not know the lineups, who is injured or suspended, what either side has to play for, the weather, or how congested the schedule around this match is.