Werder Bremen vs Mainz

31 January 2025 · Bundesliga · 2024/25 · Referee Martin Petersen

Full time 1 – 0

Half-time: 1–0

  • Leonardo Bittencourt 14’

Match summary

Werder Bremen beat Mainz 1-0. Werder Bremen led 1-0 at half-time.

Leonardo Bittencourt put Werder Bremen ahead from a corner in the 14th minute, set up by Issa Kabore.

The chances backed that up: Werder Bremen created 2.59 expected goals (xG) from 12 shots to Mainz's 1.02 from 13. Marvin Ducksch had a penalty saved for Werder Bremen. Werder Bremen had 3 players sent off.

Match stats

Werder Bremen Mainz
12 Shots 13
5 Shots on Target 2
3 Corners 8
8 Yellow Cards 4
3 Red Cards 0
2.59 xG 1.02
1.83 Non-penalty xG 1.02
2 Deep Completions 13

Key events

Werder Bremen Mainz
Kick-off
Leonardo Bittencourt
Assist: Issa Kabore
1-0 (Werder Bremen)
14’
Half-time1-0
Full-time1-0

Bookings

Card times are not on file for this game, so they are listed without a minute.

Werder Bremen
  • Marco Friedl
  • Niklas Stark
  • Michael Zetterer
  • Mitchell Weiser
  • Romano Schmid
  • Senne Lynen
Mainz
  • Robin Zentner
  • Anthony Caci
  • Jae-Sung Lee

How the chances added up

Running total of expected goals (xG) for each side through the match. xG rates each chance by how often similar shots are scored. A goal is marked where it was scored.

0.0 0.5 1.0 1.5 2.0 2.5 3.0 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 2.59 1.02 14’ Leonardo Bittencourt (Werder Bremen), 1-0 14’ 0.0 0.5 1.0 1.5 2.0 2.5 3.0 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 2.59 1.02 14’ Leonardo Bittencourt (Werder Bremen), 1-0 Bittencourt 14’
Werder Bremen 2.59 xGMainz 1.02 xG Goal

Tap a goal for the scorer and score.

Shot map

Every shot and where it was taken from.

 Mainz attacking Werder Bremen attacking 
