MatchAnalyzr is in beta - lock in your early bird discount for good, today.

View pricing

Knowledge Base

What is the Team MA-Score?

A composite team rating on a 0-100 scale - fully transparent, statistically grounded, and built to be interrogated. Every point can be traced back to real data across five performance dimensions.

The Problem with Football Ratings

Football analytics has a transparency problem. The most widely used team and player ratings - from SofaScore, FotMob, WhoScored, and OPTA - are proprietary black boxes. A team receives a power ranking of 68, and you're expected to trust that number without any explanation of how it was produced. This isn't just frustrating for analysts. It's a fundamental obstacle to using ratings as a decision-making tool. If you don't know what a rating measures, you can't interpret it correctly. If you can't interrogate the methodology, you can't spot when a rating is misleading. The Team MA-Score was built to solve this problem. It is a composite rating on a 0-100 scale - 0 meaning the weakest in the league, 100 meaning the strongest - and every point of that score can be traced back to its source. Click 'Why?' on any MA-Score widget and you'll see the exact breakdown: which dimensions contributed, with what weight, and how each underlying metric compares to the rest of the league.

How the MA-Score Works: The Calculation

The MA-Score converts raw football statistics into a single interpretable number using a three-step process: per-game normalisation, Z-score standardisation, and CDF transformation. The core insight is that raw statistics are not comparable across contexts. A team scoring 2.1 goals per game might be exceptional in one league and ordinary in another. Raw numbers only become meaningful when placed in the context of their peer group.

Step 1: Per-Game Normalisation

All raw metrics are normalised to a per-game basis before any comparison is made. This ensures that a team with 30 matches played isn't unfairly advantaged over one with 20. Every metric - goals, xG, dangerous attacks, clean sheets - is divided by the number of matches played to produce a rate.

Step 2: Z-Score Standardisation - Converting Currencies

Once all metrics are on a per-game basis, each is converted to a Z-score. The formula is: Z = (value - league average) / league standard deviation. Think of this like converting currencies. A salary of £50,000 means something very different in London than in Lagos - to compare them, you need a common unit. The Z-score does exactly this for football statistics: it converts every metric into the same currency - standard deviations from the league mean. A Z-score of 0 means exactly average. A Z-score of +1.5 means 1.5 standard deviations above average - better than roughly 93% of teams in the same league. A Z-score of -1.0 means below average. Positive is good, negative is worse than average, and the magnitude tells you how far from the middle you are.

Step 3: CDF Transformation - Why 50 Always Means Average

Raw Z-scores are difficult to interpret intuitively. The final step converts each Z-score into a percentile rank using the Cumulative Distribution Function (CDF) of the normal distribution, then maps the result to a 0-100 scale. The CDF tells you: what percentage of a normal distribution falls below this Z-score? A Z-score of 0 sits at the 50th percentile - exactly half the distribution is below it, half above. This is where the MA-Score's defining property comes from: 50 always equals the league median. Always. A score of 50 means this team is exactly in the middle of their league. A score of 75 is a genuinely strong performer. A score of 90 is elite.

The Five Dimensions of the Team MA-Score

The Team MA-Score combines five dimensions of performance into a single composite score, drawing on 36 input metrics in total (9 per dimension across four statistical dimensions, plus the Form dimension). Each dimension is calculated separately - using its own set of metrics and its own Z-score normalisation - and then combined using weights that reflect the relative importance of each area to overall team quality.

Attacking Threat (25%): How Dangerous is the Attack?

The Attacking Threat dimension captures a team's ability to create and convert goalscoring opportunities, drawing on 9 metrics. Key metrics include: - xG per game (18%): Expected Goals per match - how many goals the team should have scored based on shot quality, not just volume. The single most important offensive metric because it captures both quantity and quality of chances. - Goals For per game (13%): Actual goals scored per match - the reality check alongside xG. - Shot Conversion Rate (13%): How efficiently does the team convert shots into goals? A team scoring at rates above their xG is either clinical or fortunate - this metric quantifies that gap. - xGOT per game (11%): Expected Goals on Target - xG from shots that were actually on target. A more refined measure of shooting quality than xG alone. - Dangerous Attacks per game (9%): Attacks that reach dangerous zones - the box, the six-yard area - regardless of whether a shot was taken. A leading indicator of future scoring opportunities. - Shots Inside Box per game (9%), Shots on Target per game (9%), Shots per game (9%): Volume-based shooting metrics that capture how often the team puts pressure on the opposition. - Scoring Frequency (9%, inverted): How often, in terms of minutes played, does the team score? Inverted so that scoring more frequently produces a higher score.

