Grasshoppers vs Zurich

21 February 2026 · Swiss Super League · 2025/26 · Referee Luca Piccolo

Full time 1 – 2

Half-time: 0–1

  • L. Plange 81’
  • D. Reverson 31’
  • P. P. Keny 51’

Match summary

Zurich won 2-1 away at Grasshoppers. Zurich led 1-0 at half-time.

D. Reverson put Zurich ahead with a header in the 31st minute, P. P. Keny made it 0-2 in the 51st minute, and L. Plange pulled one back to make it 1-2 in the 81st minute.

There was little between the sides on chances: Grasshoppers created 1.02 expected goals (xG) from 16 shots, Zurich 1.01 from 10.

Match stats

56% Possession 44%
16 Shots 10
5 Shots on target 4
10 Corners 4
359 Passes 301
63.5% Pass accuracy 57.5%
18 Tackles 20
13 Fouls 13
2 Yellow cards 3
1 Offsides 1

Key events

Grasshoppers Zurich
4’
P. P. KenyShot on target
M. E. B. NgomShot on target
20’
L. MikulićShot on target
21’
J. A. JensenShot on target
27’
31’
D. ReversonHeader0-1 (Zurich)
38’
42’
V. BerishaShot on target
46’
A. DiabyShot on target
47’
51’
P. P. KenyRight foot shot0-2 (Zurich)
55’
57’
64’
S. DiarrassoubaM. Ullmann
66’
73’
74’
I. CavaleiroD. Reverson
L. PlangeRight foot shot1-2 (Grasshoppers)
81’
A. AbrashiS. Köhler
83’
90’

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 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 1.02 1.01 31’ D. Reverson (Zurich), 0-1 31’ 51’ P. P. Keny (Zurich), 0-2 51’ 81’ L. Plange (Grasshoppers), 1-2 81’ 0.0 0.5 1.0 1.5 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 1.02 1.01 31’ D. Reverson (Zurich), 0-1 Reverson 31’ 51’ P. P. Keny (Zurich), 0-2 Keny 51’ 81’ L. Plange (Grasshoppers), 1-2 Plange 81’
Grasshoppers 1.02 xGZurich 1.01 xG Goal

Tap a goal for the scorer and score.

Shot map

Every shot and where it was taken from.

 Zurich attacking Grasshoppers attacking 
