Start with role and opportunity
Opta's statistics definitions show why provider rules and denominators must be recorded before comparing the measures below.
Player statistics are generated by tactical assignments and playing time. Compare a centre-forward with other forwards, a full-back with similar roles, and substitutes with care. Record starts, minutes, set-piece duties, team possession and competition scope before ranking rates.
A layered metric set
| Layer | Examples | Reader question |
|---|---|---|
| Output | Goals, assists, tackles won | What happened? |
| Opportunity | xG, xA, touches in box | What situations were available? |
| Progression | Carries, progressive passes, xT | How was the ball advanced? |
| Defensive role | Pressures, interceptions, aerials | What out-of-possession work was recorded? |
| Availability | Minutes, starts, injuries | How much evidence exists? |
Opta's xG and xA guides show that even familiar expected metrics have defined model populations. Opta's broader definitions are one example of the event vocabulary needed for comparison.
Rate calculation and sample
If a player produces 4.8 xG in 1,440 minutes, the per-90 rate is 4.8 / 1,440 x 90 = 0.30. A player with 1.2 xG in 270 minutes has 0.40 per 90, but the smaller denominator creates much greater uncertainty. Publish totals and minutes beside rates.
Finishing and goalkeeping interpretation
Goals minus xG is a historical difference, not a direct skill estimate. Shot placement, penalties, model omissions and outcome variance all contribute. Opta's xGOT explanation shows how a post-shot model can add placement information for on-target attempts, but it also has its own scope.
Comparison checklist
- Same provider, competition and date range.
- Same or meaningfully similar role.
- Totals, minutes and per-90 rates together.
- Team and opponent context.
- Multiple seasons or uncertainty intervals where available.
- No selection of metrics solely because they flatter one player.
Worked rate comparison
Suppose Player A records 3.0 xA in 900 minutes and Player B records 4.0 xA in 1,800 minutes. Their illustrative per-90 rates are 0.30 and 0.20 respectively. Player A has the higher rate; Player B has contributed more total xA over twice the exposure. Neither statement settles who is "better."
Add the decision context:
| Question | Prefer to show |
|---|---|
| Current contribution | Totals, minutes and availability |
| Role efficiency | Per-90 rate, touches and position |
| Recruitment projection | Age, role transfer, competition and uncertainty |
| Short-term selection | Expected minutes, opponent and current role |
Avoid unstable leaderboards
Set a declared minutes threshold for display, but do not treat it as a universal evidence threshold. Show the sample and uncertainty, retain substitute appearances, and investigate whether role or set-piece duty changed. Shrinkage or partial pooling can reduce extreme estimates in small samples, but the method and prior must be documented.
scikit-learn's TimeSeriesSplit guidance supports the chronological validation rule used in the next step.
For a future-outcome model, build features from information available at the prediction time, including expected minutes rather than hindsight minutes. Evaluate by role and competition as well as overall. An average score can conceal systematic errors for positions with different event opportunities.
Related resources
Read expected assists or expected threat for metric-specific methods.
Continue learning
- Next guide: Football Possession Statistics
- Related guide: Head-to-Head Football Records
Assumptions and limitations
The calculation is illustrative. Public data may differ in corrections and coverage. Event metrics omit some off-ball actions, while tracking-derived metrics require different data. Descriptive rankings do not establish transferable ability or future performance.

