Cardiff City's 2026/2027 squad, ranked by minutes played. Compare goals, assists, xG, xA and expected goal involvement across the squad.
What the squad numbers say
Yousef Salech leads the squad for expected goal involvement, with 7.20: 6.76 expected goals and 0.44 expected assists. The top scorer is Jack Moylan, with 6 goals from 4.04 expected goals. Joel Bagan leads the squad for expected assists, with 3.19, against 0 assists.
Expected goals
Expected assists
Expected goal involvement
Taken over players with at least 180 minutes and 2.00 expected goals, so the gap is measured against chances actually taken rather than against one afternoon of them.
The squad
| Player | POS | APP | MIN | SH | G | xG | G−xG | CONV | npxG |
|---|---|---|---|---|---|---|---|---|---|
| Nathan Trott | Goalkeeper | 12 | 1080 | 0 | 0 | 0.00 | 0.00 | — | 0.00 |
| Alex Robertson | Midfielder | 12 | 1068 | 13 | 0 | 0.51 | −0.51 | 0% | 0.55 |
| Joel Bagan | Defender | 12 | 1059 | 6 | 0 | 0.24 | −0.24 | 0% | 0.21 |
| Jack Moylan | Midfielder | 12 | 1014 | 47 | 6 | 4.04 | +1.96 | 13% | 3.62 |
| Perry Ng | Defender | 11 | 990 | 14 | 1 | 0.40 | +0.60 | 7% | 0.43 |
| Ollie Tanner | Forward | 12 | 946 | 29 | 2 | 2.90 | −0.90 | 7% | 2.73 |
| Gabriel Osho | Defender | 10 | 885 | 3 | 0 | 0.46 | −0.46 | 0% | 0.41 |
| Yousef Salech | Forward | 9 | 790 | 32 | 3 | 6.76 | −3.76 | 9% | 5.57 |
| Cian Ashford | Forward | 12 | 660 | 13 | 2 | 1.47 | +0.53 | 15% | 1.66 |
| Joel Colwill | Midfielder | 12 | 627 | 14 | 1 | 1.60 | −0.60 | 7% | 1.57 |
| Chris Willock | Forward | 12 | 623 | 9 | 0 | 1.62 | −1.62 | 0% | 0.94 |
| Krystian Bielik | Defender | 7 | 583 | 5 | 0 | 0.49 | −0.49 | 0% | 0.49 |
| Calum Scanlon | Defender | 11 | 353 | 0 | 0 | 0.00 | 0.00 | — | 0.00 |
| Rubin Colwill | Midfielder | 5 | 293 | 5 | 1 | 0.36 | +0.64 | 20% | 0.40 |
| David Turnbull | Midfielder | 8 | 246 | 5 | 0 | 0.17 | −0.17 | 0% | 0.26 |
| Ronan Kpakio | Defender | 6 | 208 | 2 | 0 | 0.09 | −0.09 | 0% | 0.09 |
| William Fish | Defender | 3 | 178 | 0 | 0 | — | — | — | 0.00 |
| Dylan Lawlor | Defender | 3 | 115 | 1 | 0 | 0.04 | −0.04 | 0% | 0.04 |
| Callum Robinson | Forward | 6 | 114 | 4 | 2 | 0.70 | +1.30 | 50% | 0.66 |
| Isaak Davies | Forward | 8 | 78 | 3 | 0 | 0.50 | −0.50 | 0% | 0.45 |
| Charlie Holt | Midfielder | — | — | — | — | — | — | — | — |
| Harry Tyrer | Goalkeeper | — | — | — | — | — | — | — | — |
| Matthew Turner | Goalkeeper | — | — | — | — | — | — | — | — |
| Noah Anyadike | Defender | — | — | — | — | — | — | — | — |
| Paul Moreno | Midfielder | — | — | — | — | — | — | — | — |
| Rob Tankiewicz | Midfielder | — | — | — | — | — | — | — | — |
| Troy Perret | Midfielder | — | — | — | — | — | — | — | — |
|
No player matches that |
|||||||||
Rates per ninety minutes are shown for a player with at least 270 minutes behind him — the control above moves that floor, and it moves nothing else. Minutes share is a player's minutes against the 12 matches this club has played in this competition, at ninety minutes each. Expected goals, non-penalty expected goals and expected assists are summed from this competition's per-match feed, so a player it holds no figures for carries a dash rather than a nought.
Where these figures come from, and what they leave out
- Data source
- Where the per-match feed covers Championship, every figure on a row — appearances, starts, minutes, goals, assists, shots, and the expected goals, expected assists and non-penalty expected goals beside them — is summed from it over the matches he played for this club. Where it does not, the counts are the provider's season line. Championship only — no figure here adds two competitions together.
- Calculated by xgEdge
- xGI, the per-90 rates, goals minus expected goals, xGI share and minutes share are worked out here from those figures. Nothing on this page is a model's output.
- Missing data
- A dash means a figure was not measured; a nought means it was measured and came to nothing. Per-90 figures are hidden below the minimum-minutes setting, which opens at 270 and never removes a row.