Grasshoppers vs St. Gallen

21 December 2025 · Swiss Super League · 2025/26 · Referee Sandro Schärer

Full time 1 – 2

Half-time: 1–1

  • L. Zvonarek 42’
  • A. Balde 28’
  • H. Vandermersch 48’

Match summary

St. Gallen took a 2-1 win at Grasshoppers. It was 1-1 at half-time.

A. Balde put St. Gallen ahead in the 28th minute, L. Zvonarek equalised in the 42nd minute, and H. Vandermersch won it in the 48th minute.

The chances backed that up: St. Gallen created 2.45 expected goals (xG) from 16 shots to Grasshoppers's 0.76 from 12.

Match stats

62% Possession 38%
12 Shots 16
3 Shots on target 8
4 Corners 4
436 Passes 265
65.6% Pass accuracy 54.0%
17 Tackles 15
20 Fouls 15
2 Yellow cards 1
0 Red cards 0
0 Offsides 4

Key events

Grasshoppers St. Gallen
5’
C. WitzigShot on target
10’
A. VallciShot on target
28’
A. BaldeRight foot shot0-1 (St. Gallen)
31’
A. VogtShot on target
L. PlangeShot on target
36’
L. ZvonarekRight foot shot1-1 (Grasshoppers)
42’
48’
H. VandermerschRight foot shot1-2 (St. Gallen)
48’
A. VogtShot on target
S. DiarrassoubaM. Ullmann
65’
69’
M. EfekeleA. Vogt
69’
H. VandermerschShot on target
74’
74’
82’
87’
87’
S. Decarli
89’
90’
N. MuciShot on target
90’
90’
M. EfekeleShot on target

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 0.76 2.45 28’ A. Balde (St. Gallen), 0-1 28’ 42’ L. Zvonarek (Grasshoppers), 1-1 42’ 48’ H. Vandermersch (St. Gallen), 1-2 48’ 0.0 0.5 1.0 1.5 2.0 2.5 3.0 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 0.76 2.45 28’ A. Balde (St. Gallen), 0-1 Balde 28’ 42’ L. Zvonarek (Grasshoppers), 1-1 Zvonarek 42’ 48’ H. Vandermersch (St. Gallen), 1-2 Vandermersch 48’
Grasshoppers 0.76 xGSt. Gallen 2.45 xG Goal

Tap a goal for the scorer and score.

Shot map

Every shot and where it was taken from.

 St. Gallen attacking Grasshoppers attacking 
