xgEdge

Wednesday, 02/09/2026 at 20:30

Full time
Match report · Swiss Super League

Grasshopper Club Zürich 2:0 FC St. Gallen 1879

Grasshopper Club Zürich Home 2.23 xG · 22 shots
FC St. Gallen 1879 Away 1.80 xG · 18 shots
20 The scoreline reflected the chances

FC St. Gallen 1879 were the model's likeliest winner before kick-off at 46%. Grasshopper Club Zürich won 2–0. The biggest difference was Grasshopper Club Zürich's attack: 2.23 xG against 1.25 projected (+0.98).

Goals

  1. 36' Amir Abrashi Grasshopper Club Zürich · 0.13 xG chance 1–0
  2. 69' Young-Jun Lee Grasshopper Club Zürich · 0.16 xG chance 2–0

The model against the result

priced before kick-off
Grasshopper Club Zürich
26% What happened
Draw
28%
FC St. Gallen 1879
46%

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

Projected vs produced

Expected goals
Grasshopper Club Zürich The model projected 1.25 Produced 2.23 Difference +0.98
FC St. Gallen 1879 The model projected 1.68 Produced 1.80 Difference +0.12

Grasshopper Club Zürich produced 0.98 xG more than projected

Projected before kick-off Produced on the night

The shots behind it

Grasshopper Club Zürich FC St. Gallen 1879
Shots
22
18
On target
8
3
Inside the box
17
13
xG per shot
0.10
0.07
Open play xG
1.72
1.08
Set-piece xG
0.53
0.26
Penalties
—
—
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: 2.23 for Grasshopper Club Zürich and 1.38 for FC St. Gallen 1879.

Shot map

Both teams shown attacking the same goal for comparison.

Grasshopper Club Zürich · Samuel Krasniqi · 57' · No goal · 16 m · 0.49 xG FC St. Gallen 1879 · Christian Witzig · 43' · No goal · 13 m · 0.29 xG Grasshopper Club Zürich · Young-Jun Lee · 87' · No goal · 8 m · 0.25 xG Grasshopper Club Zürich · Luke Plange · 73' · No goal · 13 m · 0.22 xG FC St. Gallen 1879 · Leon Frokaj · 12' · No goal · 14 m · 0.18 xG Grasshopper Club Zürich · Young-Jun Lee · 69' · Goal · 1 m · 0.16 xG Grasshopper Club Zürich · Samuel Krasniqi · 18' · No goal · 9 m · 0.14 xG FC St. Gallen 1879 · Aliou Balde · 37' · No goal · 14 m · 0.14 xG Grasshopper Club Zürich · Samuel Krasniqi · 6' · No goal · 12 m · 0.13 xG Grasshopper Club Zürich · Amir Abrashi · 36' · Goal · 7 m · 0.13 xG FC St. Gallen 1879 · Aliou Balde · 37' · No goal · 10 m · 0.12 xG Grasshopper Club Zürich · Manex Gibelalde Mújika · 9' · No goal · 9 m · 0.11 xG FC St. Gallen 1879 · Jozo Stanić · 56' · No goal · 9 m · 0.11 xG Grasshopper Club Zürich · Samuele Bengondo · 26' · No goal · 8 m · 0.10 xG Grasshopper Club Zürich · Nikolas Muci · 63' · No goal · 12 m · 0.10 xG FC St. Gallen 1879 · Colin Noah Kleine-Bekel · 39' · No goal · 8 m · 0.09 xG FC St. Gallen 1879 · Lukas Görtler · 12' · No goal · 4 m · 0.07 xG FC St. Gallen 1879 · Christian Witzig · 21' · No goal · 13 m · 0.07 xG Grasshopper Club Zürich · Luke Plange · 89' · No goal · 15 m · 0.06 xG Grasshopper Club Zürich · Samuel Krasniqi · 2' · No goal · 6 m · 0.05 xG FC St. Gallen 1879 · Aliou Balde · 21' · No goal · 19 m · 0.05 xG Grasshopper Club Zürich · Yannick Bettkober · 36' · No goal · 9 m · 0.05 xG FC St. Gallen 1879 · Christian Witzig · 42' · No goal · 25 m · 0.05 xG Grasshopper Club Zürich · Young-Jun Lee · 73' · No goal · 9 m · 0.05 xG FC St. Gallen 1879 · Aliou Balde · 77' · No goal · 19 m · 0.05 xG Grasshopper Club Zürich · Samuel Krasniqi · 54' · No goal · 10 m · 0.04 xG Grasshopper Club Zürich · Hassane Imourane · 80' · No goal · 23 m · 0.04 xG Grasshopper Club Zürich · Amir Abrashi · 35' · No goal · 20 m · 0.03 xG FC St. Gallen 1879 · Lukas Daschner · 42' · No goal · 27 m · 0.03 xG Grasshopper Club Zürich · Samuel Krasniqi · 80' · No goal · 5 m · 0.03 xG FC St. Gallen 1879 · Mihailo Stevanović · 90' · No goal · 19 m · 0.03 xG FC St. Gallen 1879 · Aliou Balde · 17' · No goal · 2 m · 0.02 xG Grasshopper Club Zürich · Amir Abrashi · 22' · No goal · 11 m · 0.02 xG FC St. Gallen 1879 · Enoch Owusu · 49' · No goal · 19 m · 0.02 xG Grasshopper Club Zürich · Samuel Krasniqi · 59' · No goal · 31 m · 0.02 xG Grasshopper Club Zürich · Nikolas Muci · 64' · No goal · 21 m · 0.02 xG Grasshopper Club Zürich · Manex Gibelalde Mújika · 47' · No goal · 48 m · 0.01 xG FC St. Gallen 1879 · Lukas Daschner · 56' · No goal · 11 m · 0.01 xG FC St. Gallen 1879 · Christian Witzig · 90' · No goal · 24 m · 0.01 xG FC St. Gallen 1879 · Lukas Görtler · 52' · No goal · 5 m · 0.00 xG