Ball Progression (20%): How Does the Team Move the Ball?

The Ball Progression dimension captures how effectively a team advances the ball from defence into dangerous areas - the connective tissue between winning possession and creating chances. It draws on 9 metrics: - Possession % (20%): How much of the match does the team control the ball? Possession underpins everything in this dimension. - Pass Accuracy % (15%): Are passes finding teammates consistently? A high completion rate reflects technical quality and low turnover risk. - Attacks per game (12%): Total attacking actions, capturing how often the team advances into opposition territory. - Total Passes per game (10%), Total Crosses per game (10%), Accurate Crosses per game (10%), Shots Inside Box per game (10%): Volume metrics capturing different channels of ball advancement. - Corners per game (8%): Set-piece opportunities earned, an indirect measure of offensive pressure. - Offsides per game (5%): A minor signal - teams running aggressive attacking lines generate more offsides. This dimension rewards teams that use the ball with purpose - not just those who keep it. A team can have 65% possession and score 0.6 xG per game; another can have 42% possession and score 1.8. Ball Progression separates controlled possession from passive ball retention.

Defensive Solidity (25%): How Solid is the Backline?

The Defensive Solidity dimension is deliberately given equal weight to Attacking Threat. A team that scores prolifically but concedes constantly isn't strong - it's volatile. It draws on 9 metrics: - xGA per game (18%, inverted): Expected Goals Against per match - how many goals the team should have conceded based on the quality of chances they allowed. - Clean Sheets per game (18%): The proportion of matches in which the team conceded zero goals. Clean sheets require a complete defensive performance - the highest-weighted metric here alongside xGA. - Goals Conceded per game (12%, inverted): Included as a reality check against the expected metrics. - Failed to Score per game (12%, inverted): Matches in which the team failed to score - a proxy for defensive-offensive balance and the cost of shutting up shop. - Tackles per game (12%): Proactive defensive actions that break up opposition attacks. - Yellow Cards per game (8%, inverted), Red Cards (8%, inverted): Disciplinary metrics - teams that concede cards lose numerical advantages and give opponents set-piece opportunities. - Pressure Index (8%): A composite measure of defensive pressing intensity. - Fouls per game (4%, inverted): Foul rate - a minor signal for defensive recklessness.

Efficiency (15%): Are the Results Deserved?

A team might play excellent football and still lose. Equally, a team might ride luck to a strong points tally. The Efficiency dimension measures whether a team's results are consistent with the quality of football they're playing. It draws on 9 metrics: - xPTS (15%): Expected Points - how many points the team would have earned if every match had been decided by xG rather than actual goals. The most powerful metric here because it accounts for both attack and defence simultaneously. - Average Points per Game / PPG (15%): Actual points earned per match, capturing draws and wins on a continuous scale. - xGOT per game (12%): Expected Goals on Target - a quality measure of shots that reached the keeper. - Shot Conversion Rate (12%): How efficiently does the team turn shots into goals? - Shots on Target % (12%): The proportion of shots that hit the target - a shooting accuracy metric. - BTTS (Both Teams to Score) rate (10%): How often both teams score - a signal of open, attacking play. - Penalty Conversion % (8%): Efficiency from the spot. - Team Rating average (8%): Average match rating across the season. - Failed to Score per game (8%, inverted): How often the team fails to score - penalises toothless attacks. When a team's MA-Score diverges sharply from their league table position, it's often because this dimension is telling a different story to the raw standings.

Form (15%): What is the Current Trend?

The Form dimension adds a temporal element: how is the team performing right now, as opposed to across the whole season? It uses the last 5 matches, but not all five are treated equally. More recent matches are weighted more heavily using exponential decay: weight = e^(-0.1 x days since match). A match played three days ago has far more influence than one played 30 days ago. Critically, Form now evaluates three parallel signals - not just match results: - Result form: Points earned across the last 5 matches with decay weighting. - xG-Momentum: Is the team's xG per game trending up or down across recent matches? A team posting 0.8, 1.1, 1.4, 1.6, 1.9 xG across their last five games has strong positive xG-Momentum even if results haven't fully reflected it yet. - xGA-Momentum: Is the team's defensive xG conceded trending in the right direction? Rising xGA is a warning signal even when results remain positive. Combining result form with xG-Momentum and xGA-Momentum makes Form a more predictive signal. A team winning games while their xG-Momentum is declining is heading for a results correction. A team losing while xG-Momentum is rising may be due for a reversal. The Form dimension deliberately carries the lowest weight (15%) to ensure that one bad result doesn't crater an otherwise strong team's overall MA-Score. A single defeat is information, not a verdict.

