Ekstraklasa 2025/2026
Full coverage from 2026/2027: shot-by-shot xG and match-by-match player figures. 2025/2026 has season totals only.
- Matches
- 306 / 306
- Season complete
- Goals
- 837
- 2.74 per match
League leaders
-
Finished first
Lech Poznań
LEC
60 pts
34 played 4 points clear
-
Best attack
Lech Poznań
LEC
1.89 xG per match
64.28 xG in 34 matches
-
Best defence
Legia Warszawa
LEG
1.03 xGA per match
35.13 xGA in 34 matches
-
Strongest underlying
Lech Poznań
LEC
+0.70 xGD per match
63.16 xPts · 1st on xPts
What the Ekstraklasa numbers say
Lech Poznań finished first on 60 points. Their +0.70 xG difference per match was also the best in the league. Legia Warszawa conceded the least, allowing 1.03 xGA per match. Jagiellonia Białystok took 56 points from 43.76 xPts, the widest gap above expected in the league.
Table
| # | Team | P | Pts | xG | xGA | xGD | xPts |
|---|---|---|---|---|---|---|---|
| 1 | Lech Poznań | 34 | 60 | 64.28 | 40.54 | +23.74 | 63.16 |
| 2 | Jagiellonia Białystok | 34 | 56 | 50.41 | 55.67 | −5.26 | 43.76 |
| 3 | Górnik Zabrze | 34 | 56 | 50.17 | 41.92 | +8.25 | 50.54 |
| 4 | Raków Częstochowa | 34 | 55 | 54.91 | 43.68 | +11.23 | 54.76 |
| 5 | GKS Katowice | 34 | 50 | 44.95 | 47.70 | −2.75 | 43.24 |
Where the table and the chances disagree
Actual vs xPts position
Higher in the table than on xPts
- Jagiellonia Białystok JAG 2nd · 13th on xPts 11 above xPts rank
- GKS Katowice GKS 5th · 14th on xPts 9 above xPts rank
- Zagłębie Lubin ZAG 7th · 15th on xPts 8 above xPts rank
Lower in the table than on xPts
- Cracovia CRA 15th · 5th on xPts 10 below xPts rank
- KS Lechia Gdańsk KSL 12th · 4th on xPts 8 below xPts rank
- Piast Gliwice PIA 16th · 9th on xPts 7 below xPts rank
Points and goals against the chances
-
Most points above xPts
Actual points minus expected points based on match xG.
Jagiellonia Białystok
JAG
+12.24
56 pts from 43.76 xPts
-
Most points below xPts
Actual points minus expected points based on match xG.
Cracovia
CRA
−9.18
42 pts from 51.18 xPts
-
Most goals above xG
Goals scored minus the xG of the chances taken.
Radomiak Radom
RAD
+7.29
52 goals from 44.71 xG
-
Fewest conceded vs xGA
Goals conceded minus the xG of the chances allowed.
Jagiellonia Białystok
JAG
−14.67
41 conceded from 55.67 xGA
- Better than the chances
- Worse than the chances
A gap can come from finishing, goalkeeping, game state or chance. xG and xPts are model estimates, not the result a team deserved.
Attack and defence
Strong and weak mean above or below the league average, the dashed lines. Fewer xGA per match sits higher, so top-right is strong at both ends.Lech Poznań
P 34 · Pts 60 · 1st
xG/match 1.89 · xGA/match 1.19 · xGD/match +0.70
xPts 63.16
Open Lech PoznańLegia Warszawa
P 34 · Pts 49 · 6th
xG/match 1.43 · xGA/match 1.03 · xGD/match +0.39
xPts 57.31
Open Legia WarszawaRaków Częstochowa
P 34 · Pts 55 · 4th
xG/match 1.62 · xGA/match 1.28 · xGD/match +0.33
xPts 54.76
Open Raków CzęstochowaGórnik Zabrze
P 34 · Pts 56 · 3rd
xG/match 1.48 · xGA/match 1.23 · xGD/match +0.24
xPts 50.54
Open Górnik ZabrzeKS Lechia Gdańsk
P 34 · Pts 43 · 12th
xG/match 1.72 · xGA/match 1.48 · xGD/match +0.24
xPts 51.72
Open KS Lechia GdańskCracovia
P 34 · Pts 42 · 15th
xG/match 1.29 · xGA/match 1.10 · xGD/match +0.18
xPts 51.18
Open CracoviaWidzew Łódź
P 34 · Pts 42 · 14th
xG/match 1.20 · xGA/match 1.14 · xGD/match +0.06
xPts 47.90
Open Widzew ŁódźMKS Korona Kielce
P 34 · Pts 43 · 11th
xG/match 1.49 · xGA/match 1.45 · xGD/match +0.04
xPts 48.41
Open MKS Korona KielcePiast Gliwice
P 34 · Pts 41 · 16th
xG/match 1.41 · xGA/match 1.40 · xGD/match +0.02
xPts 47.50
Open Piast GliwicePogoń Szczecin
P 34 · Pts 45 · 9th
xG/match 1.57 · xGA/match 1.58 · xGD/match −0.02
xPts 47.17
Open Pogoń SzczecinGKS Katowice
P 34 · Pts 50 · 5th
xG/match 1.32 · xGA/match 1.40 · xGD/match −0.08
xPts 43.24
Open GKS KatowiceWisła Płock
P 34 · Pts 46 · 8th
xG/match 1.24 · xGA/match 1.34 · xGD/match −0.10
xPts 43.98
Open Wisła PłockJagiellonia Białystok
P 34 · Pts 56 · 2nd
xG/match 1.48 · xGA/match 1.64 · xGD/match −0.15
xPts 43.76
Open Jagiellonia BiałystokRadomiak Radom
P 34 · Pts 44 · 10th
xG/match 1.32 · xGA/match 1.51 · xGD/match −0.20
xPts 44.28
Open Radomiak RadomZagłębie Lubin
P 34 · Pts 48 · 7th
xG/match 1.16 · xGA/match 1.40 · xGD/match −0.24
xPts 39.32
Open Zagłębie LubinBruk-Bet Termalica Nieciecza
P 34 · Pts 34 · 18th
xG/match 1.29 · xGA/match 1.70 · xGD/match −0.41
xPts 37.84
Open Bruk-Bet Termalica NiecieczaMotor Lublin
P 34 · Pts 43 · 13th
xG/match 1.26 · xGA/match 1.73 · xGD/match −0.47
xPts 36.69
Open Motor LublinMZKS Arka Gdynia
P 34 · Pts 36 · 17th
xG/match 1.05 · xGA/match 1.58 · xGD/match −0.53
xPts 34.16
Open MZKS Arka Gdynia| Club | xG/match | xGA/match | xGD/match |
|---|---|---|---|
| Lech Poznań LEC | 1.89 | 1.19 | +0.70 |
| Legia Warszawa LEG | 1.43 | 1.03 | +0.39 |
| Raków Częstochowa RAK | 1.62 | 1.28 | +0.33 |
| Górnik Zabrze GÓR | 1.48 | 1.23 | +0.24 |
| KS Lechia Gdańsk KSL | 1.72 | 1.48 | +0.24 |
| Cracovia CRA | 1.29 | 1.10 | +0.18 |
| Widzew Łódź WID | 1.20 | 1.14 | +0.06 |
| MKS Korona Kielce MKS | 1.49 | 1.45 | +0.04 |
| Piast Gliwice PIA | 1.41 | 1.40 | +0.02 |
| Pogoń Szczecin POG | 1.57 | 1.58 | −0.02 |
| GKS Katowice GKS | 1.32 | 1.40 | −0.08 |
| Wisła Płock WIS | 1.24 | 1.34 | −0.10 |
| Jagiellonia Białystok JAG | 1.48 | 1.64 | −0.15 |
| Radomiak Radom RAD | 1.32 | 1.51 | −0.20 |
| Zagłębie Lubin ZAG | 1.16 | 1.40 | −0.24 |
| Bruk-Bet Termalica Nieciecza BRU | 1.29 | 1.70 | −0.41 |
| Motor Lublin MOT | 1.26 | 1.73 | −0.47 |
| MZKS Arka Gdynia MZK | 1.05 | 1.58 | −0.53 |
- Top 3 in the table
- Other clubs
- Above average at both ends
- Below average at both ends
All xG. Hover, focus or tap a dot for its figures.
Latest results
-
xG 0.67 – 0.47 Level on xG
-
xG 0.52 – 0.60 Level on xG
-
xG 2.05 – 2.40 Level on xG
-
xG 2.33 – 0.54 Followed the xG
-
xG 1.23 – 3.24 Draw with an xG gap