31’ D. Reverson (Zurich), open play, 0.53 xG, goal 81’ L. Plange (Grasshoppers), open play, 0.32 xG, goal 57’ D. Vujević (Zurich), from a corner, 0.15 xG, off target 29’ M. Frey (Grasshoppers), open play, 0.13 xG, off target 68’ Y. Lee (Grasshoppers), from a corner, 0.10 xG, off target 27’ J. A. Jensen (Grasshoppers), open play, 0.09 xG, saved 88’ Y. Lee (Grasshoppers), open play, 0.09 xG, blocked 51’ P. P. Keny (Zurich), open play, 0.07 xG, goal 75’ S. Diarrassouba (Grasshoppers), open play, 0.06 xG, off target 42’ V. Berisha (Zurich), open play, 0.06 xG, saved 77’ P. P. Keny (Zurich), direct free kick, 0.05 xG, blocked 71’ J. A. Jensen (Grasshoppers), direct free kick, 0.04 xG, off target 35’ C. Kablan (Zurich), open play, 0.04 xG, off target 49’ S. Köhler (Grasshoppers), from a corner, 0.03 xG, off target 53’ P. P. Keny (Zurich), set piece, 0.03 xG, off target 78’ I. Cavaleiro (Zurich), from a corner, 0.03 xG, off target 79’ S. Marques (Grasshoppers), open play, 0.03 xG, off target 21’ L. Mikulić (Grasshoppers), open play, 0.03 xG, saved 47’ A. Diaby (Grasshoppers), set piece, 0.03 xG, saved 4’ P. P. Keny (Zurich), set piece, 0.02 xG, saved 56’ N. Palacio (Zurich), open play, 0.02 xG, blocked 90+2’ L. Plange (Grasshoppers), open play, 0.02 xG, off target 9’ A. Diaby (Grasshoppers), from a corner, 0.02 xG, off target 20’ M. E. B. Ngom (Grasshoppers), set piece, 0.02 xG, saved 60’ S. Köhler (Grasshoppers), open play, 0.01 xG, blocked 73’ S. Diarrassouba (Grasshoppers), from a corner, 0.01 xG, off target 31’ D. Reverson (Zurich), open play, 0.53 xG, goal 81’ L. Plange (Grasshoppers), open play, 0.32 xG, goal 57’ D. Vujević (Zurich), from a corner, 0.15 xG, off target 29’ M. Frey (Grasshoppers), open play, 0.13 xG, off target 68’ Y. Lee (Grasshoppers), from a corner, 0.10 xG, off target 27’ J. A. Jensen (Grasshoppers), open play, 0.09 xG, saved 88’ Y. Lee (Grasshoppers), open play, 0.09 xG, blocked 51’ P. P. Keny (Zurich), open play, 0.07 xG, goal 75’ S. Diarrassouba (Grasshoppers), open play, 0.06 xG, off target 42’ V. Berisha (Zurich), open play, 0.06 xG, saved 77’ P. P. Keny (Zurich), direct free kick, 0.05 xG, blocked 71’ J. A. Jensen (Grasshoppers), direct free kick, 0.04 xG, off target 35’ C. Kablan (Zurich), open play, 0.04 xG, off target 49’ S. Köhler (Grasshoppers), from a corner, 0.03 xG, off target 53’ P. P. Keny (Zurich), set piece, 0.03 xG, off target 78’ I. Cavaleiro (Zurich), from a corner, 0.03 xG, off target 21’ L. Mikulić (Grasshoppers), open play, 0.03 xG, saved 79’ S. Marques (Grasshoppers), open play, 0.03 xG, off target 47’ A. Diaby (Grasshoppers), set piece, 0.03 xG, saved 4’ P. P. Keny (Zurich), set piece, 0.02 xG, saved 56’ N. Palacio (Zurich), open play, 0.02 xG, blocked 90+2’ L. Plange (Grasshoppers), open play, 0.02 xG, off target 9’ A. Diaby (Grasshoppers), from a corner, 0.02 xG, off target 20’ M. E. B. Ngom (Grasshoppers), set piece, 0.02 xG, saved 60’ S. Köhler (Grasshoppers), open play, 0.01 xG, blocked 73’ S. Diarrassouba (Grasshoppers), from a corner, 0.01 xG, off target
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
Ngom
Diaby
Mikulić
Krasniqi 55’
Köhler 83’
Meyer
Ullmann 66’
Tsimba 55’
Frey 46’
Jensen
Zurich 3-4-1-2 Starting XI
Huber
Palacio
Vujević
Hack
Kamberi
Berisha 66’
Krasniqi
Kablan
Tsawa 74’
Keny
Reverson

Player stats

Goalkeeper1 player
90′ 2 2 33 – – – – –
Defenders3 players
90′ 3 2 – 10 6 47 1 – – –
90′ – 3 – 8 6 35 – – – –
90′ 3 3 – 6 2 35 2 – –
Midfielders7 players
55′ – – 22 1 – 1 1 4 1 1 –
S. Köhler
83′ – – 35 1 – 2 – 5 4 3 –
90′ – – 34 – – 4 4 4 1 – –
66′ – – 16 – – 1 – 2 2 1 –
S. Marques Came on as a substitute
35′ – – 17 – – – 1 2 – 1 –
S. Diarrassouba Came on as a substitute
24′ – – 13 – – – – 1 – 1 –
A. Abrashi Came on as a substitute
13′ – – 11 – – 2 – 2 – –
Forwards5 players
55′ – – – – – – 2 – – 8 –
M. Frey
45′ – – 1 – 0.13 – – 1 1 6 –
90′ – – 2 0.13 – – –
Y. Lee Came on as a substitute
45′ – – 2 – 0.19 – 1 2 – 16 –
L. Plange Came on as a substitute
35′ 1 – 2 1 0.34 – – 1 – 10 –
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. A blank cell means that figure is not available for that player.

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.