The Complete Metric Breakdown

Here is the complete list of every metric used in the Team MA-Score, grouped by dimension. All metrics are normalised per game before Z-Score calculation. Metrics marked as inverted contribute negatively - a higher value means a lower score. **Attacking Threat (25% of overall score) - 9 metrics:** xG per game (18%), xGOT per game (11%), Goals scored per game (13%), Shot conversion rate (13%), Shots on target per game (9%), Shots inside box per game (9%), Dangerous attacks per game (9%), Scoring frequency in minutes (9%, inverted - lower is better), Shots per game (9%). **Ball Progression (20% of overall score) - 9 metrics:** Average possession (20%), Pass accuracy (15%), Total passes per game (10%), Attacks per game (12%), Corners per game (8%), Total crosses per game (10%), Accurate crosses per game (10%), Shots inside box per game (10%), Offsides per game (5%). **Defensive Solidity (25% of overall score) - 9 metrics:** xGA per game (18%, inverted), Goals conceded per game (12%, inverted), Clean sheets per game (18%), Tackles per game (12%), Fouls per game (4%, inverted), Pressure index (8%), Failed to score rate (12%, inverted), Yellow cards per game (8%, inverted), Red cards (8%, inverted). **Efficiency (15% of overall score) - 9 metrics:** Expected points xPTS (15%), Points per game (15%), xGOT per game (12%), Shot conversion rate (12%), Shots on target percentage (12%), Both teams to score rate (10%), Penalty conversion rate (8%), Team rating (8%), Failed to score rate (8%, inverted). **Form (15% of overall score) - 3 metrics:** Result form from the last 5 matches using exponential decay weighting (50%), xG momentum comparing recent xG to season average (25%), xGA momentum comparing recent defensive performance to season average (25%, inverted - improvement is positive). Total: 36 statistical metrics across 4 dimensions, plus 3 form metrics calculated from match results. Every weight listed above is the default configuration. Administrators can adjust all weights through the Admin Panel without requiring a code deployment.

Season-Score vs Form-Score

Every team in MatchAnalyzr has two MA-Scores displayed simultaneously: the Season-Score and the Form-Score. The Season-Score is calculated using all matches in the current season and updated daily. It's the definitive long-term assessment of a team's quality - stable, reliable, and meaningful because it incorporates the full statistical sample. When analysts, journalists, or scouts want to understand a team's true level, the Season-Score is the right number. The Form-Score uses only the last 5 matches with exponential decay weighting. It's volatile by design. A team that has gone on a sudden run of excellent results will show a Form-Score dramatically higher than their Season-Score. A team in the middle of a crisis will show the opposite. The gap between the two scores is itself informative: a large positive gap (Form much higher than Season) suggests a team on the rise - their recent performances are significantly better than their season-long average. A large negative gap suggests a team under pressure. Watch out for 'momentum teams' in upcoming fixtures - these gap signals are often more predictive than either score alone. Both scores are updated daily, recalculated automatically overnight.

MatchAnalyzr Tip

The gap between Season-Score and Form-Score is one of the most useful signals in MatchAnalyzr. A team with a Season-Score of 58 but a Form-Score of 74 is a team on the rise - their recent performances are significantly better than their season-long average. Watch out for these momentum teams in upcoming fixtures: the gap often predicts a result the table doesn't.

The Colour System: Reading MA-Scores at a Glance

MA-Scores are colour-coded throughout MatchAnalyzr to make interpretation immediate. You don't need to remember the scale - the colour tells you the story: - 75-100 Strong (Teal): An elite team. One of the best in the league across the measured dimensions. - 55-74 Above Average (Emerald): Significantly above average. A team in this range is competing for the top of the table. - 40-54 Average (Amber): The median band. A score of 50 is literally the league median. Teams in this range are performing as expected for their tier. - 25-39 Below Average (Orange): Underperforming relative to league peers. Teams in this range are typically in the bottom half of the table. - 0-24 Weak (Red): Significantly below average. One of the weakest teams in the league on the measured dimensions. The colour thresholds are applied consistently across every widget, badge, and report in MatchAnalyzr.