48’ H. Vandermersch (St. Gallen), open play, 0.69 xG, goal 31’ A. Vogt (St. Gallen), open play, 0.48 xG, saved 48’ A. Vogt (St. Gallen), open play, 0.35 xG, saved 62’ A. Vogt (St. Gallen), open play, 0.30 xG, off target 31’ C. Witzig (St. Gallen), open play, 0.15 xG, off target 36’ D. Abels (Grasshoppers), from a corner, 0.14 xG, off target 36’ L. Plange (Grasshoppers), from a corner, 0.13 xG, saved 51’ A. Vogt (St. Gallen), open play, 0.13 xG, off target 42’ L. Zvonarek (Grasshoppers), open play, 0.10 xG, goal 28’ A. Balde (St. Gallen), open play, 0.09 xG, goal 90+4’ N. Muci (Grasshoppers), direct free kick, 0.08 xG, blocked 69’ L. Plange (Grasshoppers), open play, 0.07 xG, off target 89’ N. Muci (Grasshoppers), set piece, 0.06 xG, blocked 69’ H. Vandermersch (St. Gallen), open play, 0.04 xG, saved 5’ C. Witzig (St. Gallen), set piece, 0.04 xG, saved 59’ L. Daschner (St. Gallen), open play, 0.04 xG, off target 64’ M. Ullmann (Grasshoppers), open play, 0.03 xG, off target 89’ L. Zvonarek (Grasshoppers), set piece, 0.04 xG, off target 90’ M. Efekele (St. Gallen), open play, 0.04 xG, saved 75’ D. Abels (Grasshoppers), open play, 0.03 xG, off target 90’ N. Muci (Grasshoppers), open play, 0.03 xG, saved 12’ L. Daschner (St. Gallen), open play, 0.03 xG, off target 22’ J. A. Jensen (Grasshoppers), open play, 0.03 xG, hit the woodwork 5’ A. Vogt (St. Gallen), from a corner, 0.02 xG, off target 59’ A. Balde (St. Gallen), open play, 0.02 xG, off target 10’ A. Vallci (St. Gallen), from a corner, 0.02 xG, saved 1’ L. Daschner (St. Gallen), set piece, 0.02 xG, off target 76’ M. Mantini (Grasshoppers), set piece, 0.02 xG, blocked 48’ H. Vandermersch (St. Gallen), open play, 0.69 xG, goal 31’ A. Vogt (St. Gallen), open play, 0.48 xG, saved 48’ A. Vogt (St. Gallen), open play, 0.35 xG, saved 62’ A. Vogt (St. Gallen), open play, 0.30 xG, off target 31’ C. Witzig (St. Gallen), open play, 0.15 xG, off target 36’ D. Abels (Grasshoppers), from a corner, 0.14 xG, off target 36’ L. Plange (Grasshoppers), from a corner, 0.13 xG, saved 51’ A. Vogt (St. Gallen), open play, 0.13 xG, off target 42’ L. Zvonarek (Grasshoppers), open play, 0.10 xG, goal 28’ A. Balde (St. Gallen), open play, 0.09 xG, goal 90+4’ N. Muci (Grasshoppers), direct free kick, 0.08 xG, blocked 69’ L. Plange (Grasshoppers), open play, 0.07 xG, off target 89’ N. Muci (Grasshoppers), set piece, 0.06 xG, blocked 69’ H. Vandermersch (St. Gallen), open play, 0.04 xG, saved 59’ L. Daschner (St. Gallen), open play, 0.04 xG, off target 89’ L. Zvonarek (Grasshoppers), set piece, 0.04 xG, off target 90’ M. Efekele (St. Gallen), open play, 0.04 xG, saved 5’ C. Witzig (St. Gallen), set piece, 0.04 xG, saved 64’ M. Ullmann (Grasshoppers), open play, 0.03 xG, off target 75’ D. Abels (Grasshoppers), open play, 0.03 xG, off target 90’ N. Muci (Grasshoppers), open play, 0.03 xG, saved 12’ L. Daschner (St. Gallen), open play, 0.03 xG, off target 22’ J. A. Jensen (Grasshoppers), open play, 0.03 xG, hit the woodwork 5’ A. Vogt (St. Gallen), from a corner, 0.02 xG, off target 59’ A. Balde (St. Gallen), open play, 0.02 xG, off target 10’ A. Vallci (St. Gallen), from a corner, 0.02 xG, saved 1’ L. Daschner (St. Gallen), set piece, 0.02 xG, off target 76’ M. Mantini (Grasshoppers), set piece, 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.

Lineups

Grasshoppers 3-4-3 Starting XI
Hammel
Abels
Decarli
Stroscio
Krasniqi
Zvonarek
Meyer 74’
Ullmann 65’
Clemente 82’
Plange
Jensen
St. Gallen 3-1-4-2 Starting XI
Zigi
Gaal
Vallci
Okoroji
Daschner 78’
Vandermersch
Görtler
Boukhalfa
Witzig 87’
Vogt 69’
Balde

Player stats

Goalkeeper1 player
90′ 6 2 63 1 – – – –
Defenders3 players
D. Abels
90′ 2 1 – 4 2 37 1 – – –
S. Decarli
90′ 1 – – 6 2 50 4 – – –
90′ 6 2 – 10 1 40 3 – – –
Midfielders6 players
90′ – – 27 – – 1 – 1 1 – –
90′ 1 – 35 – – 1 – 3 1 – –
74′ – – 32 – – 2 2 4 4 1 –
65′ – – 15 – – 1 1 3 – – –
S. Diarrassouba Came on as a substitute
25′ – – 16 1 – 1 – 2 1 – –
M. Mantini Came on as a substitute
16′ – – 8 – – 1 – 2 – – –
Forwards4 players
82′ – – – – – – 1 3 1 31 –
90′ – 1 2 1 0.21 – 2 8 1 44 –
J. A. Jensen
90′ – – 1 – 0.03 – – 3 1 28 –
N. Muci Came on as a substitute
8′ – – 3 1 0.17 – – 2 1 7 –
Came on Taken off Sent off Red is the most in that position for the team

Every player who took the pitch, starters first and then substitutes. A dash means none. xG and xA are expected goals and assists.

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, timeline, lineups, team and player statistics from Bzzoiro Sports Data (sports.bzzoiro.com). Results and odds from football-data.co.uk.