Grasshoppers vs Zurich

5 September 2026 · Swiss Super League · 2026/27 · Referee Johannes von Mandach

Full time 2 – 2

Half-time: 0–0

  • Samuel Krasniqi 58’
  • Bujar Pllana 90+6’
  • Kevin Spadanuda 54’
  • Umeh Emmanuel 80’

Match summary

Grasshoppers and Zurich shared the points in a 2-2 draw. It was goalless at half-time.

Kevin Spadanuda put Zurich ahead in the 54th minute, Samuel Krasniqi equalised in the 58th minute, Umeh Emmanuel put Zurich back in front in the 80th minute, and Bujar Pllana equalised with a header in stoppage time.

Grasshoppers had the better of the chances, with 4.17 expected goals (xG) from 20 shots to Zurich's 0.77 from 11. Giotto Morandi hit the woodwork from the penalty spot for Grasshoppers.

Match stats

43% Possession 57%
20 Shots 11
7 Shots on target 6
8 Corners 4
84 Attacks 89
47 Dangerous attacks 43
249 Passes 348
65.9% Pass accuracy 72.7%
21 Tackles 24
15 Fouls 14
2 Yellow cards 6
1 Offsides 1

Key events

Grasshoppers Zurich
Kick-off
Samuel KrasniqiShot on target
1’
Corner
2’
Corner
4’
5’
Corner
11’
Damienus ReversonShot on target
20’
24’
26’
Corner
31’
Corner
32’
Corner
37’
39’
Kevin SpadanudaShot on target
Nikolas MuciShot on target
43’
Corner
43’
Samuele BengondoShot on target
44’
Corner
44’
Second half underway
Half-time0-0
51’
Damienus ReversonShot on target
51’
Corner
52’
54’
Kevin SpadanudaRight foot shot0-1 (Zurich)
Samuel KrasniqiRight foot shot1-1 (Grasshoppers)
58’
Corner
63’
64’
65’
Giotto MorandiMissed penaltypost
65’
67’
Lindrit KamberiShot on target
67’
Corner
68’
Corner
Luke PlangeShot on target
75’
80’
Umeh EmmanuelRight foot shot1-2 (Zurich)
88’
Young-Jun LeeShot on target
90+2’
Bujar PllanaHeader2-2 (Grasshoppers)
90+6’
90+6’
Full-time2-2

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 1 2 3 4 5 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 4.17 0.77 54’ Kevin Spadanuda (Zurich), 0-1 54’ 58’ Samuel Krasniqi (Grasshoppers), 1-1 58’ 80’ Umeh Emmanuel (Zurich), 1-2 80’ 90+6’ Bujar Pllana (Grasshoppers), 2-2 90+6’ 0 1 2 3 4 5 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 4.17 0.77 54’ Kevin Spadanuda (Zurich), 0-1 Spadanuda 54’ 58’ Samuel Krasniqi (Grasshoppers), 1-1 Krasniqi 58’ 80’ Umeh Emmanuel (Zurich), 1-2 Emmanuel 80’ 90+6’ Bujar Pllana (Grasshoppers), 2-2 Pllana 90+6’
Grasshoppers 4.17 xGZurich 0.77 xG Goal

Tap a goal for the scorer and score.

Shot map

Every shot and where it was taken from.

 Zurich attacking Grasshoppers attacking 