Cross-League Comparison: The League Adjustment

An MA-Score of 72 earned in the Premier League and a score of 72 earned in Ligue 1 are not equivalent. The Premier League is a harder league, competed at a higher level, with stronger teams throughout. A mid-table Premier League side would probably be a top-six side in Ligue 1. When MatchAnalyzr compares teams across different leagues - in the comparison widget or in Pre-Match Scores for European fixtures - it applies a league adjustment coefficient derived from UEFA club coefficients and refined by ClubElo average ratings: - Premier League: 1.00 (reference) - La Liga: 0.97 - Bundesliga: 0.95 - Serie A: 0.93 - Ligue 1: 0.88 A Bundesliga team with an MA-Score of 75 has an adjusted score of 71.25 when compared against a Premier League side. These coefficients are editable in the admin panel and updated as league competitive balance shifts over time. Importantly, the standard MA-Score shown in league-specific widgets is always the raw, unadjusted score - comparing a team only to its own league peers. The adjustment is applied only when explicitly performing cross-league comparisons.

MatchAnalyzr Tip

When using the MA-Score for cross-league comparisons, always check whether the league adjustment is applied. An MA-Score of 72 in the Bundesliga corresponds to approximately 68.4 when adjusted to the Premier League baseline. The comparison widget applies this automatically - but in single-league views, you're always seeing the raw, within-league score.

The Pre-Match Score: Win Probability Before Kick-Off

The Pre-Match Score is a separate calculation that uses both teams' MA-Scores to produce a probabilistic forecast for an upcoming match: the probability of a home win, a draw, and an away win. The three probabilities always sum to exactly 1.0. The calculation converts MA-Scores to an Elo-equivalent scale, applies the standard Elo expected score formula, then introduces a draw adjustment - because football has draws in a way that most Elo-based sports don't - and a home advantage factor (53 Elo points by default, configurable in the admin panel). The Pre-Match Score is shown in the team's next match widget, in match detail views, and in pre-match reports. It's explicitly an analytical estimate, not bookmaker odds - it doesn't incorporate team news, injuries, motivation, or tournament context. It's a starting point for analysis, not a betting recommendation. The advantage is precisely that it's objective: it shows what the underlying performance data says, independent of market movements.

Transparency: The 'Why?' Link

Transparency is not a feature of the MA-Score - it's the entire point. Every other football rating system treats its algorithm as a trade secret. MatchAnalyzr treats transparency as a competitive advantage. Every MA-Score displayed in a widget has a 'Why?' link. Hovering shows a tooltip summarising the score's main drivers: 'Strong attacking threat (82), solid defensive solidity (71), good ball progression (68), positive form trend (85)'. Clicking opens a full breakdown for Pro and Premium users: the exact sub-score for each of the five dimensions, individual metric values and Z-scores, and a comparison bar showing where each metric sits relative to the league. For casual users, the tooltip converts a number into a sentence. For analysts, the full breakdown enables genuine interrogation: is this team's high score driven by an elite attack or a solid defence? Is their form score diverging from their season score? No other football analytics product offers this level of score explainability at scale. Competitor comparison: - SofaScore: Match ratings only, no methodology published - FotMob: Match ratings, no composite season score, non-transparent - WhoScored: Season averages, partial methodology, not position-normalised - OPTA Power Rankings: 0-100 teams only, partially documented, not interactive - FBref (StatsBomb): Transparent percentile rankings per metric, no composite score - MA-Score: Composite, fully transparent, season + form, interactive breakdown

MatchAnalyzr Tip

A team whose MA-Score is significantly higher than their league table position is often being unlucky with finishing or goalkeeper performance. Check the Efficiency sub-score: if xPTS is high but actual points are low, the team is playing better than their position suggests - and a correction is statistically likely. Also watch the Form dimension's xG-Momentum signal: a rising xG trend across the last five games is often the earliest indicator of an imminent run.

How to Use the Team MA-Score

The MA-Score is a tool, and its value depends on how it's used. Here are the most effective applications.

For Match Analysis