12’ Marvin Ducksch (Werder Bremen), penalty, 0.76 xG, saved 76’ Justin Njinmah (Werder Bremen), open play, 0.56 xG, off target 14’ Leonardo Bittencourt (Werder Bremen), from a corner, 0.53 xG, goal 69’ Paul Nebel (Mainz), open play, 0.35 xG, saved 14’ Issa Kabore (Werder Bremen), from a corner, 0.14 xG, blocked 90+7’ Armindo Sieb (Mainz), from a corner, 0.11 xG, off target 90+7’ Maxim Leitsch (Mainz), from a corner, 0.10 xG, off target 1’ Romano Schmid (Werder Bremen), open play, 0.10 xG, off target 47’ Romano Schmid (Werder Bremen), open play, 0.10 xG, off target 51’ Paul Nebel (Mainz), open play, 0.09 xG, blocked 83’ Senne Lynen (Werder Bremen), open play, 0.09 xG, off target 75’ Romano Schmid (Werder Bremen), open play, 0.08 xG, saved 83’ Derrick Köhn (Werder Bremen), open play, 0.09 xG, off target 28’ Nelson Weiper (Mainz), open play, 0.07 xG, off target 82’ Marco Friedl (Werder Bremen), from a corner, 0.06 xG, saved 30’ Marvin Ducksch (Werder Bremen), open play, 0.05 xG, saved 46’ Jae-Sung Lee (Mainz), from a corner, 0.05 xG, off target 53’ Kaishu Sano (Mainz), open play, 0.05 xG, off target 49’ Jae-Sung Lee (Mainz), from a corner, 0.05 xG, blocked 27’ Nadiem Amiri (Mainz), direct free kick, 0.04 xG, off target 1’ Romano Schmid (Werder Bremen), open play, 0.03 xG, hit the woodwork 87’ Arnaud Nordin (Mainz), open play, 0.03 xG, blocked 35’ Nadiem Amiri (Mainz), open play, 0.02 xG, blocked 50’ Nelson Weiper (Mainz), open play, 0.02 xG, saved 61’ Danny da Costa (Mainz), open play, 0.02 xG, blocked 12’ Marvin Ducksch (Werder Bremen), penalty, 0.76 xG, saved 76’ Justin Njinmah (Werder Bremen), open play, 0.56 xG, off target 14’ Leonardo Bittencourt (Werder Bremen), from a corner, 0.53 xG, goal 69’ Paul Nebel (Mainz), open play, 0.35 xG, saved 14’ Issa Kabore (Werder Bremen), from a corner, 0.14 xG, blocked 90+7’ Armindo Sieb (Mainz), from a corner, 0.11 xG, off target 1’ Romano Schmid (Werder Bremen), open play, 0.10 xG, off target 90+7’ Maxim Leitsch (Mainz), from a corner, 0.10 xG, off target 47’ Romano Schmid (Werder Bremen), open play, 0.10 xG, off target 51’ Paul Nebel (Mainz), open play, 0.09 xG, blocked 83’ Senne Lynen (Werder Bremen), open play, 0.09 xG, off target 75’ Romano Schmid (Werder Bremen), open play, 0.08 xG, saved 83’ Derrick Köhn (Werder Bremen), open play, 0.09 xG, off target 28’ Nelson Weiper (Mainz), open play, 0.07 xG, off target 82’ Marco Friedl (Werder Bremen), from a corner, 0.06 xG, saved 30’ Marvin Ducksch (Werder Bremen), open play, 0.05 xG, saved 46’ Jae-Sung Lee (Mainz), from a corner, 0.05 xG, off target 53’ Kaishu Sano (Mainz), open play, 0.05 xG, off target 49’ Jae-Sung Lee (Mainz), from a corner, 0.05 xG, blocked 27’ Nadiem Amiri (Mainz), direct free kick, 0.04 xG, off target 87’ Arnaud Nordin (Mainz), open play, 0.03 xG, blocked 1’ Romano Schmid (Werder Bremen), open play, 0.03 xG, hit the woodwork 35’ Nadiem Amiri (Mainz), open play, 0.02 xG, blocked 50’ Nelson Weiper (Mainz), open play, 0.02 xG, saved 61’ Danny da Costa (Mainz), open play, 0.02 xG, blocked
Size shows xG Goal On target Off target or blocked

Hover or tap a shot for the player, minute and xG.

Player stats

PlayerPosMinGAShxGxAKPCards
Michael Zetterer GK900 0.000.000
Marco Friedl DEF901 0.060.000
Anthony Jung DEF900 0.000.000
Niklas Stark DEF900 0.000.000
Mitchell Weiser MID900 0.000.031
Issa Kabore MID7511 0.140.531
Romano Schmid MID904 0.310.203
Senne Lynen MID901 0.090.000
Leonardo Bittencourt MID3511 0.530.000
Justin Njinmah FWD901 0.560.081
Marvin Ducksch FWD752 0.810.000
Skelly Alvero Sub550 0.000.000
Derrick Köhn Sub151 0.090.000
Marco Grüll Sub150 0.000.561
Amos Pieper Sub10 0.000.000

Starters first, then substitutes. xA is expected assists.

Before kick-off

Werder Bremen win 41% Avg odds 2.36
Draw 28% Avg odds 3.39
Mainz win 31% Avg odds 3.05

Chances implied by the average closing odds, with the bookmaker margin removed.

Form going into the game

Last five league games before this one, oldest first. Select one to open it.

Previous and next meeting

Shots, expected goals and player data from Understat. Results and odds from football-data.co.uk. Referee data before 2025/26 from the Transfermarkt datasets project.