65’ Giotto Morandi (Grasshoppers), penalty, 0.79 xG, hit the woodwork 6’ Nikolas Muci (Grasshoppers), open play, 0.66 xG, off target 58’ Samuel Krasniqi (Grasshoppers), open play, 0.60 xG, goal 54’ Kevin Spadanuda (Zurich), open play, 0.39 xG, goal 90+6’ Bujar Pllana (Grasshoppers), set piece, 0.32 xG, goal 4’ Yannick Bettkober (Grasshoppers), from a corner, 0.26 xG, off target 3’ Manex Gibelalde Mújika (Grasshoppers), from a corner, 0.24 xG, off target 8’ Samuel Krasniqi (Grasshoppers), open play, 0.22 xG, off target 44’ Samuele Bengondo (Grasshoppers), set piece, 0.17 xG, saved 31’ Samuel Krasniqi (Grasshoppers), direct free kick, 0.16 xG, blocked 40’ Samuel Krasniqi (Grasshoppers), set piece, 0.11 xG, off target 90+2’ Young-Jun Lee (Grasshoppers), open play, 0.11 xG, saved 18’ Samuele Bengondo (Grasshoppers), set piece, 0.10 xG, off target 90+2’ Allan Arigoni (Grasshoppers), open play, 0.09 xG, blocked 67’ Lindrit Kamberi (Zurich), from a corner, 0.07 xG, saved 75’ Luke Plange (Grasshoppers), open play, 0.08 xG, saved 21’ Samuele Bengondo (Grasshoppers), set piece, 0.07 xG, blocked 11’ Damienus Reverson (Zurich), open play, 0.06 xG, saved 4’ Samuele Bengondo (Grasshoppers), open play, 0.06 xG, blocked 20’ Miguel Reichmuth (Zurich), set piece, 0.05 xG, hit the woodwork 43’ Nikolas Muci (Grasshoppers), open play, 0.05 xG, saved 80’ Umeh Emmanuel (Zurich), set piece, 0.05 xG, goal 39’ Kevin Spadanuda (Zurich), open play, 0.05 xG, saved 32’ Samuele Bengondo (Grasshoppers), from a corner, 0.04 xG, blocked 9’ Umeh Emmanuel (Zurich), open play, 0.03 xG, blocked 1’ Samuel Krasniqi (Grasshoppers), open play, 0.03 xG, saved 12’ Samuel Krasniqi (Grasshoppers), open play, 0.02 xG, off target 79’ Nevio Di Giusto (Zurich), open play, 0.02 xG, blocked 52’ Kevin Spadanuda (Zurich), open play, 0.02 xG, off target 73’ Doron Lichtenstein (Zurich), open play, 0.01 xG, off target 51’ Damienus Reverson (Zurich), open play, 0.01 xG, saved 65’ Giotto Morandi (Grasshoppers), penalty, 0.79 xG, hit the woodwork 6’ Nikolas Muci (Grasshoppers), open play, 0.66 xG, off target 58’ Samuel Krasniqi (Grasshoppers), open play, 0.60 xG, goal 54’ Kevin Spadanuda (Zurich), open play, 0.39 xG, goal 90+6’ Bujar Pllana (Grasshoppers), set piece, 0.32 xG, goal 4’ Yannick Bettkober (Grasshoppers), from a corner, 0.26 xG, off target 3’ Manex Gibelalde Mújika (Grasshoppers), from a corner, 0.24 xG, off target 8’ Samuel Krasniqi (Grasshoppers), open play, 0.22 xG, off target 44’ Samuele Bengondo (Grasshoppers), set piece, 0.17 xG, saved 31’ Samuel Krasniqi (Grasshoppers), direct free kick, 0.16 xG, blocked 90+2’ Young-Jun Lee (Grasshoppers), open play, 0.11 xG, saved 40’ Samuel Krasniqi (Grasshoppers), set piece, 0.11 xG, off target 18’ Samuele Bengondo (Grasshoppers), set piece, 0.10 xG, off target 90+2’ Allan Arigoni (Grasshoppers), open play, 0.09 xG, blocked 75’ Luke Plange (Grasshoppers), open play, 0.08 xG, saved 21’ Samuele Bengondo (Grasshoppers), set piece, 0.07 xG, blocked 67’ Lindrit Kamberi (Zurich), from a corner, 0.07 xG, saved 11’ Damienus Reverson (Zurich), open play, 0.06 xG, saved 4’ Samuele Bengondo (Grasshoppers), open play, 0.06 xG, blocked 20’ Miguel Reichmuth (Zurich), set piece, 0.05 xG, hit the woodwork 80’ Umeh Emmanuel (Zurich), set piece, 0.05 xG, goal 39’ Kevin Spadanuda (Zurich), open play, 0.05 xG, saved 43’ Nikolas Muci (Grasshoppers), open play, 0.05 xG, saved 32’ Samuele Bengondo (Grasshoppers), from a corner, 0.04 xG, blocked 9’ Umeh Emmanuel (Zurich), open play, 0.03 xG, blocked 1’ Samuel Krasniqi (Grasshoppers), open play, 0.03 xG, saved 12’ Samuel Krasniqi (Grasshoppers), open play, 0.02 xG, off target 52’ Kevin Spadanuda (Zurich), open play, 0.02 xG, off target 79’ Nevio Di Giusto (Zurich), open play, 0.02 xG, blocked 73’ Doron Lichtenstein (Zurich), open play, 0.01 xG, off target 51’ Damienus Reverson (Zurich), open play, 0.01 xG, saved
Size shows xG Goal On target Off target or blocked

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

Lineups

Grasshoppers 4-3-3 Starting XI
Hübel
Stroscio
Rissi 78’
Bettkober
Pllana
Mújika 79’
Abrashi
Clemente 56’
Krasniqi
Bengondo 56’
Muci 56’
Zurich 4-1-4-1 Starting XI
Huber
Hack 46’
Schödler
Lichtenstein
Kamberi
Walker
Spadanuda 69’
Emmanuel 83’
Reichmuth
Krasniqi
Reverson 83’

Player stats

Goalkeeper1 player
90′ 4 2 15 – – – – –
Defenders5 players
90′ 3 2 – 8 2 22 2 – – –
90′ 5 2 1 13 6 20 1 – – –
90′ 2 2 – 6 4 12 – 1 – –
Nico Rissi Taken off
78′ 1 2 – 1 – 17 – – – –
Allan Arigoni Came on as a substitute
12′ – – 1 – – 3 – – – –
Midfielders6 players
Óscar Clemente Taken off
56′ – – 25 5 – 2 – 5 2 –
79′ – – 25 1 – 2 1 8 2 2 –
90′ – – 27 – – 1 1 3 1 1 –
90′ 1 1 21 3 – 1 1 6 – 2 –
Giotto Morandi Came on as a substitute
34′ – – 12 – – 1 – 3 – 1 –
Hassane Imourane Came on as a substitute
11′ – – 5 – – – – 1 – – –
Forwards4 players
Samuele Bengondo Taken off
56′ – – 5 1 0.45 – – 7 3 7
Nikolas Muci Taken off
56′ – – 2 1 0.70 – 1 6 1 16 –
Young-Jun Lee Came on as a substitute
34′ – – 1 1 0.11 – – 5 – 12 –
Luke Plange Came on as a substitute
34′ – – 1 1 0.08 – – 2 – 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.

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.