Before a match, compare the MA-Scores and Pre-Match Scores of both teams. Look at the sub-score breakdown: does one team have a significant Attacking Threat advantage? Is a high-scoring home team facing a side with a strong Defensive Solidity score? Does one team have notably higher Ball Progression numbers - suggesting they will dominate possession? These comparisons frame what to expect and give you language to describe the contest before it starts. After the match, compare the result to the Pre-Match Score. If a heavily favoured team lost, the post-match report will explain why the metrics and the scoreline diverged - whether it was a genuine performance or statistical variance.

For Fantasy Football

Fantasy football rewards points, and points come from goals, assists, clean sheets, and minutes. The MA-Score's team breakdown is particularly useful for Fantasy managers. A team with a high Defensive Solidity score is the right source for clean sheet potential when picking goalkeepers and defenders. A team with a high Attacking Threat score but low Efficiency - lots of xG but inconsistent conversion - may be a fixture to target defensively. A strong Ball Progression score suggests a team that creates through sustained build-up, which tends to generate more set pieces and open-play assists. Use the Form-Score to identify teams mid-streak, and cross-reference with the fixture list to spot favourable runs.

For Season Tracking

The Season-Score and Form-Score together tell the story of a team's season. Track both over time to identify inflection points: when did a team that started the season well begin to decline? When did a struggling side stabilise? Historical data (up to 10 seasons for Premium users) allows comparisons across multiple campaigns - identifying whether a team's current form is exceptional or merely a return to their established baseline.

Frequently Asked Questions

What does a Team MA-Score of 50 mean?
A score of 50 is exactly the league median - not an arbitrary midpoint, but the actual statistical median of all teams in that division. Half the league is above 50, half is below. A team at 50 is performing as expected for a mid-table side in that division.
What are the five dimensions of the Team MA-Score?
The five dimensions are: Attacking Threat (25%) - 9 metrics including xG per game, xGOT, goals scored, shot conversion, shots on target, shots inside box, dangerous attacks, scoring frequency, and shots per game; Ball Progression (20%) - 9 metrics including possession, pass accuracy, total passes, attacks, corners, crosses, accurate crosses, shots inside box, and offsides; Defensive Solidity (25%) - 9 metrics including xGA, goals conceded, clean sheets, tackles, fouls, pressure index, failed to score, yellow cards, and red cards; Efficiency (15%) - 9 metrics including xPTS, points per game, xGOT, shot conversion, shots on target percentage, BTTS rate, penalty conversion, team rating, and failed to score; Form (15%) - the last 5 matches with exponential decay weighting, combining result form with xG-Momentum and xGA-Momentum. The score draws on 36 input metrics in total.
How often is the Team MA-Score updated?
Both the Season-Score and Form-Score are updated daily, recalculated automatically overnight. After each matchday, scores are refreshed overnight so updated ratings are available the following morning. The Pre-Match Score is calculated at the start of each matchday.
Can I see what went into a specific MA-Score?
Yes - that's the whole point. Every MA-Score widget in MatchAnalyzr has a 'Why?' link. Pro and Premium users see the full dimensional breakdown: the sub-score for each dimension, individual metric values and Z-scores, and a comparison bar showing where each metric ranks within the league.
Is the MA-Score comparable across different leagues?
Within a single league, a score of 72 means the team is at the 72nd percentile of that division. When comparing across leagues, MatchAnalyzr applies league adjustment coefficients: Premier League 1.00, La Liga 0.97, Bundesliga 0.95, Serie A 0.93, Ligue 1 0.88. The comparison widget applies these adjustments automatically. In single-league widgets, you always see the raw, unadjusted score.
How is the Pre-Match Score different from bookmaker odds?
Bookmaker odds incorporate team news, injury reports, managerial motivation, and market sentiment. The Pre-Match Score is a purely analytical estimate based on both teams' MA-Scores and home advantage - it doesn't have access to information beyond historical performance data. The advantage is that it's objective: it shows what the underlying data says, independent of market movements. It's a starting point for analysis, not a betting recommendation.
Which plan do I need to see the MA-Score?
The Team MA-Score widget is available from the Pro plan onwards. Pro users see the Season-Score, Form-Score, and the full dimensional breakdown via the 'Why?' link. Premium users additionally see per-metric breakdown bars and the full 'Why?' explanation inline in the L-size widget. The Pre-Match Score is included with the MA-Score widget. The league comparison with adjusted scores is available in the comparison widget, which is a Premium feature.

Your football. Your analysis data. Your dashboards.

Turn raw data into real insights with MatchAnalyzr. Build your own personalised football dashboard with the leagues, teams and players you actually follow.

MatchAnalyzr app screenshot