All shots

40 shots · 3.59 xG

Hover, focus or tap a shot to read it.

  • Grasshopper Club Zürich
  • FC St. Gallen 1879
  • Filled = goal
  • Dot area = xG (the smallest chances drawn at a minimum size)

Recent form

Last 6 · xG per match
Grasshopper Club Zürich

1.46 xG created 1.98 xGA

  • W 1.71 created, 1.52 conceded against FC Winterthur
  • W 0.52 created, 2.98 conceded against FC Lausanne-Sport
  • D 0.74 created, 0.80 conceded against FC Lausanne-Sport
  • L 1.83 created, 2.13 conceded against FC Lugano
  • L 0.97 created, 2.15 conceded against Servette FC
  • L 2.99 created, 2.31 conceded against FC Vaduz
FC St. Gallen 1879

2.26 xG created 1.46 xGA

  • W 1.30 created, 1.45 conceded against Basel
  • D 2.33 created, 1.43 conceded against FC Thun
  • W 1.63 created, 1.11 conceded against FC Zürich
  • W 2.17 created, 2.01 conceded against FC Vaduz
  • D 3.24 created, 1.51 conceded against FC Luzern
  • L 2.88 created, 1.26 conceded against FC Thun

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

Head to head

Grasshopper Club Zürich: 0 won · 1 drawn · 2 lost

Pre-match model & market record

6 opportunities flagged4 won2 lost

  • Won
  • Won
  • Won
  • Lost
  • Won
  • Lost
View pre-match record
The outcomes the model flagged on Grasshopper Club Zürich against FC St. Gallen 1879 before kick-off, in the order they ranked, with the price, the edge and what became of each.
Selection Price Edge Result
FC St. Gallen 1879 at most 1 goal 2.50 +20.3% Won
Under 2.5 goals 2.70 +13.9% Won
FC St. Gallen 1879 not to score 7.00 +12.8% Won
Draw 4.00 +12.6% Lost
Grasshopper Club Zürich to win 4.20 +7.6% Won
Under 1.5 goals 6.00 +1.8% Lost

Pre-match model vs market

Outcome Model Market Difference Fair odds
Grasshopper Club Zürich 25.6% 22.3% +3.3 pp 3.90
Draw 28.2% 23.4% +4.7 pp 3.55
FC St. Gallen 1879 46.2% 54.3% −8.0 pp 2.16

Other markets

Outcome Model Market Difference Fair odds
Grasshopper Club Zürich to score 74.2% 72.3% +1.8 pp 1.35
Grasshopper Club Zürich not to score 25.8% 27.7% −1.8 pp 3.87
FC St. Gallen 1879 to score 83.9% 86.4% −2.5 pp 1.19
FC St. Gallen 1879 not to score 16.1% 13.6% +2.5 pp 6.21
Both teams to score 63.8% 62.5% +1.3 pp 1.57
Both teams not to score 36.2% 37.5% −1.3 pp 2.76
Grasshopper Club Zürich 2+ goals 36.1% 37.5% −1.4 pp 2.77
Grasshopper Club Zürich at most 1 goal 63.9% 62.5% +1.4 pp 1.56
FC St. Gallen 1879 2+ goals 51.9% 62.5% −10.6 pp 1.93
FC St. Gallen 1879 at most 1 goal 48.1% 37.5% +10.6 pp 2.08
Over 1.5 goals 83.0% 84.2% −1.2 pp 1.20
Under 1.5 goals 17.0% 15.8% +1.2 pp 5.89
Over 2.5 goals 57.8% 65.2% −7.3 pp 1.73
Under 2.5 goals 42.2% 34.8% +7.3 pp 2.37

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)
Grasshopper Club Zürich sample
20 matches
FC St. Gallen 1879 sample
20 matches
Computed
9 hours before kick-off
Prices taken
9 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.