Soccer predictions: actual data vs predicted data

Slate 20261101 · 5 match(es)
How to read this report. Each match shows the model's headline prediction, the stage-by-stage lambda (goal-rate) build, both teams' standing/form inputs, and every starter's projected line next to their real season baseline. A moderate / large deviation badge flags a projection that strays far from the player's season form — a quick way to spot when the inputs look right but a projection does not. When the real result is known an actual-vs-predicted banner appears.

All matches overview

MatchScoreWinnerH / D / AO2.5BTTSConfλ H/AActualResult
Liverpool vs Arsenal
Premier League
2-1Liverpool43.2% / 24.9% / 31.9%54.4%57.5%0.721.55 / 1.30-pending
Racing Club vs Real Madrid
LaLiga
0-2Real Madrid9.8% / 14.3% / 75.8%71.4%56.6%0.810.92 / 2.77-pending
Athletic Club vs Real Sociedad
LaLiga
2-1Athletic Club48.5% / 23.8% / 27.8%57.3%58.9%0.741.73 / 1.25-pending
Getafe vs Sevilla
LaLiga
1-2Sevilla30.6% / 24.2% / 45.2%57.3%59.5%0.721.33 / 1.66-pending
Elche vs Valencia
LaLiga
1-0Elche45.7% / 25.4% / 28.9%51.1%54.5%0.721.54 / 1.18-pending

Match detail

Liverpool vs Arsenal

Premier League · 20261101 · 4-2-3-1 vs 4-2-3-1
Predicted 2-1Winner: LiverpoolWinning H 2-1 (9.0%)Winning A 1-2 (7.6%)Confidence 0.72λ home/away 1.55 / 1.30Most-likely P 9.0%
Actual vs predicted: result not available yet (upcoming fixture).
XGBoost Reasoning & FBref Dataset Tracing
Antagonist + XGBoost match analysis for Liverpool vs Arsenal. Player statistics regressed using position-specific XGBoost models (G, D, M, F) with 2026-2027 FBref priors. Micro-duels resolved across 4-2-3-1 vs 4-2-3-1 (duel lambdas: Home 1.831, Away 1.525). Final calibrated Poisson lambdas: Home 1.554, Away 1.301 (most likely score 2-1).
Home Starters 11/11 XGBoost (10 FBref) Away Starters 11/11 XGBoost (11 FBref) Bench Modeled H: 7 / A: 7 Duel λ (H/A) 1.83 / 1.52 Final λ (H/A) 1.55 / 1.30
FBref Team Priors: Liverpool FC (Gls/90: 2.0, GA/90: 2.0 → E[λ]: 2.759) vs Arsenal (Gls/90: 2.0, GA/90: 2.0 → E[λ]: 2.759) | Blend Weight: 0.192
Modeling Pipeline Stages (5 layers)
  1. 1. XGBoost player regressions for volume & event rates with market-value quality scaling
  2. 2. Multi-source prior blending (FBref 2026-2027 tables + Sofascore season history)
  3. 3. Antagonist formation duel matrix resolving 1v1 and zonal matchups
  4. 4. Team-level prior calibration (FBref possession and attack/defense efficiencies)
  5. 5. Bivariate Poisson matrix with Dixon-Coles low-score correction

Standing & form context

MetricLiverpoolArsenal
League position5.002.00
Points per game1.652.08
Attack index1.001.07
Defense (concede) index0.780.89
Form multiplier0.981.02
Standing λ multiplier0.900.99

Lambda decomposition (how the goal rates were built)

StageLiverpool λArsenal λ
FBref Squad Prior E[λ] (weight 0.192)2.7592.759
Pre-competitive-floor1.8441.514
Pre-calibration (Micro-duels)1.8311.525
Final λ1.5541.301
competition calibration scale 0.85competition observed total goals 2.781quality gap applied Falsemismatch score pressure applied Falsecompetitive underdog floor applied Falsestage discount 1.0

Scoreline distribution & markets

Top 5 scorelinesP
1-111.7%
2-19.0%
1-08.9%
1-27.6%
0-17.4%
Home win43.2%
Draw24.9%
Away win31.9%
Over 2.554.4%
BTTS yes57.5%
Pregame fair line — favorite Liverpool (43.2%), fair total 2.85, fair spread 0.25

Projected players vs season baseline

Proj = projected for this match · Season = this season's per-game average from match data · deviation badge compares projected xG to the player's season xG/game.

Liverpool — projected line vs season baseline (4-2-3-1)

PlayerPosMinProj GProj xGSeason xG/gProj ShSeason Sh/gProj RtgSeason RtgRecModel / FBref Prior
Ronald AraújoD7600.020.0332%00.26.842.333FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0077, quality 0.694)market_value_eur=27000000
quality_factor=0.6941
boost_factor=1.0077
reference_quality=0.505
history_matches=32
history_shrink=0.1351
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0023)blend_weight=0.0023
history_matches=32
season_overlap_discount=1.0
per90_to_match_factor=0.8461
prior_reliability=0.0267
competition=Premier League
fouls: 0.585 -> 0.5935
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Kai Havertz', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.55 (squad xG sum 1.6653, xG scale 0.9332, xA scale 1.1959, team xA 1.01 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.554
squad_xg_sum=1.6653
squad_xa_sum=0.8446
team_expected_assists=1.0101
team_xa_to_xg_ratio=0.65
-
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 14 by projected rating, fifa_overall 80.0)match_squad_rank=14
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.0223
goal_rate=0.0587
scorer_weight=0.0282
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0248
assist_rate=0.0
provider_weight=0.0201
-
Jérémy JacquetD8800.040.02106%10.17.043.314FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0417, quality 0.866)market_value_eur=67000000
quality_factor=0.8661
boost_factor=1.0417
reference_quality=0.505
history_matches=8
history_shrink=0.3846
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0267)blend_weight=0.0267
history_matches=8
season_overlap_discount=1.0
per90_to_match_factor=0.9767
prior_reliability=0.1067
competition=Premier League
interceptionWon: 1.2618 -> 1.2933
wasFouled: 0.8034 -> 0.8308
totalShots: 0.5176 -> 0.5038
fouls: 1.056 -> 1.0441
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=true
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Kai Havertz', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.55 (squad xG sum 1.6653, xG scale 0.9332, xA scale 1.1959, team xA 1.01 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.554
squad_xg_sum=1.6653
squad_xa_sum=0.8446
team_expected_assists=1.0101
team_xa_to_xg_ratio=0.65
-
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 6 by projected rating, fifa_overall 77.0)match_squad_rank=6
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.0433
goal_rate=0.0
scorer_weight=0.0354
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0267
assist_rate=0.0
provider_weight=0.0217
-
Virgil van DijkD9000.060.1039%10.77.159.534FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0023, quality 0.585)market_value_eur=15500000
quality_factor=0.5846
boost_factor=1.0023
reference_quality=0.505
history_matches=46
history_shrink=0.098
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0085)blend_weight=0.0085
history_matches=46
season_overlap_discount=1.0
per90_to_match_factor=1.0
prior_reliability=0.1333
competition=Premier League
interceptionWon: 1.1607 -> 1.1551
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Kai Havertz', 'matchup_zone': 'Shape fallback'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.55 (squad xG sum 1.6653, xG scale 0.9332, xA scale 1.1959, team xA 1.01 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.554
squad_xg_sum=1.6653
squad_xa_sum=0.8446
team_expected_assists=1.0101
team_xa_to_xg_ratio=0.65
-
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 1 by projected rating, fifa_overall 88.0)match_squad_rank=1
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.0578
goal_rate=0.1139
scorer_weight=0.0744
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.027
assist_rate=0.0
provider_weight=0.0219
-
Miloš KerkezD8600.020.0234%00.26.748.534FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0081, quality 0.758)market_value_eur=36000000
quality_factor=0.7581
boost_factor=1.0081
reference_quality=0.505
history_matches=42
history_shrink=0.1064
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0083)blend_weight=0.0083
history_matches=42
season_overlap_discount=1.0
per90_to_match_factor=0.958
prior_reliability=0.12
competition=Premier League
totalShots: 0.3729 -> 0.3788
wasFouled: 1.7578 -> 1.752
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Martin Ødegaard', 'matchup_zone': 'Left Wing vs Right Back — Flank Battle'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.55 (squad xG sum 1.6653, xG scale 0.9332, xA scale 1.1959, team xA 1.01 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.554
squad_xg_sum=1.6653
squad_xa_sum=0.8446
team_expected_assists=1.0101
team_xa_to_xg_ratio=0.65
-
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 16 by projected rating, fifa_overall 81.0)match_squad_rank=16
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.0246
goal_rate=0.0378
scorer_weight=0.0285
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0212
assist_rate=0.0155
provider_weight=0.0206
-
Ryan GravenberchM7900.060.0390%10.86.956.233FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 1.0118, quality 0.883)market_value_eur=81000000
quality_factor=0.8829
boost_factor=1.0118
reference_quality=0.505
history_matches=43
history_shrink=0.1042
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0050)blend_weight=0.005
history_matches=43
season_overlap_discount=1.0
per90_to_match_factor=0.8771
prior_reliability=0.0733
competition=Premier League
wasFouled: 1.1199 -> 1.1302
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Declan Rice', 'matchup_zone': 'CDM vs CDM', 'duel_win_rate': 0.425, 'pressing_faced': 'ULTRA_HIGH', 'numerical_situation': '1v1', 'xg_multiplier': 1.007, 'skill_edge': -0.0033, 'height_edge': 0.008, 'attacker_skill': 0.8915, 'defender_skill': 0.8988, 'attacker_role': 'CDM', 'attacker_mv_price_index': 0.85, 'defender_adjusted_parts': [{'player': 'Declan Rice', 'market_value': 114000000, 'role': 'CDM', 'price_index': 0.85, 'adjusted_quality': 0.8988}], 'xg_override': 0.0686}
aerialWon: 1.0941 -> 1.3
totalShots: 1.0181 -> 1.0252
shotOffTarget: 0.7305 -> 0.7356
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.55 (squad xG sum 1.6653, xG scale 0.9332, xA scale 1.1959, team xA 1.01 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.554
squad_xg_sum=1.6653
squad_xa_sum=0.8446
team_expected_assists=1.0101
team_xa_to_xg_ratio=0.65
expected_assists: 0.0445 -> 0.0532
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 13 by projected rating, fifa_overall 85.0)match_squad_rank=13
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.062
goal_rate=0.0743
scorer_weight=0.0671
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0518
assist_rate=0.0793
provider_weight=0.0665
-
Alexis Mac AllisterM8800.120.0842%11.27.156.434FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 1.0112, quality 0.879)market_value_eur=77000000
quality_factor=0.8792
boost_factor=1.0112
reference_quality=0.505
history_matches=45
history_shrink=0.1
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0052)blend_weight=0.0052
history_matches=45
season_overlap_discount=1.0
per90_to_match_factor=0.9791
prior_reliability=0.08
competition=Premier League
wasFouled: 0.7451 -> 0.754
totalShots: 1.6246 -> 1.6162
totalCross: 1.1751 -> 1.169
fouls: 1.2924 -> 1.2984
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Declan Rice', 'matchup_zone': 'CDM vs CDM', 'duel_win_rate': 0.368, 'pressing_faced': 'ULTRA_HIGH', 'numerical_situation': '1v1', 'xg_multiplier': 0.9232, 'skill_edge': -0.0043, 'height_edge': -0.048, 'attacker_skill': 0.8893, 'defender_skill': 0.8988, 'attacker_role': 'CDM', 'attacker_mv_price_index': 0.85, 'defender_adjusted_parts': [{'player': 'Declan Rice', 'market_value': 114000000, 'role': 'CDM', 'price_index': 0.85, 'adjusted_quality': 0.8988}], 'xg_override': 0.1268}
totalShots: 1.6218 -> 1.4973
shotOffTarget: 1.0864 -> 1.003
onTargetScoringAttempt: 0.5354 -> 0.4943
goals: 0.1411 -> 0.1303
expectedGoals: 0.1373 -> 0.1268
expectedGoalsOnTarget: 0.0719 -> 0.0664
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.55 (squad xG sum 1.6653, xG scale 0.9332, xA scale 1.1959, team xA 1.01 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.554
squad_xg_sum=1.6653
squad_xa_sum=0.8446
team_expected_assists=1.0101
team_xa_to_xg_ratio=0.65
expected_goals: 0.1268 -> 0.1183
expected_assists: 0.1153 -> 0.1379
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 2 by projected rating, fifa_overall 84.0)match_squad_rank=2
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.1116
goal_rate=0.1303
scorer_weight=0.1206
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.1288
assist_rate=0.0871
provider_weight=0.1144
-
Bradley BarcolaF8000.160.0894%20.76.941.115XGBoost F_service
Step-by-step (9 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0528, quality 0.892)market_value_eur=97000000
quality_factor=0.8922
boost_factor=1.0528
reference_quality=0.505
history_matches=6
history_shrink=0.4545
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Ben White, Gabriel Magalhães', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.198, 'pressing_faced': 'ULTRA_HIGH', 'numerical_situation': '1v2', 'xg_multiplier': 0.9977, 'skill_edge': 0.0224, 'height_edge': -0.024, 'attacker_skill': 0.8922, 'defender_skill': 0.8424, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Ben White', 'market_value': 32000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.7941}, {'player': 'Gabriel Magalhães', 'market_value': 70000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.8907}], 'xg_override': 0.1704}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
assists: 1.0 -> 0
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.55 (squad xG sum 1.6653, xG scale 0.9332, xA scale 1.1959, team xA 1.01 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.554
squad_xg_sum=1.6653
squad_xa_sum=0.8446
team_expected_assists=1.0101
team_xa_to_xg_ratio=0.65
expected_goals: 0.1704 -> 0.159
expected_assists: 0.124 -> 0.1483
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 9 by projected rating, fifa_overall 85.0)match_squad_rank=9
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.147
goal_rate=0.1784
scorer_weight=0.1648
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.1378
assist_rate=0.5251
provider_weight=0.1854
-
Florian WirtzM7900.150.17ok21.57.054.830FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 1.0123, quality 0.883)market_value_eur=81000000
quality_factor=0.8829
boost_factor=1.0123
reference_quality=0.505
history_matches=41
history_shrink=0.1087
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0080)blend_weight=0.008
history_matches=41
season_overlap_discount=1.0
per90_to_match_factor=0.8807
prior_reliability=0.1133
competition=Premier League
fouls: 1.6631 -> 1.6539
totalCross: 1.9423 -> 1.935
totalShots: 1.7368 -> 1.7438
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Myles Lewis-Skelly', 'matchup_zone': 'Left Wing vs Right Back — Flank Battle', 'duel_win_rate': 0.464, 'pressing_faced': 'ULTRA_HIGH', 'numerical_situation': '1v1', 'xg_multiplier': 0.9758, 'skill_edge': -0.0045, 'height_edge': -0.012, 'attacker_skill': 0.8829, 'defender_skill': 0.8928, 'attacker_role': 'LW', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Myles Lewis-Skelly', 'market_value': 69000000, 'role': 'RB', 'price_index': 0.7, 'adjusted_quality': 0.8928}], 'xg_override': 0.1615}
aerialWon: 0.3131 -> 0.9
totalShots: 1.7438 -> 1.7016
shotOffTarget: 1.1296 -> 1.1023
onTargetScoringAttempt: 0.6106 -> 0.5958
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.55 (squad xG sum 1.6653, xG scale 0.9332, xA scale 1.1959, team xA 1.01 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.554
squad_xg_sum=1.6653
squad_xa_sum=0.8446
team_expected_assists=1.0101
team_xa_to_xg_ratio=0.65
expected_goals: 0.1615 -> 0.1507
expected_assists: 0.1688 -> 0.2019
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 5 by projected rating, fifa_overall 86.0)match_squad_rank=5
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.1399
goal_rate=0.1582
scorer_weight=0.1483
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=1
assist_probability=0.1828
assist_rate=0.1523
provider_weight=0.1867
-
Cody GakpoF8510.270.1671%31.96.950.343FBref Prior F_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0118, quality 0.873)market_value_eur=72000000
quality_factor=0.8734
boost_factor=1.0118
reference_quality=0.505
history_matches=42
history_shrink=0.1064
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0083)blend_weight=0.0083
history_matches=42
season_overlap_discount=1.0
per90_to_match_factor=0.9451
prior_reliability=0.12
competition=Premier League
totalCross: 1.2197 -> 1.2444
interceptionWon: 0.8915 -> 0.9015
totalShots: 2.257 -> 2.2648
fouls: 1.3775 -> 1.3835
wonTackle: 0.8734 -> 0.8792
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Ben White, Gabriel Magalhães', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.234, 'pressing_faced': 'ULTRA_HIGH', 'numerical_situation': '1v2', 'xg_multiplier': 1.0499, 'skill_edge': 0.014, 'height_edge': 0.02, 'attacker_skill': 0.8734, 'defender_skill': 0.8424, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Ben White', 'market_value': 32000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.7941}, {'player': 'Gabriel Magalhães', 'market_value': 70000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.8907}], 'xg_override': 0.2858}
totalShots: 2.2648 -> 2.3778
shotOffTarget: 1.5313 -> 1.6077
onTargetScoringAttempt: 0.7241 -> 0.7602
expectedGoals: 0.2722 -> 0.2858
goals: 0.2467 -> 0.259
bigChanceMissed: 0.2068 -> 0.2171
expectedGoalsOnTarget: 0.1266 -> 0.1329
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.55 (squad xG sum 1.6653, xG scale 0.9332, xA scale 1.1959, team xA 1.01 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.554
squad_xg_sum=1.6653
squad_xa_sum=0.8446
team_expected_assists=1.0101
team_xa_to_xg_ratio=0.65
expected_goals: 0.2858 -> 0.2667
expected_assists: 0.1169 -> 0.1398
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 12 by projected rating, fifa_overall 82.0)match_squad_rank=12
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=1
goal_probability=0.2341
goal_rate=0.259
scorer_weight=0.2454
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.1305
assist_rate=0.3732
provider_weight=0.1748
-
AlissonG9000.00-n/a0.07.053.027FBref Prior G_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost G_service raw output over 3 target models--
market_value_boostMarket-value quality scaling (boost 1.0035, quality 0.595)market_value_eur=16500000
quality_factor=0.5953
boost_factor=1.0035
reference_quality=0.505
history_matches=34
history_shrink=0.1282
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0111)blend_weight=0.0111
history_matches=34
season_overlap_discount=1.0
per90_to_match_factor=1.0
prior_reliability=0.1333
competition=Premier League
saves: 2.8471 -> 2.8377
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Kai Havertz, Martin Ødegaard', 'matchup_zone': 'Goalkeeper shot-stopping context', 'opponent_lambda': 1.5252}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.55 (squad xG sum 1.6653, xG scale 0.9332, xA scale 1.1959, team xA 1.01 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.554
squad_xg_sum=1.6653
squad_xa_sum=0.8446
team_expected_assists=1.0101
team_xa_to_xg_ratio=0.65
shots_faced: 14.5 -> 12.4
expected_saves: 3.55 -> 3.04
high_pressure_saves: 1.22 -> 1.04
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 4 by projected rating, fifa_overall 87.0)match_squad_rank=4
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.0
scorer_weight=0.0
squad_weight_total=1.6565
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0
provider_weight=0.0
squad_weight_total=0.9945
-
Alexander IsakF7910.440.2766%31.26.943.418FBref Prior F_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0222, quality 0.891)market_value_eur=93000000
quality_factor=0.8905
boost_factor=1.0222
reference_quality=0.505
history_matches=21
history_shrink=0.1923
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0167)blend_weight=0.0167
history_matches=21
season_overlap_discount=1.0
per90_to_match_factor=0.8823
prior_reliability=0.1333
competition=Premier League
wasFouled: 0.2838 -> 0.2938
totalShots: 2.7489 -> 2.7546
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Ben White, Gabriel Magalhães', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.242, 'pressing_faced': 'ULTRA_HIGH', 'numerical_situation': '1v2', 'xg_multiplier': 1.0612, 'skill_edge': 0.0217, 'height_edge': 0.02, 'attacker_skill': 0.8905, 'defender_skill': 0.8424, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Ben White', 'market_value': 32000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.7941}, {'player': 'Gabriel Magalhães', 'market_value': 70000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.8907}], 'xg_override': 0.4763}
totalShots: 2.7546 -> 2.9232
shotOffTarget: 1.622 -> 1.7213
onTargetScoringAttempt: 1.1302 -> 1.1994
expectedGoalsOnTarget: 0.6991 -> 0.7419
goals: 0.5384 -> 0.5714
expectedGoals: 0.4488 -> 0.4763
bigChanceMissed: 0.3738 -> 0.3967
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
goals: 1.0 -> 0
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.55 (squad xG sum 1.6653, xG scale 0.9332, xA scale 1.1959, team xA 1.01 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.554
squad_xg_sum=1.6653
squad_xa_sum=0.8446
team_expected_assists=1.0101
team_xa_to_xg_ratio=0.65
expected_goals: 0.4763 -> 0.4446
expected_assists: 0.0388 -> 0.0464
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 11 by projected rating, fifa_overall 86.0)match_squad_rank=11
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=1
goal_probability=0.3589
goal_rate=0.5714
scorer_weight=0.5249
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0453
assist_rate=0.02
provider_weight=0.0371
-
Team totals21.55176.9
Bench Candidates (7 modeled substitutes with empirical playing time)
PlayerPosExp MinApp ProbSubstitute Modeling Details
Giorgi MamardashviliG5.5m15.8%Market-value substitute prior
Jeremie FrimpongD14.8m35.6%Market-value substitute prior
Curtis JonesD14.8m35.3%Market-value substitute prior
Dominik SzoboszlaiM23.8m58.0%Market-value substitute prior
Mohamed SalahM22.8m53.5%Market-value substitute prior
Hugo EkitikéF27.0m63.8%Market-value substitute prior

Arsenal — projected line vs season baseline (4-2-3-1)

PlayerPosMinProj GProj xGSeason xG/gProj ShSeason Sh/gProj RtgSeason RtgRecModel / FBref Prior
David RayaG9000.00-n/a0.07.156.632FBref Prior G_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost G_service raw output over 3 target models--
market_value_boostMarket-value quality scaling (boost 1.0070, quality 0.739)market_value_eur=33000000
quality_factor=0.7389
boost_factor=1.007
reference_quality=0.505
history_matches=45
history_shrink=0.1
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0087)blend_weight=0.0087
history_matches=45
season_overlap_discount=1.0
per90_to_match_factor=1.0
prior_reliability=0.1333
competition=Premier League
saves: 2.9289 -> 2.9079
wasFouled: 0.7105 -> 0.7043
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Alexander Isak, Cody Gakpo', 'matchup_zone': 'Goalkeeper shot-stopping context', 'opponent_lambda': 1.8305}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.30 (squad xG sum 1.3911, xG scale 0.9352, xA scale 0.9100, team xA 1.04 = 0.80 x lambda)scoreline_reset=true
team_lambda=1.301
squad_xg_sum=1.3911
squad_xa_sum=1.1438
team_expected_assists=1.0408
team_xa_to_xg_ratio=0.8
shots_faced: 17.4 -> 14.8
expected_saves: 4.26 -> 3.63
high_pressure_saves: 1.46 -> 1.24
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 5 by projected rating, fifa_overall 88.0)match_squad_rank=5
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0
scorer_weight=0.0
squad_weight_total=1.3395
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0
provider_weight=0.0
squad_weight_total=1.0624
-
Ben WhiteD7500.020.0199%00.16.936.227FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0142, quality 0.732)market_value_eur=32000000
quality_factor=0.732
boost_factor=1.0142
reference_quality=0.505
history_matches=19
history_shrink=0.2083
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0181)blend_weight=0.0181
history_matches=19
season_overlap_discount=1.0
per90_to_match_factor=0.8366
prior_reliability=0.1333
competition=Premier League
totalCross: 1.7465 -> 1.7603
wasFouled: 0.9206 -> 0.9115
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Alexander Isak', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.30 (squad xG sum 1.3911, xG scale 0.9352, xA scale 0.9100, team xA 1.04 = 0.80 x lambda)scoreline_reset=true
team_lambda=1.301
squad_xg_sum=1.3911
squad_xa_sum=1.1438
team_expected_assists=1.0408
team_xa_to_xg_ratio=0.8
expected_assists: 0.1179 -> 0.1073
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 9 by projected rating, fifa_overall 86.0)match_squad_rank=9
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0191
goal_rate=0.0
scorer_weight=0.0154
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.1017
assist_rate=0.363
provider_weight=0.1341
-
Ezri KonsaD9000.090.0577%10.46.952.431FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0107, quality 0.834)market_value_eur=53000000
quality_factor=0.834
boost_factor=1.0107
reference_quality=0.505
history_matches=41
history_shrink=0.1087
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0005)blend_weight=0.0005
history_matches=41
season_overlap_discount=1.0
per90_to_match_factor=0.9999
prior_reliability=0.0067
competition=Premier League
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Cody Gakpo', 'matchup_zone': 'Shape fallback'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.30 (squad xG sum 1.3911, xG scale 0.9352, xA scale 0.9100, team xA 1.04 = 0.80 x lambda)scoreline_reset=true
team_lambda=1.301
squad_xg_sum=1.3911
squad_xa_sum=1.1438
team_expected_assists=1.0408
team_xa_to_xg_ratio=0.8
expected_goals: 0.0948 -> 0.0887
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 7 by projected rating, fifa_overall 84.0)match_squad_rank=7
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0849
goal_rate=0.1542
scorer_weight=0.1109
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0076
assist_rate=0.0
provider_weight=0.0065
-
Gabriel MagalhãesD9000.190.10101%10.87.159.433FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0122, quality 0.871)market_value_eur=70000000
quality_factor=0.8707
boost_factor=1.0122
reference_quality=0.505
history_matches=40
history_shrink=0.1111
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0096)blend_weight=0.0096
history_matches=40
season_overlap_discount=1.0
per90_to_match_factor=0.9997
prior_reliability=0.1333
competition=Premier League
wonTackle: 0.8153 -> 0.8075
fouls: 0.82 -> 0.8265
onTargetScoringAttempt: 0.5264 -> 0.5213
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Alexander Isak', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.30 (squad xG sum 1.3911, xG scale 0.9352, xA scale 0.9100, team xA 1.04 = 0.80 x lambda)scoreline_reset=true
team_lambda=1.301
squad_xg_sum=1.3911
squad_xa_sum=1.1438
team_expected_assists=1.0408
team_xa_to_xg_ratio=0.8
expected_goals: 0.2057 -> 0.1924
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 3 by projected rating, fifa_overall 88.0)match_squad_rank=3
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.175
goal_rate=0.1574
scorer_weight=0.1561
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0327
assist_rate=0.0221
provider_weight=0.0277
-
Myles Lewis-SkellyD7400.020.0178%10.26.832.636FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0176, quality 0.869)market_value_eur=69000000
quality_factor=0.8692
boost_factor=1.0176
reference_quality=0.505
history_matches=26
history_shrink=0.1613
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0126)blend_weight=0.0126
history_matches=26
season_overlap_discount=1.0
per90_to_match_factor=0.8218
prior_reliability=0.12
competition=Premier League
fouls: 1.4186 -> 1.4065
wonTackle: 0.7693 -> 0.7596
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Florian Wirtz', 'matchup_zone': 'Left Wing vs Right Back — Flank Battle'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.30 (squad xG sum 1.3911, xG scale 0.9352, xA scale 0.9100, team xA 1.04 = 0.80 x lambda)scoreline_reset=true
team_lambda=1.301
squad_xg_sum=1.3911
squad_xa_sum=1.1438
team_expected_assists=1.0408
team_xa_to_xg_ratio=0.8
expected_assists: 0.0944 -> 0.0859
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 10 by projected rating, fifa_overall 78.0)match_squad_rank=10
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0197
goal_rate=0.0
scorer_weight=0.0159
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0823
assist_rate=0.0
provider_weight=0.0687
-
Declan RiceM8600.060.0441%10.67.359.133FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 1.0120, quality 0.897)market_value_eur=114000000
quality_factor=0.8967
boost_factor=1.012
reference_quality=0.505
history_matches=44
history_shrink=0.102
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0075)blend_weight=0.0075
history_matches=44
season_overlap_discount=1.0
per90_to_match_factor=0.9503
prior_reliability=0.1133
competition=Premier League
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Ryan Gravenberch', 'matchup_zone': 'CDM vs CDM', 'duel_win_rate': 0.415, 'pressing_faced': 'ULTRA_HIGH', 'numerical_situation': '1v1', 'xg_multiplier': 0.993, 'skill_edge': 0.0033, 'height_edge': -0.008, 'attacker_skill': 0.8988, 'defender_skill': 0.8915, 'attacker_role': 'CDM', 'attacker_mv_price_index': 0.85, 'defender_adjusted_parts': [{'player': 'Ryan Gravenberch', 'market_value': 81000000, 'role': 'CDM', 'price_index': 0.85, 'adjusted_quality': 0.8915}], 'xg_override': 0.0627}
aerialWon: 0.988 -> 1.2
totalShots: 0.9942 -> 0.9872
shotOffTarget: 0.7469 -> 0.7417
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.30 (squad xG sum 1.3911, xG scale 0.9352, xA scale 0.9100, team xA 1.04 = 0.80 x lambda)scoreline_reset=true
team_lambda=1.301
squad_xg_sum=1.3911
squad_xa_sum=1.1438
team_expected_assists=1.0408
team_xa_to_xg_ratio=0.8
expected_assists: 0.2143 -> 0.1951
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 1 by projected rating, fifa_overall 88.0)match_squad_rank=1
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0569
goal_rate=0.0847
scorer_weight=0.07
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=1
assist_probability=0.1772
assist_rate=0.2552
provider_weight=0.2253
-
Bruno GuimarãesM7900.070.1242%10.87.152.824FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 1.0140, quality 0.879)market_value_eur=77000000
quality_factor=0.8792
boost_factor=1.014
reference_quality=0.505
history_matches=35
history_shrink=0.125
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0011)blend_weight=0.0011
history_matches=35
season_overlap_discount=1.0
per90_to_match_factor=0.8807
prior_reliability=0.0133
competition=Premier League
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Ryan Gravenberch', 'matchup_zone': 'CDM vs CDM', 'duel_win_rate': 0.387, 'pressing_faced': 'ULTRA_HIGH', 'numerical_situation': '1v1', 'xg_multiplier': 0.9515, 'skill_edge': -0.001, 'height_edge': -0.032, 'attacker_skill': 0.8893, 'defender_skill': 0.8915, 'attacker_role': 'CDM', 'attacker_mv_price_index': 0.85, 'defender_adjusted_parts': [{'player': 'Ryan Gravenberch', 'market_value': 81000000, 'role': 'CDM', 'price_index': 0.85, 'adjusted_quality': 0.8915}], 'xg_override': 0.0769}
aerialWon: 0.9279 -> 1.1
totalShots: 1.024 -> 0.9743
shotOffTarget: 0.7029 -> 0.6688
onTargetScoringAttempt: 0.3211 -> 0.3055
expectedGoalsOnTarget: 0.1695 -> 0.1613
bigChanceMissed: 0.1347 -> 0.1282
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.30 (squad xG sum 1.3911, xG scale 0.9352, xA scale 0.9100, team xA 1.04 = 0.80 x lambda)scoreline_reset=true
team_lambda=1.301
squad_xg_sum=1.3911
squad_xa_sum=1.1438
team_expected_assists=1.0408
team_xa_to_xg_ratio=0.8
expected_assists: 0.1143 -> 0.104
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 4 by projected rating, fifa_overall 86.0)match_squad_rank=4
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0694
goal_rate=0.089
scorer_weight=0.0788
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0988
assist_rate=0.0989
provider_weight=0.0943
-
Noni MaduekeF7400.120.04178%20.96.940.534FBref Prior F_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0130, quality 0.817)market_value_eur=48000000
quality_factor=0.8168
boost_factor=1.013
reference_quality=0.505
history_matches=31
history_shrink=0.1389
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0018)blend_weight=0.0018
history_matches=31
season_overlap_discount=1.0
per90_to_match_factor=0.8197
prior_reliability=0.02
competition=Premier League
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=true
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Ronald Araújo, Jérémy Jacquet', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.18, 'pressing_faced': 'HIGH', 'numerical_situation': '1v2', 'xg_multiplier': 0.9427, 'skill_edge': -0.003, 'height_edge': -0.036, 'attacker_skill': 0.8168, 'defender_skill': 0.8234, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Ronald Araújo', 'market_value': 27000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.7581}, {'player': 'Jérémy Jacquet', 'market_value': 67000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.8886}], 'xg_override': 0.124}
totalShots: 2.0281 -> 1.9119
shotOffTarget: 1.4185 -> 1.3372
onTargetScoringAttempt: 0.6096 -> 0.5747
goals: 0.1589 -> 0.1498
expectedGoals: 0.1315 -> 0.124
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.30 (squad xG sum 1.3911, xG scale 0.9352, xA scale 0.9100, team xA 1.04 = 0.80 x lambda)scoreline_reset=true
team_lambda=1.301
squad_xg_sum=1.3911
squad_xa_sum=1.1438
team_expected_assists=1.0408
team_xa_to_xg_ratio=0.8
expected_goals: 0.124 -> 0.116
expected_assists: 0.1219 -> 0.1109
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 8 by projected rating, fifa_overall 80.0)match_squad_rank=8
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.1095
goal_rate=0.1498
scorer_weight=0.1332
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.105
assist_rate=0.0315
provider_weight=0.0887
-
Martin ØdegaardM8300.200.10103%20.77.351.926FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 1.0155, quality 0.888)market_value_eur=88000000
quality_factor=0.8879
boost_factor=1.0155
reference_quality=0.505
history_matches=32
history_shrink=0.1351
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0094)blend_weight=0.0094
history_matches=32
season_overlap_discount=1.0
per90_to_match_factor=0.9177
prior_reliability=0.1067
competition=Premier League
wonTackle: 0.3892 -> 0.4017
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Miloš Kerkez', 'matchup_zone': 'Left Wing vs Right Back — Flank Battle', 'duel_win_rate': 0.498, 'pressing_faced': 'HIGH', 'numerical_situation': '1v1', 'xg_multiplier': 1.0272, 'skill_edge': 0.0265, 'height_edge': -0.008, 'attacker_skill': 0.8879, 'defender_skill': 0.829, 'attacker_role': 'LW', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Miloš Kerkez', 'market_value': 36000000, 'role': 'RB', 'price_index': 0.7, 'adjusted_quality': 0.829}], 'xg_override': 0.2141}
aerialWon: 0.0502 -> 1.0
totalShots: 1.9598 -> 2.0131
shotOffTarget: 1.1923 -> 1.2247
onTargetScoringAttempt: 0.7627 -> 0.7834
goals: 0.2787 -> 0.2863
expectedGoals: 0.2084 -> 0.2141
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.30 (squad xG sum 1.3911, xG scale 0.9352, xA scale 0.9100, team xA 1.04 = 0.80 x lambda)scoreline_reset=true
team_lambda=1.301
squad_xg_sum=1.3911
squad_xa_sum=1.1438
team_expected_assists=1.0408
team_xa_to_xg_ratio=0.8
expected_goals: 0.2141 -> 0.2002
expected_assists: 0.2063 -> 0.1877
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 2 by projected rating, fifa_overall 86.0)match_squad_rank=2
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.1814
goal_rate=0.2863
scorer_weight=0.2502
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.1711
assist_rate=0.2328
provider_weight=0.2071
-
Eberechi EzeM7100.100.08ok11.16.849.433FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 1.0121, quality 0.859)market_value_eur=63000000
quality_factor=0.8589
boost_factor=1.0121
reference_quality=0.505
history_matches=39
history_shrink=0.1136
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0034)blend_weight=0.0034
history_matches=39
season_overlap_discount=1.0
per90_to_match_factor=0.794
prior_reliability=0.0467
competition=Premier League
wasFouled: 1.5846 -> 1.5909
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Ryan Gravenberch, Alexis Mac Allister', 'matchup_zone': 'Attacking Mid vs Double Pivot — Tight Space Battle', 'duel_win_rate': 0.209, 'pressing_faced': 'ULTRA_HIGH', 'numerical_situation': '1v2', 'xg_multiplier': 0.9538, 'skill_edge': -0.0115, 'height_edge': -0.02, 'attacker_skill': 0.865, 'defender_skill': 0.8904, 'attacker_role': 'CAM', 'attacker_mv_price_index': 0.95, 'defender_adjusted_parts': [{'player': 'Ryan Gravenberch', 'market_value': 81000000, 'role': 'CDM', 'price_index': 0.85, 'adjusted_quality': 0.8915}, {'player': 'Alexis Mac Allister', 'market_value': 77000000, 'role': 'CDM', 'price_index': 0.85, 'adjusted_quality': 0.8893}], 'xg_override': 0.1089}
aerialWon: 0.3971 -> 1.0
totalShots: 1.5033 -> 1.4338
shotOffTarget: 1.0325 -> 0.9848
onTargetScoringAttempt: 0.4703 -> 0.4486
expectedGoalsOnTarget: 0.2375 -> 0.2265
goals: 0.1165 -> 0.1111
expectedGoals: 0.1142 -> 0.1089
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.30 (squad xG sum 1.3911, xG scale 0.9352, xA scale 0.9100, team xA 1.04 = 0.80 x lambda)scoreline_reset=true
team_lambda=1.301
squad_xg_sum=1.3911
squad_xa_sum=1.1438
team_expected_assists=1.0408
team_xa_to_xg_ratio=0.8
expected_goals: 0.1089 -> 0.1018
expected_assists: 0.077 -> 0.0701
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 11 by projected rating, fifa_overall 84.0)match_squad_rank=11
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0968
goal_rate=0.1111
scorer_weight=0.1032
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0677
assist_rate=0.0703
provider_weight=0.0664
-
Kai HavertzF7510.320.2150%21.26.849.326FBref Prior F_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0206, quality 0.848)market_value_eur=58000000
quality_factor=0.8478
boost_factor=1.0206
reference_quality=0.505
history_matches=20
history_shrink=0.2
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0173)blend_weight=0.0173
history_matches=20
season_overlap_discount=1.0
per90_to_match_factor=0.8356
prior_reliability=0.1333
competition=Premier League
totalOffside: 0.9984 -> 1.0318
totalShots: 2.1953 -> 2.1717
wasFouled: 0.8924 -> 0.9059
totalCross: 0.7531 -> 0.74
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Ronald Araújo, Jérémy Jacquet', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.219, 'pressing_faced': 'HIGH', 'numerical_situation': '1v2', 'xg_multiplier': 1.0279, 'skill_edge': 0.011, 'height_edge': 0.008, 'attacker_skill': 0.8478, 'defender_skill': 0.8234, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Ronald Araújo', 'market_value': 27000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.7581}, {'player': 'Jérémy Jacquet', 'market_value': 67000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.8886}], 'xg_override': 0.337}
totalShots: 2.1956 -> 2.2569
shotOffTarget: 1.3759 -> 1.4143
onTargetScoringAttempt: 0.8197 -> 0.8426
bigChanceMissed: 0.5905 -> 0.607
expectedGoalsOnTarget: 0.3574 -> 0.3674
expectedGoals: 0.3279 -> 0.337
goals: 0.2755 -> 0.2832
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.30 (squad xG sum 1.3911, xG scale 0.9352, xA scale 0.9100, team xA 1.04 = 0.80 x lambda)scoreline_reset=true
team_lambda=1.301
squad_xg_sum=1.3911
squad_xa_sum=1.1438
team_expected_assists=1.0408
team_xa_to_xg_ratio=0.8
expected_goals: 0.337 -> 0.3152
expected_assists: 0.0596 -> 0.0542
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 14 by projected rating, fifa_overall 81.0)match_squad_rank=14
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=1
goal_probability=0.2704
goal_rate=0.2832
scorer_weight=0.2714
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0528
assist_rate=0.0695
provider_weight=0.0591
-
Team totals11.30147.0
Bench Candidates (7 modeled substitutes with empirical playing time)
PlayerPosExp MinApp ProbSubstitute Modeling Details
Illan MeslierG4.6m11.9%Market-value substitute prior
William SalibaD15.4m38.0%Market-value substitute prior
Jurriën TimberD15.3m37.7%Market-value substitute prior
Martín ZubimendiM18.9m72.8%Market-value substitute prior
Max DowmanM23.5m57.0%Market-value substitute prior
Bukayo SakaF27.1m37.1%Market-value substitute prior
Antagonist / tactical summary
Midfield is evenly contested — Ryan Gravenberch vs Declan Rice will be the pivotal duel. Total antagonist xG — Home: 1.29, Away: 0.92. Home danger zone: Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle. Away danger zone: Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle.
Midfield — possession 49.9% / 50.1%, dominance ratio 0.49, key duel: Ryan Gravenberch vs Declan Rice
Florian Wirtz xG 0.16Alexander Isak xG 0.48Bradley Barcola xG 0.17Martin Ødegaard xG 0.21Eberechi Eze xG 0.11Kai Havertz xG 0.34

Summary

Antagonist matchup analysis for Liverpool vs Arsenal. Most likely scoreline: 2-1. Lambdas derived from 6 home and 6 away individual player duels. Head-to-head: Liverpool 3W-5D-2L vs Arsenal over 10 meetings.
Tactical parity between 4-2-3-1 and 4-2-3-1. Match outcome driven primarily by individual player quality. Midfield is evenly contested — Ryan Gravenberch vs Declan Rice will be the pivotal duel. Total antagonist xG — Home: 1.29, Away: 0.92. Home danger zone: Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle. Away danger zone: Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle.

Racing Club vs Real Madrid

LaLiga · 20261101 · 4-2-3-1 vs 4-2-3-1
Predicted 0-2Winner: Real MadridWinning H 2-1 (2.9%)Winning A 0-2 (9.5%)Confidence 0.81λ home/away 0.92 / 2.77Most-likely P 9.5%
Actual vs predicted: result not available yet (upcoming fixture).
XGBoost Reasoning & FBref Dataset Tracing
Antagonist + XGBoost match analysis for Racing Club vs Real Madrid. Player statistics regressed using position-specific XGBoost models (G, D, M, F) with 2026-2027 FBref priors. Micro-duels resolved across 4-2-3-1 vs 4-2-3-1 (duel lambdas: Home 0.913, Away 3.316). Final calibrated Poisson lambdas: Home 0.924, Away 2.772 (most likely score 0-2).
Home Starters 11/11 XGBoost (8 FBref) Away Starters 11/11 XGBoost (10 FBref) Bench Modeled H: 7 / A: 7 Duel λ (H/A) 0.91 / 3.32 Final λ (H/A) 0.92 / 2.77
Modeling Pipeline Stages (5 layers)
  1. 1. XGBoost player regressions for volume & event rates with market-value quality scaling
  2. 2. Multi-source prior blending (FBref 2026-2027 tables + Sofascore season history)
  3. 3. Antagonist formation duel matrix resolving 1v1 and zonal matchups
  4. 4. Team-level prior calibration (FBref possession and attack/defense efficiencies)
  5. 5. Bivariate Poisson matrix with Dixon-Coles low-score correction

Standing & form context

MetricRacing ClubReal Madrid
League position15.003.00
Points per game1.202.01
Attack index1.001.30
Defense (concede) index0.851.33
Form multiplier0.961.04
Standing λ multiplier0.931.26

Lambda decomposition (how the goal rates were built)

StageRacing Club λReal Madrid λ
Pre-mismatch0.8673.482
Pre-calibration (Micro-duels)0.9133.316
Final λ0.9242.772
competition calibration scale 0.85competition observed total goals 2.984quality gap applied Truemismatch score pressure applied Truecompetitive underdog floor applied Falsestage discount 1.0

Scoreline distribution & markets

Top 5 scorelinesP
0-29.5%
1-28.8%
0-38.8%
1-38.2%
0-16.9%
Home win9.8%
Draw14.3%
Away win75.8%
Over 2.571.4%
BTTS yes56.6%
Pregame fair line — favorite Real Madrid (75.8%), fair total 3.70, fair spread -1.85

Projected players vs season baseline

Proj = projected for this match · Season = this season's per-game average from match data · deviation badge compares projected xG to the player's season xG/game.

Racing Club — projected line vs season baseline (4-2-3-1)

PlayerPosMinProj GProj xGSeason xG/gProj ShSeason Sh/gProj RtgSeason RtgRecModel / FBref Prior
Julen AgirrezabalaG9000.00-n/a0.06.839.219FBref Prior G_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost G_service raw output over 3 target models--
market_value_boostMarket-value quality scaling (boost 0.9989, quality 0.481)market_value_eur=6500000
quality_factor=0.4805
boost_factor=0.9989
reference_quality=0.505
history_matches=28
history_shrink=0.1515
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0197)blend_weight=0.0197
history_matches=28
season_overlap_discount=1.0
per90_to_match_factor=1.0
prior_reliability=0.2
competition=La Liga
saves: 2.7086 -> 2.7209
wasFouled: 0.2194 -> 0.2282
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Kylian Mbappé, Arda Güler', 'matchup_zone': 'Goalkeeper shot-stopping context', 'opponent_lambda': 3.3158}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 0 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=0
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 0.92 (squad xG sum 0.9911, xG scale 0.9323, xA scale 0.8699, team xA 0.74 = 0.80 x lambda)scoreline_reset=true
team_lambda=0.924
squad_xg_sum=0.9911
squad_xa_sum=0.8498
team_expected_assists=0.7392
team_xa_to_xg_ratio=0.8
shots_faced: 31.5 -> 26.3
expected_saves: 7.71 -> 6.43
high_pressure_saves: 2.65 -> 2.22
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 8 by projected rating, fifa_overall 82.0)match_squad_rank=8
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation skipped: 0 projected goalsteam_goals=0
allocation_applied=false
goals_allocated=0
goal_probability=0.0
scorer_weight=0.0
squad_weight_total=1.0403
-
integer_assist_projectionTeam scoreline allocation skipped: 0 projected assistsallocation_applied=false
team_assists=0
assists_allocated=0
assist_probability=0.0
provider_weight=0.0
squad_weight_total=0.7855
-
Alvaro MantillaD8700.040.0256%00.26.841.414XGBoost D_service
Step-by-step (9 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9928, quality 0.437)market_value_eur=1200000
quality_factor=0.4374
boost_factor=0.9928
reference_quality=0.505
history_matches=9
history_shrink=0.3571
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Kylian Mbappé', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 0 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=0
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 0.92 (squad xG sum 0.9911, xG scale 0.9323, xA scale 0.8699, team xA 0.74 = 0.80 x lambda)scoreline_reset=true
team_lambda=0.924
squad_xg_sum=0.9911
squad_xa_sum=0.8498
team_expected_assists=0.7392
team_xa_to_xg_ratio=0.8
-
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 11 by projected rating, fifa_overall 77.0)match_squad_rank=11
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation skipped: 0 projected goalsteam_goals=0
allocation_applied=false
goals_allocated=0
goal_probability=0.036
goal_rate=0.0
scorer_weight=0.0294
-
integer_assist_projectionTeam scoreline allocation skipped: 0 projected assistsallocation_applied=false
team_assists=0
assists_allocated=0
assist_probability=0.0194
assist_rate=0.1938
provider_weight=0.0245
-
Pablo RamónD8400.010.01142%10.26.939.014FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9922, quality 0.437)market_value_eur=1500000
quality_factor=0.4374
boost_factor=0.9922
reference_quality=0.505
history_matches=8
history_shrink=0.3846
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0300)blend_weight=0.03
history_matches=8
season_overlap_discount=1.0
per90_to_match_factor=0.9354
prior_reliability=0.12
competition=La Liga
wonTackle: 0.966 -> 0.9994
interceptionWon: 1.3422 -> 1.3643
totalShots: 0.5901 -> 0.5724
wasFouled: 1.2286 -> 1.2229
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=true
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Kylian Mbappé', 'matchup_zone': 'Shape fallback'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 0 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=0
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 0.92 (squad xG sum 0.9911, xG scale 0.9323, xA scale 0.8699, team xA 0.74 = 0.80 x lambda)scoreline_reset=true
team_lambda=0.924
squad_xg_sum=0.9911
squad_xa_sum=0.8498
team_expected_assists=0.7392
team_xa_to_xg_ratio=0.8
-
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 5 by projected rating, fifa_overall 69.0)match_squad_rank=5
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation skipped: 0 projected goalsteam_goals=0
allocation_applied=false
goals_allocated=0
goal_probability=0.0127
goal_rate=0.0
scorer_weight=0.0102
-
integer_assist_projectionTeam scoreline allocation skipped: 0 projected assistsallocation_applied=false
team_assists=0
assists_allocated=0
assist_probability=0.0071
assist_rate=0.0
provider_weight=0.0061
-
Jeanuël BelocianD9000.080.04101%10.56.735.511XGBoost D_service
Step-by-step (9 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0069, quality 0.556)market_value_eur=12900000
quality_factor=0.5559
boost_factor=1.0069
reference_quality=0.505
history_matches=6
history_shrink=0.4545
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Kylian Mbappé', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 0 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=0
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 0.92 (squad xG sum 0.9911, xG scale 0.9323, xA scale 0.8699, team xA 0.74 = 0.80 x lambda)scoreline_reset=true
team_lambda=0.924
squad_xg_sum=0.9911
squad_xa_sum=0.8498
team_expected_assists=0.7392
team_xa_to_xg_ratio=0.8
expected_goals: 0.0849 -> 0.0792
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 15 by projected rating, fifa_overall 71.0)match_squad_rank=15
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation skipped: 0 projected goalsteam_goals=0
allocation_applied=false
goals_allocated=0
goal_probability=0.0761
goal_rate=0.2715
scorer_weight=0.099
-
integer_assist_projectionTeam scoreline allocation skipped: 0 projected assistsallocation_applied=false
team_assists=0
assists_allocated=0
assist_probability=0.0072
assist_rate=0.0
provider_weight=0.0062
-
Aarón MartínM8700.04-n/a00.06.721.216XGBoost M_service
Step-by-step (9 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 0.9934, quality 0.461)market_value_eur=4900000
quality_factor=0.4609
boost_factor=0.9934
reference_quality=0.505
history_matches=5
history_shrink=0.5
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Marc Cucurella', 'matchup_zone': 'Left Wing vs Right Back — Flank Battle', 'duel_win_rate': 0.308, 'pressing_faced': 'ULTRA_HIGH', 'numerical_situation': '1v1', 'xg_multiplier': 0.7468, 'skill_edge': -0.1923, 'height_edge': 0.02, 'attacker_skill': 0.4609, 'defender_skill': 0.8882, 'attacker_role': 'LW', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Marc Cucurella', 'market_value': 62000000, 'role': 'RB', 'price_index': 0.7, 'adjusted_quality': 0.8882}], 'xg_override': 0.0392}
aerialWon: 0.358 -> 1.1
totalShots: 0.5796 -> 0.4328
shotOffTarget: 0.4269 -> 0.3188
onTargetScoringAttempt: 0.1527 -> 0.114
goals: 0.0664 -> 0.0496
expectedGoals: 0.0525 -> 0.0392
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 0 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=0
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 0.92 (squad xG sum 0.9911, xG scale 0.9323, xA scale 0.8699, team xA 0.74 = 0.80 x lambda)scoreline_reset=true
team_lambda=0.924
squad_xg_sum=0.9911
squad_xa_sum=0.8498
team_expected_assists=0.7392
team_xa_to_xg_ratio=0.8
expected_assists: 0.0846 -> 0.0736
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 16 by projected rating, fifa_overall 74.0)match_squad_rank=16
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation skipped: 0 projected goalsteam_goals=0
allocation_applied=false
goals_allocated=0
goal_probability=0.0358
goal_rate=0.0496
scorer_weight=0.0408
-
integer_assist_projectionTeam scoreline allocation skipped: 0 projected assistsallocation_applied=false
team_assists=0
assists_allocated=0
assist_probability=0.071
assist_rate=0.0937
provider_weight=0.0786
-
Iván MartínM8600.030.03ok00.47.156.934FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 0.9979, quality 0.437)market_value_eur=2700000
quality_factor=0.4374
boost_factor=0.9979
reference_quality=0.505
history_matches=43
history_shrink=0.1042
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0068)blend_weight=0.0068
history_matches=43
season_overlap_discount=1.0
per90_to_match_factor=0.9541
prior_reliability=0.1
competition=La Liga
wonTackle: 0.8235 -> 0.8352
totalCross: 0.2829 -> 0.2896
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Aurélien Tchouaméni', 'matchup_zone': 'CDM vs CDM', 'duel_win_rate': 0.18, 'pressing_faced': 'ULTRA_HIGH', 'numerical_situation': '1v1', 'xg_multiplier': 0.6456, 'skill_edge': -0.2011, 'height_edge': -0.04, 'attacker_skill': 0.4396, 'defender_skill': 0.8865, 'attacker_role': 'CDM', 'attacker_mv_price_index': 0.85, 'defender_adjusted_parts': [{'player': 'Aurélien Tchouaméni', 'market_value': 73000000, 'role': 'CDM', 'price_index': 0.85, 'adjusted_quality': 0.8865}], 'xg_override': 0.0274}
totalShots: 0.6618 -> 0.4273
aerialWon: 0.7754 -> 1.0
shotOffTarget: 0.4461 -> 0.288
onTargetScoringAttempt: 0.2144 -> 0.1384
goals: 0.0674 -> 0.0435
expectedGoalsOnTarget: 0.0567 -> 0.0366
expectedGoals: 0.0424 -> 0.0274
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 0 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=0
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 0.92 (squad xG sum 0.9911, xG scale 0.9323, xA scale 0.8699, team xA 0.74 = 0.80 x lambda)scoreline_reset=true
team_lambda=0.924
squad_xg_sum=0.9911
squad_xa_sum=0.8498
team_expected_assists=0.7392
team_xa_to_xg_ratio=0.8
expected_assists: 0.063 -> 0.0548
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 3 by projected rating, fifa_overall 77.0)match_squad_rank=3
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation skipped: 0 projected goalsteam_goals=0
allocation_applied=false
goals_allocated=0
goal_probability=0.0252
goal_rate=0.0435
scorer_weight=0.0308
-
integer_assist_projectionTeam scoreline allocation skipped: 0 projected assistsallocation_applied=false
team_assists=0
assists_allocated=0
assist_probability=0.0533
assist_rate=0.0783
provider_weight=0.0622
-
Matteo PratiM8100.020.01287%00.26.939.212FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 0.9946, quality 0.462)market_value_eur=5000000
quality_factor=0.4622
boost_factor=0.9946
reference_quality=0.505
history_matches=7
history_shrink=0.4167
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0072)blend_weight=0.0072
history_matches=7
season_overlap_discount=1.0
per90_to_match_factor=0.9009
prior_reliability=0.0267
competition=La Liga
interceptionWon: 0.5238 -> 0.5363
fouls: 0.6041 -> 0.616
wonTackle: 1.6075 -> 1.5959
wasFouled: 0.942 -> 0.9352
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Aurélien Tchouaméni', 'matchup_zone': 'CDM vs CDM', 'duel_win_rate': 0.21, 'pressing_faced': 'ULTRA_HIGH', 'numerical_situation': '1v1', 'xg_multiplier': 0.6912, 'skill_edge': -0.1861, 'height_edge': -0.024, 'attacker_skill': 0.473, 'defender_skill': 0.8865, 'attacker_role': 'CDM', 'attacker_mv_price_index': 0.85, 'defender_adjusted_parts': [{'player': 'Aurélien Tchouaméni', 'market_value': 73000000, 'role': 'CDM', 'price_index': 0.85, 'adjusted_quality': 0.8865}], 'xg_override': 0.0261}
aerialWon: 0.3767 -> 1.1
totalShots: 0.501 -> 0.3463
shotOffTarget: 0.3765 -> 0.2602
onTargetScoringAttempt: 0.1245 -> 0.0861
goals: 0.0507 -> 0.035
expectedGoals: 0.0377 -> 0.0261
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 0 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=0
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 0.92 (squad xG sum 0.9911, xG scale 0.9323, xA scale 0.8699, team xA 0.74 = 0.80 x lambda)scoreline_reset=true
team_lambda=0.924
squad_xg_sum=0.9911
squad_xa_sum=0.8498
team_expected_assists=0.7392
team_xa_to_xg_ratio=0.8
expected_assists: 0.0403 -> 0.0351
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 6 by projected rating, fifa_overall 72.0)match_squad_rank=6
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation skipped: 0 projected goalsteam_goals=0
allocation_applied=false
goals_allocated=0
goal_probability=0.024
goal_rate=0.035
scorer_weight=0.0271
-
integer_assist_projectionTeam scoreline allocation skipped: 0 projected assistsallocation_applied=false
team_assists=0
assists_allocated=0
assist_probability=0.0345
assist_rate=0.0562
provider_weight=0.0413
-
Sergio CanalesF7900.080.09ok21.57.148.125FBref Prior F_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9935, quality 0.440)market_value_eur=3200000
quality_factor=0.4399
boost_factor=0.9935
reference_quality=0.505
history_matches=10
history_shrink=0.3333
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0361)blend_weight=0.0361
history_matches=10
season_overlap_discount=1.0
per90_to_match_factor=0.8754
prior_reliability=0.1667
competition=La Liga
totalCross: 2.7414 -> 2.655
totalShots: 1.8875 -> 1.9341
wasFouled: 2.1823 -> 2.1414
interceptionWon: 0.5214 -> 0.5026
wonTackle: 0.5089 -> 0.4905
fouls: 0.7332 -> 0.7194
onTargetScoringAttempt: 0.8146 -> 0.8234
goalAssist: 0.1939 -> 0.1869
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Denzel Dumfries, Dean Huijsen', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.18, 'pressing_faced': 'HIGH', 'numerical_situation': '1v2', 'xg_multiplier': 0.6611, 'skill_edge': -0.1705, 'height_edge': -0.06, 'attacker_skill': 0.4399, 'defender_skill': 0.8189, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Denzel Dumfries', 'market_value': 26000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.7498}, {'player': 'Dean Huijsen', 'market_value': 66000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.8879}], 'xg_override': 0.082}
totalShots: 1.9341 -> 1.2786
shotOffTarget: 1.0729 -> 0.7093
onTargetScoringAttempt: 0.8234 -> 0.5443
bigChanceMissed: 0.1939 -> 0.1282
expectedGoalsOnTarget: 0.1803 -> 0.1192
goals: 0.166 -> 0.1097
expectedGoals: 0.1241 -> 0.082
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 0 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=0
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 0.92 (squad xG sum 0.9911, xG scale 0.9323, xA scale 0.8699, team xA 0.74 = 0.80 x lambda)scoreline_reset=true
team_lambda=0.924
squad_xg_sum=0.9911
squad_xa_sum=0.8498
team_expected_assists=0.7392
team_xa_to_xg_ratio=0.8
expected_goals: 0.082 -> 0.0765
expected_assists: 0.1514 -> 0.1317
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 2 by projected rating, fifa_overall 78.0)match_squad_rank=2
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation skipped: 0 projected goalsteam_goals=0
allocation_applied=false
goals_allocated=0
goal_probability=0.0736
goal_rate=0.1097
scorer_weight=0.0925
-
integer_assist_projectionTeam scoreline allocation skipped: 0 projected assistsallocation_applied=false
team_assists=0
assists_allocated=0
assist_probability=0.1234
assist_rate=0.1869
provider_weight=0.1549
-
Pablo GarcíaF7400.090.0647%10.86.734.031FBref Prior F_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9998, quality 0.501)market_value_eur=8199999
quality_factor=0.5011
boost_factor=0.9998
reference_quality=0.505
history_matches=24
history_shrink=0.1724
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0045)blend_weight=0.0045
history_matches=24
season_overlap_discount=1.0
per90_to_match_factor=0.8197
prior_reliability=0.04
competition=La Liga
wasFouled: 1.0313 -> 1.0512
fouls: 0.4718 -> 0.4881
totalShots: 1.7763 -> 1.7867
goals: 0.1969 -> 0.2021
totalCross: 1.1399 -> 1.1348
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Denzel Dumfries, Dean Huijsen', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.18, 'pressing_faced': 'HIGH', 'numerical_situation': '1v2', 'xg_multiplier': 0.7016, 'skill_edge': -0.143, 'height_edge': -0.06, 'attacker_skill': 0.5011, 'defender_skill': 0.8189, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Denzel Dumfries', 'market_value': 26000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.7498}, {'player': 'Dean Huijsen', 'market_value': 66000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.8879}], 'xg_override': 0.1005}
totalShots: 1.7867 -> 1.2535
shotOffTarget: 1.1593 -> 0.8134
onTargetScoringAttempt: 0.6204 -> 0.4353
goals: 0.2021 -> 0.1418
bigChanceMissed: 0.1948 -> 0.1367
expectedGoalsOnTarget: 0.1786 -> 0.1253
expectedGoals: 0.1432 -> 0.1005
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 0 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=0
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 0.92 (squad xG sum 0.9911, xG scale 0.9323, xA scale 0.8699, team xA 0.74 = 0.80 x lambda)scoreline_reset=true
team_lambda=0.924
squad_xg_sum=0.9911
squad_xa_sum=0.8498
team_expected_assists=0.7392
team_xa_to_xg_ratio=0.8
expected_goals: 0.1005 -> 0.0937
expected_assists: 0.0669 -> 0.0582
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 14 by projected rating, fifa_overall 70.0)match_squad_rank=14
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation skipped: 0 projected goalsteam_goals=0
allocation_applied=false
goals_allocated=0
goal_probability=0.0894
goal_rate=0.1418
scorer_weight=0.1171
-
integer_assist_projectionTeam scoreline allocation skipped: 0 projected assistsallocation_applied=false
team_assists=0
assists_allocated=0
assist_probability=0.0565
assist_rate=0.0
provider_weight=0.0466
-
Iñigo VicenteF8600.050.0365%10.57.251.824FBref Prior F_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9977, quality 0.482)market_value_eur=6600000
quality_factor=0.4818
boost_factor=0.9977
reference_quality=0.505
history_matches=10
history_shrink=0.3333
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0405)blend_weight=0.0405
history_matches=10
season_overlap_discount=1.0
per90_to_match_factor=0.9567
prior_reliability=0.1867
competition=La Liga
totalCross: 5.0983 -> 5.0026
totalShots: 1.0533 -> 1.0246
onTargetScoringAttempt: 0.4239 -> 0.4068
wonTackle: 1.0986 -> 1.0818
interceptionWon: 0.6638 -> 0.6508
fouls: 0.7837 -> 0.7935
wasFouled: 2.2458 -> 2.2379
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Denzel Dumfries, Dean Huijsen', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.18, 'pressing_faced': 'HIGH', 'numerical_situation': '1v2', 'xg_multiplier': 0.6976, 'skill_edge': -0.1517, 'height_edge': -0.054, 'attacker_skill': 0.4818, 'defender_skill': 0.8189, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Denzel Dumfries', 'market_value': 26000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.7498}, {'player': 'Dean Huijsen', 'market_value': 66000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.8879}], 'xg_override': 0.0552}
totalShots: 1.0362 -> 0.7229
shotOffTarget: 0.6294 -> 0.4391
onTargetScoringAttempt: 0.4068 -> 0.2838
goals: 0.1056 -> 0.0737
expectedGoalsOnTarget: 0.0992 -> 0.0692
expectedGoals: 0.0792 -> 0.0552
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 0 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=0
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 0.92 (squad xG sum 0.9911, xG scale 0.9323, xA scale 0.8699, team xA 0.74 = 0.80 x lambda)scoreline_reset=true
team_lambda=0.924
squad_xg_sum=0.9911
squad_xa_sum=0.8498
team_expected_assists=0.7392
team_xa_to_xg_ratio=0.8
expected_assists: 0.2773 -> 0.2412
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 1 by projected rating, fifa_overall 77.0)match_squad_rank=1
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation skipped: 0 projected goalsteam_goals=0
allocation_applied=false
goals_allocated=0
goal_probability=0.0502
goal_rate=0.0737
scorer_weight=0.0606
-
integer_assist_projectionTeam scoreline allocation skipped: 0 projected assistsallocation_applied=false
team_assists=0
assists_allocated=0
assist_probability=0.2143
assist_rate=0.3169
provider_weight=0.2704
-
Yassir ZabiriF8300.340.35ok21.66.851.114FBref Prior F_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0145, quality 0.650)market_value_eur=22000000
quality_factor=0.6503
boost_factor=1.0145
reference_quality=0.505
history_matches=10
history_shrink=0.3333
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0188)blend_weight=0.0188
history_matches=10
season_overlap_discount=1.0
per90_to_match_factor=0.9209
prior_reliability=0.0867
competition=La Liga
goals: 0.4988 -> 0.5294
totalOffside: 0.2014 -> 0.2242
onTargetScoringAttempt: 1.1981 -> 1.2156
totalShots: 2.6649 -> 2.6814
fouls: 1.2521 -> 1.2685
wasFouled: 0.5442 -> 0.534
wonTackle: 0.5396 -> 0.5295
interceptionWon: 0.3616 -> 0.3548
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=true
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Denzel Dumfries, Dean Huijsen', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.18, 'pressing_faced': 'HIGH', 'numerical_situation': '1v2', 'xg_multiplier': 0.8326, 'skill_edge': -0.0759, 'height_edge': -0.038, 'attacker_skill': 0.6503, 'defender_skill': 0.8189, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Denzel Dumfries', 'market_value': 26000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.7498}, {'player': 'Dean Huijsen', 'market_value': 66000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.8879}], 'xg_override': 0.3698}
totalShots: 2.6824 -> 2.2334
shotOffTarget: 1.4668 -> 1.2213
onTargetScoringAttempt: 1.2156 -> 1.0121
expectedGoalsOnTarget: 0.7432 -> 0.6188
goals: 0.5294 -> 0.4408
expectedGoals: 0.4441 -> 0.3698
bigChanceMissed: 0.224 -> 0.1865
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 0 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=0
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 0.92 (squad xG sum 0.9911, xG scale 0.9323, xA scale 0.8699, team xA 0.74 = 0.80 x lambda)scoreline_reset=true
team_lambda=0.924
squad_xg_sum=0.9911
squad_xa_sum=0.8498
team_expected_assists=0.7392
team_xa_to_xg_ratio=0.8
expected_goals: 0.3698 -> 0.3447
expected_assists: 0.0526 -> 0.0458
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 7 by projected rating, fifa_overall 66.0)match_squad_rank=7
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation skipped: 0 projected goalsteam_goals=0
allocation_applied=false
goals_allocated=0
goal_probability=0.2916
goal_rate=0.4408
scorer_weight=0.403
-
integer_assist_projectionTeam scoreline allocation skipped: 0 projected assistsallocation_applied=false
team_assists=0
assists_allocated=0
assist_probability=0.0448
assist_rate=0.0
provider_weight=0.0366
-
Team totals00.92106.9
Bench Candidates (7 modeled substitutes with empirical playing time)
PlayerPosExp MinApp ProbSubstitute Modeling Details
Simon ErikssonG4.4m10.9%Market-value substitute prior
Jorge SalinasD13.8m31.1%Market-value substitute prior
Facundo GonzálezD13.6m29.9%Market-value substitute prior
Gustavo PuertaM22.7m32.2%Market-value substitute prior
André AlmeidaM22.1m50.6%Market-value substitute prior
Andrés MartínF25.5m57.0%Market-value substitute prior

Real Madrid — projected line vs season baseline (4-2-3-1)

PlayerPosMinProj GProj xGSeason xG/gProj ShSeason Sh/gProj RtgSeason RtgRecModel / FBref Prior
Kylian MbappéF8921.290.7671%54.17.863.427FBref Prior F_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0129, quality 0.900)market_value_eur=212000000
quality_factor=0.9
boost_factor=1.0129
reference_quality=0.505
history_matches=41
history_shrink=0.1087
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0141)blend_weight=0.0141
history_matches=41
season_overlap_discount=1.0
per90_to_match_factor=0.9837
prior_reliability=0.2
competition=La Liga
totalShots: 3.8724 -> 3.9289
onTargetScoringAttempt: 2.0425 -> 2.0785
totalOffside: 1.3559 -> 1.3414
wasFouled: 1.7267 -> 1.7162
totalCross: 1.1122 -> 1.1058
fouls: 0.6096 -> 0.6149
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Alvaro Mantilla, Jeanuël Belocian', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.355, 'pressing_faced': 'LOW', 'numerical_situation': '1v2', 'xg_multiplier': 1.2278, 'skill_edge': 0.171, 'height_edge': -0.016, 'attacker_skill': 0.9, 'defender_skill': 0.52, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Alvaro Mantilla', 'market_value': 1200000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.4374}, {'player': 'Jeanuël Belocian', 'market_value': 12900000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.6027}], 'xg_override': 0.8703}
totalShots: 3.9289 -> 4.8239
onTargetScoringAttempt: 2.0785 -> 2.552
shotOffTarget: 1.8299 -> 2.2468
bigChanceMissed: 1.2781 -> 1.5693
expectedGoalsOnTarget: 1.1434 -> 1.4039
goals: 0.9862 -> 1.2109
expectedGoals: 0.7088 -> 0.8703
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
goals: 1.0 -> 0
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 2.77 (squad xG sum 1.8704, xG scale 1.4820, xA scale 1.8511, team xA 1.80 = 0.65 x lambda)scoreline_reset=true
team_lambda=2.772
squad_xg_sum=1.8704
squad_xa_sum=0.9733
team_expected_assists=1.8018
team_xa_to_xg_ratio=0.65
expected_goals: 0.8703 -> 1.2898
expected_assists: 0.1804 -> 0.3339
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 1 by projected rating, fifa_overall 91.0)match_squad_rank=1
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=2
goal_probability=0.7247
goal_rate=1.2109
scorer_weight=1.6122
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.2839
assist_rate=0.1516
provider_weight=0.2922
-
Jude BellinghamM8300.280.1578%21.57.164.927FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 1.0138, quality 0.899)market_value_eur=151000000
quality_factor=0.8995
boost_factor=1.0138
reference_quality=0.505
history_matches=38
history_shrink=0.1163
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0136)blend_weight=0.0136
history_matches=38
season_overlap_discount=1.0
per90_to_match_factor=0.9241
prior_reliability=0.18
competition=La Liga
totalShots: 1.6784 -> 1.693
wasFouled: 3.3107 -> 3.2983
onTargetScoringAttempt: 0.5848 -> 0.5956
goalAssist: 0.1251 -> 0.1327
goals: 0.1529 -> 0.1601
interceptionWon: 0.5104 -> 0.5035
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Iván Martín, Matteo Prati', 'matchup_zone': 'Attacking Mid vs Double Pivot — Tight Space Battle', 'duel_win_rate': 0.471, 'pressing_faced': 'LOW', 'numerical_situation': '1v2', 'xg_multiplier': 1.3403, 'skill_edge': 0.1995, 'height_edge': 0.032, 'attacker_skill': 0.8996, 'defender_skill': 0.4563, 'attacker_role': 'CAM', 'attacker_mv_price_index': 0.95, 'defender_adjusted_parts': [{'player': 'Iván Martín', 'market_value': 2700000, 'role': 'CDM', 'price_index': 0.85, 'adjusted_quality': 0.4396}, {'player': 'Matteo Prati', 'market_value': 5000000, 'role': 'CDM', 'price_index': 0.85, 'adjusted_quality': 0.473}], 'xg_override': 0.1859}
aerialWon: 0.6141 -> 1.2
totalShots: 1.693 -> 2.2691
shotOffTarget: 1.0936 -> 1.4658
onTargetScoringAttempt: 0.5956 -> 0.7983
expectedGoalsOnTarget: 0.1937 -> 0.2596
goals: 0.1601 -> 0.2146
expectedGoals: 0.1387 -> 0.1859
bigChanceMissed: 0.1282 -> 0.1718
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 2.77 (squad xG sum 1.8704, xG scale 1.4820, xA scale 1.8511, team xA 1.80 = 0.65 x lambda)scoreline_reset=true
team_lambda=2.772
squad_xg_sum=1.8704
squad_xa_sum=0.9733
team_expected_assists=1.8018
team_xa_to_xg_ratio=0.65
expected_goals: 0.1859 -> 0.2755
expected_assists: 0.1378 -> 0.2551
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 3 by projected rating, fifa_overall 90.0)match_squad_rank=3
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.2408
goal_rate=0.2146
scorer_weight=0.309
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.2252
assist_rate=0.1327
provider_weight=0.2482
-
Thibaut CourtoisG9000.00-n/a0.07.061.626FBref Prior G_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost G_service raw output over 3 target models--
market_value_boostMarket-value quality scaling (boost 1.0022, quality 0.574)market_value_eur=14500000
quality_factor=0.5737
boost_factor=1.0022
reference_quality=0.505
history_matches=41
history_shrink=0.1087
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0141)blend_weight=0.0141
history_matches=41
season_overlap_discount=1.0
per90_to_match_factor=1.0
prior_reliability=0.2
competition=La Liga
saves: 2.7796 -> 2.7639
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Yassir Zabiri, Pablo García', 'matchup_zone': 'Goalkeeper shot-stopping context', 'opponent_lambda': 0.913}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 2.77 (squad xG sum 1.8704, xG scale 1.4820, xA scale 1.8511, team xA 1.80 = 0.65 x lambda)scoreline_reset=true
team_lambda=2.772
squad_xg_sum=1.8704
squad_xa_sum=0.9733
team_expected_assists=1.8018
team_xa_to_xg_ratio=0.65
shots_faced: 8.7 -> 8.8
expected_saves: 2.13 -> 2.16
high_pressure_saves: 0.73 -> 0.74
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 9 by projected rating, fifa_overall 90.0)match_squad_rank=9
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.0
scorer_weight=0.0
squad_weight_total=3.1623
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0
provider_weight=0.0
squad_weight_total=1.7856
-
Denzel DumfriesD8500.100.03249%00.56.635.226FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0209, quality 0.686)market_value_eur=26000000
quality_factor=0.6858
boost_factor=1.0209
reference_quality=0.505
history_matches=8
history_shrink=0.3846
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0317)blend_weight=0.0317
history_matches=8
season_overlap_discount=1.0
per90_to_match_factor=0.9487
prior_reliability=0.1267
competition=La Liga
totalShots: 0.4178 -> 0.4845
wonTackle: 0.9635 -> 0.9962
fouls: 0.3127 -> 0.3344
interceptionWon: 0.5685 -> 0.5821
totalCross: 0.771 -> 0.7782
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Yassir Zabiri', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 2.77 (squad xG sum 1.8704, xG scale 1.4820, xA scale 1.8511, team xA 1.80 = 0.65 x lambda)scoreline_reset=true
team_lambda=2.772
squad_xg_sum=1.8704
squad_xa_sum=0.9733
team_expected_assists=1.8018
team_xa_to_xg_ratio=0.65
expected_goals: 0.0642 -> 0.0951
expected_assists: 0.0324 -> 0.06
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 18 by projected rating, fifa_overall 83.0)match_squad_rank=18
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.0907
goal_rate=0.0
scorer_weight=0.0761
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0582
assist_rate=0.0
provider_weight=0.048
-
Ibrahima KonatéD8900.050.02102%00.36.959.932FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0091, quality 0.809)market_value_eur=46000000
quality_factor=0.8089
boost_factor=1.0091
reference_quality=0.505
history_matches=45
history_shrink=0.1
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0087)blend_weight=0.0087
history_matches=45
season_overlap_discount=1.0
per90_to_match_factor=0.9923
prior_reliability=0.1333
competition=La Liga
wonTackle: 0.8508 -> 0.8606
fouls: 1.0684 -> 1.0634
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Iñigo Vicente', 'matchup_zone': 'Shape fallback'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 2.77 (squad xG sum 1.8704, xG scale 1.4820, xA scale 1.8511, team xA 1.80 = 0.65 x lambda)scoreline_reset=true
team_lambda=2.772
squad_xg_sum=1.8704
squad_xa_sum=0.9733
team_expected_assists=1.8018
team_xa_to_xg_ratio=0.65
expected_goals: 0.0323 -> 0.0479
expected_assists: 0.0095 -> 0.0176
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 14 by projected rating, fifa_overall 84.0)match_squad_rank=14
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.0468
goal_rate=0.0042
scorer_weight=0.0383
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0174
assist_rate=0.0
provider_weight=0.0148
-
Dean HuijsenD8400.100.0594%10.57.159.028FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0131, quality 0.864)market_value_eur=66000000
quality_factor=0.8644
boost_factor=1.0131
reference_quality=0.505
history_matches=36
history_shrink=0.122
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0159)blend_weight=0.0159
history_matches=36
season_overlap_discount=1.0
per90_to_match_factor=0.9372
prior_reliability=0.2
competition=La Liga
totalShots: 0.497 -> 0.504
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Yassir Zabiri', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 2.77 (squad xG sum 1.8704, xG scale 1.4820, xA scale 1.8511, team xA 1.80 = 0.65 x lambda)scoreline_reset=true
team_lambda=2.772
squad_xg_sum=1.8704
squad_xa_sum=0.9733
team_expected_assists=1.8018
team_xa_to_xg_ratio=0.65
expected_goals: 0.0644 -> 0.0954
expected_assists: 0.0283 -> 0.0524
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 6 by projected rating, fifa_overall 81.0)match_squad_rank=6
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.091
goal_rate=0.0206
scorer_weight=0.0763
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0511
assist_rate=0.0126
provider_weight=0.0419
-
Marc CucurellaD8900.030.0652%00.36.756.729FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0108, quality 0.857)market_value_eur=62000000
quality_factor=0.8569
boost_factor=1.0108
reference_quality=0.505
history_matches=44
history_shrink=0.102
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0080)blend_weight=0.008
history_matches=44
season_overlap_discount=1.0
per90_to_match_factor=0.9856
prior_reliability=0.12
competition=La Liga
fouls: 1.5234 -> 1.5113
totalCross: 1.3477 -> 1.337
wasFouled: 0.7167 -> 0.711
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Aarón Martín', 'matchup_zone': 'Left Wing vs Right Back — Flank Battle'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 2.77 (squad xG sum 1.8704, xG scale 1.4820, xA scale 1.8511, team xA 1.80 = 0.65 x lambda)scoreline_reset=true
team_lambda=2.772
squad_xg_sum=1.8704
squad_xa_sum=0.9733
team_expected_assists=1.8018
team_xa_to_xg_ratio=0.65
expected_goals: 0.0197 -> 0.0292
expected_assists: 0.0327 -> 0.0605
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 17 by projected rating, fifa_overall 85.0)match_squad_rank=17
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.0288
goal_rate=0.0
scorer_weight=0.0234
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0587
assist_rate=0.0476
provider_weight=0.0714
-
Aurélien TchouaméniM8300.100.0673%11.27.061.527XGBoost M_service
Step-by-step (9 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 1.0126, quality 0.875)market_value_eur=73000000
quality_factor=0.8747
boost_factor=1.0126
reference_quality=0.505
history_matches=39
history_shrink=0.1136
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=true
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Iván Martín', 'matchup_zone': 'CDM vs CDM', 'duel_win_rate': 0.661, 'pressing_faced': 'LOW', 'numerical_situation': '1v1', 'xg_multiplier': 1.3544, 'skill_edge': 0.2011, 'height_edge': 0.04, 'attacker_skill': 0.8865, 'defender_skill': 0.4396, 'attacker_role': 'CDM', 'attacker_mv_price_index': 0.85, 'defender_adjusted_parts': [{'player': 'Iván Martín', 'market_value': 2700000, 'role': 'CDM', 'price_index': 0.85, 'adjusted_quality': 0.4396}], 'xg_override': 0.0702}
totalShots: 0.837 -> 1.1336
shotOffTarget: 0.6569 -> 0.8897
aerialWon: 1.2886 -> 1.2
onTargetScoringAttempt: 0.1801 -> 0.2439
expectedGoals: 0.0518 -> 0.0702
goals: 0.0489 -> 0.0662
bigChanceMissed: 0.04 -> 0.0542
expectedGoalsOnTarget: 0.0347 -> 0.047
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 2.77 (squad xG sum 1.8704, xG scale 1.4820, xA scale 1.8511, team xA 1.80 = 0.65 x lambda)scoreline_reset=true
team_lambda=2.772
squad_xg_sum=1.8704
squad_xa_sum=0.9733
team_expected_assists=1.8018
team_xa_to_xg_ratio=0.65
expected_goals: 0.0702 -> 0.104
expected_assists: 0.041 -> 0.0759
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 8 by projected rating, fifa_overall 84.0)match_squad_rank=8
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.0988
goal_rate=0.0662
scorer_weight=0.1005
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0731
assist_rate=0.0579
provider_weight=0.09
-
Bernardo SilvaM7800.100.08ok10.86.958.233FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 1.0040, quality 0.641)market_value_eur=21000000
quality_factor=0.6408
boost_factor=1.004
reference_quality=0.505
history_matches=46
history_shrink=0.098
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0085)blend_weight=0.0085
history_matches=46
season_overlap_discount=1.0
per90_to_match_factor=0.8703
prior_reliability=0.1333
competition=La Liga
interceptionWon: 0.8982 -> 0.9054
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Iván Martín', 'matchup_zone': 'CDM vs CDM', 'duel_win_rate': 0.506, 'pressing_faced': 'LOW', 'numerical_situation': '1v1', 'xg_multiplier': 1.1261, 'skill_edge': 0.1058, 'height_edge': -0.02, 'attacker_skill': 0.6747, 'defender_skill': 0.4396, 'attacker_role': 'CDM', 'attacker_mv_price_index': 0.85, 'defender_adjusted_parts': [{'player': 'Iván Martín', 'market_value': 2700000, 'role': 'CDM', 'price_index': 0.85, 'adjusted_quality': 0.4396}], 'xg_override': 0.0662}
aerialWon: 0.1658 -> 0.9
totalShots: 0.5624 -> 0.6334
shotOffTarget: 0.424 -> 0.4775
onTargetScoringAttempt: 0.1384 -> 0.1559
expectedGoals: 0.0588 -> 0.0662
goals: 0.0575 -> 0.0648
expectedGoalsOnTarget: 0.0493 -> 0.0555
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 2.77 (squad xG sum 1.8704, xG scale 1.4820, xA scale 1.8511, team xA 1.80 = 0.65 x lambda)scoreline_reset=true
team_lambda=2.772
squad_xg_sum=1.8704
squad_xa_sum=0.9733
team_expected_assists=1.8018
team_xa_to_xg_ratio=0.65
expected_goals: 0.0662 -> 0.0981
expected_assists: 0.0892 -> 0.1651
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 11 by projected rating, fifa_overall 84.0)match_squad_rank=11
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.0934
goal_rate=0.0648
scorer_weight=0.0969
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.1522
assist_rate=0.0851
provider_weight=0.1602
-
Arda GülerM7400.310.11169%21.37.265.828FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 1.0121, quality 0.892)market_value_eur=97000000
quality_factor=0.8922
boost_factor=1.0121
reference_quality=0.505
history_matches=43
history_shrink=0.1042
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0072)blend_weight=0.0072
history_matches=43
season_overlap_discount=1.0
per90_to_match_factor=0.821
prior_reliability=0.1067
competition=La Liga
wonTackle: 0.7624 -> 0.768
wasFouled: 1.771 -> 1.7656
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Julen Agirrezabala', 'matchup_zone': 'Left Wing vs Right Back — Flank Battle', 'duel_win_rate': 0.533, 'pressing_faced': 'LOW', 'numerical_situation': '1v1', 'xg_multiplier': 1.166, 'skill_edge': 0.1569, 'height_edge': -0.044, 'attacker_skill': 0.8922, 'defender_skill': 0.5436, 'attacker_role': 'LW', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Julen Agirrezabala', 'market_value': 6500000, 'role': 'GK', 'price_index': 0.55, 'adjusted_quality': 0.5436}], 'xg_override': 0.208}
aerialWon: 0.2778 -> 0.9
totalShots: 1.9559 -> 2.2806
shotOffTarget: 1.2365 -> 1.4418
onTargetScoringAttempt: 0.7194 -> 0.8388
goals: 0.1788 -> 0.2085
expectedGoals: 0.1784 -> 0.208
expectedGoalsOnTarget: 0.1261 -> 0.147
bigChanceMissed: 0.106 -> 0.1236
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 2.77 (squad xG sum 1.8704, xG scale 1.4820, xA scale 1.8511, team xA 1.80 = 0.65 x lambda)scoreline_reset=true
team_lambda=2.772
squad_xg_sum=1.8704
squad_xa_sum=0.9733
team_expected_assists=1.8018
team_xa_to_xg_ratio=0.65
expected_goals: 0.208 -> 0.3083
expected_assists: 0.1926 -> 0.3565
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 2 by projected rating, fifa_overall 83.0)match_squad_rank=2
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.2653
goal_rate=0.2085
scorer_weight=0.3089
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.2999
assist_rate=0.1794
provider_weight=0.3371
-
Yan DiomandeF8400.270.07297%20.87.158.816FBref Prior F_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0394, quality 0.899)market_value_eur=132000000
quality_factor=0.8986
boost_factor=1.0394
reference_quality=0.505
history_matches=10
history_shrink=0.3333
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0101)blend_weight=0.0101
history_matches=10
season_overlap_discount=1.0
per90_to_match_factor=0.9386
prior_reliability=0.0467
competition=La Liga
totalCross: 2.5219 -> 2.5506
wonTackle: 1.8201 -> 1.8017
totalShots: 1.673 -> 1.6561
fouls: 1.2052 -> 1.193
wasFouled: 1.1578 -> 1.1461
interceptionWon: 0.9832 -> 0.9733
onTargetScoringAttempt: 0.6028 -> 0.5967
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Alvaro Mantilla, Jeanuël Belocian', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.354, 'pressing_faced': 'LOW', 'numerical_situation': '1v2', 'xg_multiplier': 1.2269, 'skill_edge': 0.1704, 'height_edge': -0.016, 'attacker_skill': 0.8986, 'defender_skill': 0.52, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Alvaro Mantilla', 'market_value': 1200000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.4374}, {'player': 'Jeanuël Belocian', 'market_value': 12900000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.6027}], 'xg_override': 0.179}
totalShots: 1.6669 -> 2.0451
shotOffTarget: 1.0702 -> 1.313
onTargetScoringAttempt: 0.5967 -> 0.7321
bigChanceMissed: 0.3636 -> 0.4461
expectedGoalsOnTarget: 0.2421 -> 0.297
goals: 0.2204 -> 0.2704
expectedGoals: 0.1459 -> 0.179
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 2.77 (squad xG sum 1.8704, xG scale 1.4820, xA scale 1.8511, team xA 1.80 = 0.65 x lambda)scoreline_reset=true
team_lambda=2.772
squad_xg_sum=1.8704
squad_xa_sum=0.9733
team_expected_assists=1.8018
team_xa_to_xg_ratio=0.65
expected_goals: 0.179 -> 0.2653
expected_assists: 0.1602 -> 0.2966
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 4 by projected rating, fifa_overall 84.0)match_squad_rank=4
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.233
goal_rate=0.2704
scorer_weight=0.3316
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=1
assist_probability=0.2567
assist_rate=0.4062
provider_weight=0.3707
-
Team totals22.77167.0
Bench Candidates (7 modeled substitutes with empirical playing time)
PlayerPosExp MinApp ProbSubstitute Modeling Details
Andriy LuninG4.8m12.7%Market-value substitute prior
Trent Alexander-ArnoldD12.9m44.3%Market-value substitute prior
Álvaro CarrerasD15.1m24.9%Market-value substitute prior
Federico ValverdeM23.8m34.3%Market-value substitute prior
Eduardo CamavingaM17.2m59.4%Market-value substitute prior
Vinícius JúniorF27.1m37.1%Market-value substitute prior
Antagonist / tactical summary
Away midfield dictates play with ~55% possession expected (Matteo Prati vs Jude Bellingham). Total antagonist xG — Home: 0.70, Away: 1.58. Home danger zone: Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle. Away danger zone: Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle.
Midfield — possession 45.2% / 54.8%, dominance ratio 0.35, key duel: Matteo Prati vs Jude Bellingham
Aarón Martín xG 0.04Yassir Zabiri xG 0.37Sergio Canales xG 0.08Arda Güler xG 0.21Jude Bellingham xG 0.19Kylian Mbappé xG 0.87

Summary

Antagonist matchup analysis for Racing Club vs Real Madrid. Most likely scoreline: 0-2. Lambdas derived from 7 home and 6 away individual player duels. Head-to-head: Racing Club 0W-1D-9L vs Real Madrid over 10 meetings.
Tactical parity between 4-2-3-1 and 4-2-3-1. Match outcome driven primarily by individual player quality. Away midfield dictates play with ~55% possession expected (Matteo Prati vs Jude Bellingham). Total antagonist xG — Home: 0.70, Away: 1.58. Home danger zone: Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle. Away danger zone: Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle.

Athletic Club vs Real Sociedad

LaLiga · 20261101 · 4-2-3-1 vs 4-2-3-1
Predicted 2-1Winner: Athletic ClubWinning H 2-1 (9.5%)Winning A 1-2 (6.9%)Confidence 0.74λ home/away 1.73 / 1.25Most-likely P 9.5%
Actual vs predicted: result not available yet (upcoming fixture).
XGBoost Reasoning & FBref Dataset Tracing
Antagonist + XGBoost match analysis for Athletic Club vs Real Sociedad. Player statistics regressed using position-specific XGBoost models (G, D, M, F) with 2026-2027 FBref priors. Micro-duels resolved across 4-2-3-1 vs 4-2-3-1 (duel lambdas: Home 1.269, Away 1.071). Final calibrated Poisson lambdas: Home 1.729, Away 1.255 (most likely score 2-1).
Home Starters 11/11 XGBoost (10 FBref) Away Starters 11/11 XGBoost (10 FBref) Bench Modeled H: 7 / A: 7 Duel λ (H/A) 1.27 / 1.07 Final λ (H/A) 1.73 / 1.25
FBref Team Priors: Athletic Club (Gls/90: 1.0, GA/90: 1.0 → E[λ]: 0.556) vs Real Sociedad (Gls/90: 0.75, GA/90: 0.75 → E[λ]: 0.556) | Blend Weight: 0.228
Modeling Pipeline Stages (5 layers)
  1. 1. XGBoost player regressions for volume & event rates with market-value quality scaling
  2. 2. Multi-source prior blending (FBref 2026-2027 tables + Sofascore season history)
  3. 3. Antagonist formation duel matrix resolving 1v1 and zonal matchups
  4. 4. Team-level prior calibration (FBref possession and attack/defense efficiencies)
  5. 5. Bivariate Poisson matrix with Dixon-Coles low-score correction

Standing & form context

MetricAthletic ClubReal Sociedad
League position7.005.00
Points per game1.351.70
Attack index1.001.12
Defense (concede) index1.090.90
Form multiplier0.981.02
Standing λ multiplier1.031.01

Lambda decomposition (how the goal rates were built)

StageAthletic Club λReal Sociedad λ
FBref Squad Prior E[λ] (weight 0.228)0.5560.556
Pre-competitive-floor1.3961.039
Pre-calibration (Micro-duels)1.2691.071
Final λ1.7291.255
competition calibration scale 1.225competition observed total goals 2.984quality gap applied Falsemismatch score pressure applied Falsecompetitive underdog floor applied Falsestage discount 1.0

Scoreline distribution & markets

Top 5 scorelinesP
1-111.1%
2-19.5%
1-08.7%
2-07.6%
1-26.9%
Home win48.5%
Draw23.8%
Away win27.8%
Over 2.557.3%
BTTS yes58.9%
Pregame fair line — favorite Athletic Club (48.5%), fair total 2.98, fair spread 0.47

Projected players vs season baseline

Proj = projected for this match · Season = this season's per-game average from match data · deviation badge compares projected xG to the player's season xG/game.

Athletic Club — projected line vs season baseline (4-2-3-1)

PlayerPosMinProj GProj xGSeason xG/gProj ShSeason Sh/gProj RtgSeason RtgRecModel / FBref Prior
Unai SimónG8400.00-n/a0.07.058.533FBref Prior G_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost G_service raw output over 3 target models--
market_value_boostMarket-value quality scaling (boost 1.0040, quality 0.641)market_value_eur=21000000
quality_factor=0.6408
boost_factor=1.004
reference_quality=0.505
history_matches=46
history_shrink=0.098
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0127)blend_weight=0.0127
history_matches=46
season_overlap_discount=1.0
per90_to_match_factor=0.9329
prior_reliability=0.2
competition=La Liga
saves: 2.9989 -> 3.0082
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Mikel Oyarzabal, Gonçalo Guedes', 'matchup_zone': 'Goalkeeper shot-stopping context', 'opponent_lambda': 1.0708}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.73 (squad xG sum 1.0016, xG scale 1.7263, xA scale 1.7263, team xA 1.22 = 0.71 x lambda)scoreline_reset=true
team_lambda=1.729
squad_xg_sum=1.0016
squad_xa_sum=0.7085
team_expected_assists=1.2231
team_xa_to_xg_ratio=0.7074
shots_faced: 10.2 -> 11.9
expected_saves: 2.5 -> 2.91
high_pressure_saves: 0.86 -> 1.0
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 5 by projected rating, fifa_overall 85.0)match_squad_rank=5
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.0
scorer_weight=0.0
squad_weight_total=1.9109
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0
provider_weight=0.0
squad_weight_total=1.1843
-
Hugo RincónD8000.050.01302%00.26.748.233FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9978, quality 0.442)market_value_eur=3400000
quality_factor=0.4424
boost_factor=0.9978
reference_quality=0.505
history_matches=38
history_shrink=0.1163
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0060)blend_weight=0.006
history_matches=38
season_overlap_discount=1.0
per90_to_match_factor=0.8864
prior_reliability=0.08
competition=La Liga
wonTackle: 1.0874 -> 1.0808
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Mikel Oyarzabal', 'matchup_zone': 'Shape fallback'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.73 (squad xG sum 1.0016, xG scale 1.7263, xA scale 1.7263, team xA 1.22 = 0.71 x lambda)scoreline_reset=true
team_lambda=1.729
squad_xg_sum=1.0016
squad_xa_sum=0.7085
team_expected_assists=1.2231
team_xa_to_xg_ratio=0.7074
expected_goals: 0.0296 -> 0.0511
expected_assists: 0.0568 -> 0.0981
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 14 by projected rating, fifa_overall 75.0)match_squad_rank=14
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.0498
goal_rate=0.0782
scorer_weight=0.0639
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0934
assist_rate=0.0304
provider_weight=0.0785
-
Aymeric LaporteD8500.090.0737%10.57.053.828FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9999, quality 0.503)market_value_eur=8400000
quality_factor=0.5035
boost_factor=0.9999
reference_quality=0.505
history_matches=33
history_shrink=0.1316
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0137)blend_weight=0.0137
history_matches=33
season_overlap_discount=1.0
per90_to_match_factor=0.9497
prior_reliability=0.16
competition=La Liga
fouls: 1.0724 -> 1.0631
wonTackle: 0.8242 -> 0.8292
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Mikel Oyarzabal', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.73 (squad xG sum 1.0016, xG scale 1.7263, xA scale 1.7263, team xA 1.22 = 0.71 x lambda)scoreline_reset=true
team_lambda=1.729
squad_xg_sum=1.0016
squad_xa_sum=0.7085
team_expected_assists=1.2231
team_xa_to_xg_ratio=0.7074
expected_goals: 0.0528 -> 0.0911
expected_assists: 0.0142 -> 0.0245
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 3 by projected rating, fifa_overall 84.0)match_squad_rank=3
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.0871
goal_rate=0.0
scorer_weight=0.0729
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0242
assist_rate=0.0031
provider_weight=0.0203
-
Dani VivianD7900.040.02124%10.46.748.322XGBoost D_service
Step-by-step (9 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0044, quality 0.613)market_value_eur=18200000
quality_factor=0.613
boost_factor=1.0044
reference_quality=0.505
history_matches=32
history_shrink=0.1351
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Mikel Oyarzabal', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.73 (squad xG sum 1.0016, xG scale 1.7263, xA scale 1.7263, team xA 1.22 = 0.71 x lambda)scoreline_reset=true
team_lambda=1.729
squad_xg_sum=1.0016
squad_xa_sum=0.7085
team_expected_assists=1.2231
team_xa_to_xg_ratio=0.7074
expected_goals: 0.0239 -> 0.0413
expected_assists: 0.0281 -> 0.0485
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 13 by projected rating, fifa_overall 78.0)match_squad_rank=13
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.0405
goal_rate=0.0578
scorer_weight=0.0516
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0473
assist_rate=0.0
provider_weight=0.0388
-
Yuri BerchicheD7800.080.02245%11.07.055.129FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9977, quality 0.437)market_value_eur=910000
quality_factor=0.4374
boost_factor=0.9977
reference_quality=0.505
history_matches=39
history_shrink=0.1136
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0054)blend_weight=0.0054
history_matches=39
season_overlap_discount=1.0
per90_to_match_factor=0.8656
prior_reliability=0.0733
competition=La Liga
totalShots: 1.2353 -> 1.2413
wonTackle: 1.0031 -> 0.9977
fouls: 0.656 -> 0.661
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Carlos Soler', 'matchup_zone': 'Left Wing vs Right Back — Flank Battle'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.73 (squad xG sum 1.0016, xG scale 1.7263, xA scale 1.7263, team xA 1.22 = 0.71 x lambda)scoreline_reset=true
team_lambda=1.729
squad_xg_sum=1.0016
squad_xa_sum=0.7085
team_expected_assists=1.2231
team_xa_to_xg_ratio=0.7074
expected_goals: 0.0476 -> 0.0822
expected_assists: 0.1455 -> 0.2511
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 2 by projected rating, fifa_overall 79.0)match_squad_rank=2
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.0789
goal_rate=0.0
scorer_weight=0.0658
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.2221
assist_rate=0.1268
provider_weight=0.2271
-
Mikel JauregizarM7000.130.03345%10.76.855.630FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 1.0057, quality 0.686)market_value_eur=26000000
quality_factor=0.6858
boost_factor=1.0057
reference_quality=0.505
history_matches=43
history_shrink=0.1042
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0050)blend_weight=0.005
history_matches=43
season_overlap_discount=1.0
per90_to_match_factor=0.7826
prior_reliability=0.0733
competition=La Liga
totalCross: 1.437 -> 1.4299
interceptionWon: 1.0022 -> 1.0078
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Beñat Turrientes', 'matchup_zone': 'CDM vs CDM', 'duel_win_rate': 0.489, 'pressing_faced': 'LOW', 'numerical_situation': '1v1', 'xg_multiplier': 1.1013, 'skill_edge': 0.0769, 'height_edge': -0.008, 'attacker_skill': 0.7219, 'defender_skill': 0.551, 'attacker_role': 'CDM', 'attacker_mv_price_index': 0.85, 'defender_adjusted_parts': [{'player': 'Beñat Turrientes', 'market_value': 10600000, 'role': 'CDM', 'price_index': 0.85, 'adjusted_quality': 0.551}], 'xg_override': 0.0755}
aerialWon: 1.65 -> 1.0
totalShots: 0.9626 -> 1.0601
shotOffTarget: 0.6842 -> 0.7535
onTargetScoringAttempt: 0.2784 -> 0.3066
expectedGoals: 0.0686 -> 0.0755
goals: 0.0554 -> 0.061
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.73 (squad xG sum 1.0016, xG scale 1.7263, xA scale 1.7263, team xA 1.22 = 0.71 x lambda)scoreline_reset=true
team_lambda=1.729
squad_xg_sum=1.0016
squad_xa_sum=0.7085
team_expected_assists=1.2231
team_xa_to_xg_ratio=0.7074
expected_goals: 0.0755 -> 0.1303
expected_assists: 0.0531 -> 0.0917
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 9 by projected rating, fifa_overall 79.0)match_squad_rank=9
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.1222
goal_rate=0.061
scorer_weight=0.1153
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0876
assist_rate=0.0561
provider_weight=0.0944
-
Beñat GerenabarrenaM7900.050.002138%00.16.835.713FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 0.9950, quality 0.465)market_value_eur=5200000
quality_factor=0.4646
boost_factor=0.995
reference_quality=0.505
history_matches=7
history_shrink=0.4167
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0379)blend_weight=0.0379
history_matches=7
season_overlap_discount=1.0
per90_to_match_factor=0.8832
prior_reliability=0.14
competition=La Liga
totalCross: 0.9188 -> 0.9796
interceptionWon: 1.8932 -> 1.933
fouls: 2.2103 -> 2.2381
wonTackle: 1.6337 -> 1.6515
wasFouled: 1.4033 -> 1.4139
onTargetScoringAttempt: 0.1373 -> 0.1478
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Beñat Turrientes', 'matchup_zone': 'CDM vs CDM', 'duel_win_rate': 0.362, 'pressing_faced': 'LOW', 'numerical_situation': '1v1', 'xg_multiplier': 0.915, 'skill_edge': -0.0338, 'height_edge': -0.024, 'attacker_skill': 0.4759, 'defender_skill': 0.551, 'attacker_role': 'CDM', 'attacker_mv_price_index': 0.85, 'defender_adjusted_parts': [{'player': 'Beñat Turrientes', 'market_value': 10600000, 'role': 'CDM', 'price_index': 0.85, 'adjusted_quality': 0.551}], 'xg_override': 0.0311}
aerialWon: 0.6976 -> 0.9
totalShots: 0.4711 -> 0.4311
shotOffTarget: 0.3233 -> 0.2958
onTargetScoringAttempt: 0.1478 -> 0.1352
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.73 (squad xG sum 1.0016, xG scale 1.7263, xA scale 1.7263, team xA 1.22 = 0.71 x lambda)scoreline_reset=true
team_lambda=1.729
squad_xg_sum=1.0016
squad_xa_sum=0.7085
team_expected_assists=1.2231
team_xa_to_xg_ratio=0.7074
expected_goals: 0.0311 -> 0.0537
expected_assists: 0.0444 -> 0.0766
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 10 by projected rating, fifa_overall 80.0)match_squad_rank=10
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.0523
goal_rate=0.0399
scorer_weight=0.0595
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0737
assist_rate=0.0595
provider_weight=0.0889
-
Álex BerenguerF8000.220.1372%11.26.953.934FBref Prior F_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9982, quality 0.451)market_value_eur=4099999
quality_factor=0.4511
boost_factor=0.9982
reference_quality=0.505
history_matches=40
history_shrink=0.1111
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0111)blend_weight=0.0111
history_matches=40
season_overlap_discount=1.0
per90_to_match_factor=0.8869
prior_reliability=0.1533
competition=La Liga
wasFouled: 1.1022 -> 1.0943
totalCross: 6.0045 -> 6.0106
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Mamadou Sarr, Jon Martin', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.18, 'pressing_faced': 'MEDIUM', 'numerical_situation': '1v2', 'xg_multiplier': 0.7289, 'skill_edge': -0.1264, 'height_edge': -0.058, 'attacker_skill': 0.4511, 'defender_skill': 0.732, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Mamadou Sarr', 'market_value': 24000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.732}, {'player': 'Jon Martin', 'market_value': 24000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.732}], 'xg_override': 0.1248}
totalShots: 1.7372 -> 1.2662
shotOffTarget: 1.1108 -> 0.8097
onTargetScoringAttempt: 0.626 -> 0.4563
expectedGoalsOnTarget: 0.2634 -> 0.192
goals: 0.2471 -> 0.1801
expectedGoals: 0.1712 -> 0.1248
bigChanceMissed: 0.1071 -> 0.0781
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.73 (squad xG sum 1.0016, xG scale 1.7263, xA scale 1.7263, team xA 1.22 = 0.71 x lambda)scoreline_reset=true
team_lambda=1.729
squad_xg_sum=1.0016
squad_xa_sum=0.7085
team_expected_assists=1.2231
team_xa_to_xg_ratio=0.7074
expected_goals: 0.1248 -> 0.2154
expected_assists: 0.1335 -> 0.2305
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 6 by projected rating, fifa_overall 81.0)match_squad_rank=6
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.1938
goal_rate=0.1801
scorer_weight=0.2692
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=1
assist_probability=0.2059
assist_rate=0.1628
provider_weight=0.2673
-
Maroan SannadiF6800.260.04587%10.46.632.416FBref Prior F_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9952, quality 0.437)market_value_eur=2800000
quality_factor=0.4374
boost_factor=0.9952
reference_quality=0.505
history_matches=16
history_shrink=0.2381
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0041)blend_weight=0.0041
history_matches=16
season_overlap_discount=1.0
per90_to_match_factor=0.7569
prior_reliability=0.0267
competition=La Liga
totalShots: 1.6905 -> 1.6835
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Mamadou Sarr, Jon Martin', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.18, 'pressing_faced': 'MEDIUM', 'numerical_situation': '1v2', 'xg_multiplier': 0.8198, 'skill_edge': -0.1326, 'height_edge': 0.01, 'attacker_skill': 0.4374, 'defender_skill': 0.732, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Mamadou Sarr', 'market_value': 24000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.732}, {'player': 'Jon Martin', 'market_value': 24000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.732}], 'xg_override': 0.1531}
totalShots: 1.6885 -> 1.3842
shotOffTarget: 1.2123 -> 0.9938
onTargetScoringAttempt: 0.4762 -> 0.3904
expectedGoalsOnTarget: 0.1902 -> 0.1559
expectedGoals: 0.1868 -> 0.1531
goals: 0.1723 -> 0.1413
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.73 (squad xG sum 1.0016, xG scale 1.7263, xA scale 1.7263, team xA 1.22 = 0.71 x lambda)scoreline_reset=true
team_lambda=1.729
squad_xg_sum=1.0016
squad_xa_sum=0.7085
team_expected_assists=1.2231
team_xa_to_xg_ratio=0.7074
expected_goals: 0.1531 -> 0.2643
expected_assists: 0.0204 -> 0.0352
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 17 by projected rating, fifa_overall 77.0)match_squad_rank=17
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.2323
goal_rate=0.1413
scorer_weight=0.2489
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0346
assist_rate=0.0
provider_weight=0.0282
-
Nico WilliamsF7110.270.13116%21.67.057.828FBref Prior F_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0117, quality 0.800)market_value_eur=44000000
quality_factor=0.8002
boost_factor=1.0117
reference_quality=0.505
history_matches=33
history_shrink=0.1316
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0068)blend_weight=0.0068
history_matches=33
season_overlap_discount=1.0
per90_to_match_factor=0.7934
prior_reliability=0.08
competition=La Liga
fouls: 1.4097 -> 1.4001
wasFouled: 0.9107 -> 0.9045
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Mamadou Sarr, Jon Martin', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.193, 'pressing_faced': 'MEDIUM', 'numerical_situation': '1v2', 'xg_multiplier': 0.9893, 'skill_edge': 0.0307, 'height_edge': -0.038, 'attacker_skill': 0.8002, 'defender_skill': 0.732, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Mamadou Sarr', 'market_value': 24000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.732}, {'player': 'Jon Martin', 'market_value': 24000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.732}], 'xg_override': 0.1568}
totalShots: 2.0092 -> 1.9877
shotOffTarget: 1.4326 -> 1.4173
onTargetScoringAttempt: 0.5685 -> 0.5624
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.73 (squad xG sum 1.0016, xG scale 1.7263, xA scale 1.7263, team xA 1.22 = 0.71 x lambda)scoreline_reset=true
team_lambda=1.729
squad_xg_sum=1.0016
squad_xa_sum=0.7085
team_expected_assists=1.2231
team_xa_to_xg_ratio=0.7074
expected_goals: 0.1568 -> 0.2707
expected_assists: 0.1086 -> 0.1875
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 4 by projected rating, fifa_overall 84.0)match_squad_rank=4
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=1
goal_probability=0.2372
goal_rate=0.183
scorer_weight=0.305
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.171
assist_rate=0.0723
provider_weight=0.15
-
Iñaki WilliamsF6710.450.19131%21.56.853.637FBref Prior F_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9995, quality 0.490)market_value_eur=7300000
quality_factor=0.4903
boost_factor=0.9995
reference_quality=0.505
history_matches=39
history_shrink=0.1136
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0098)blend_weight=0.0098
history_matches=39
season_overlap_discount=1.0
per90_to_match_factor=0.7448
prior_reliability=0.1333
competition=La Liga
totalShots: 2.3499 -> 2.3414
onTargetScoringAttempt: 0.8822 -> 0.8882
fouls: 0.894 -> 0.8889
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Mamadou Sarr, Jon Martin', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.18, 'pressing_faced': 'MEDIUM', 'numerical_situation': '1v2', 'xg_multiplier': 0.8195, 'skill_edge': -0.1088, 'height_edge': -0.014, 'attacker_skill': 0.4903, 'defender_skill': 0.732, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Mamadou Sarr', 'market_value': 24000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.732}, {'player': 'Jon Martin', 'market_value': 24000000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.732}], 'xg_override': 0.2584}
totalShots: 2.3559 -> 1.9307
shotOffTarget: 1.4677 -> 1.2028
onTargetScoringAttempt: 0.8882 -> 0.7279
goals: 0.4127 -> 0.3382
bigChanceMissed: 0.349 -> 0.286
expectedGoals: 0.3153 -> 0.2584
expectedGoalsOnTarget: 0.276 -> 0.2262
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.73 (squad xG sum 1.0016, xG scale 1.7263, xA scale 1.7263, team xA 1.22 = 0.71 x lambda)scoreline_reset=true
team_lambda=1.729
squad_xg_sum=1.0016
squad_xa_sum=0.7085
team_expected_assists=1.2231
team_xa_to_xg_ratio=0.7074
expected_goals: 0.2584 -> 0.4461
expected_assists: 0.0506 -> 0.0873
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 8 by projected rating, fifa_overall 80.0)match_squad_rank=8
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=1
goal_probability=0.3599
goal_rate=0.3382
scorer_weight=0.5576
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0836
assist_rate=0.2595
provider_weight=0.1091
-
Team totals21.73116.9
Bench Candidates (7 modeled substitutes with empirical playing time)
PlayerPosExp MinApp ProbSubstitute Modeling Details
Alex PadillaG4.4m10.9%Market-value substitute prior
Aitor ParedesD13.8m22.1%Market-value substitute prior
Jesús AresoD13.7m21.9%Market-value substitute prior
Oihan SancetM22.9m32.6%Market-value substitute prior
Beñat PradosM22.6m52.5%Market-value substitute prior
Robert NavarroF25.5m56.9%Market-value substitute prior

Real Sociedad — projected line vs season baseline (4-2-3-1)

PlayerPosMinProj GProj xGSeason xG/gProj ShSeason Sh/gProj RtgSeason RtgRecModel / FBref Prior
Álex RemiroG9000.00-n/a0.07.162.233FBref Prior G_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost G_service raw output over 3 target models--
market_value_boostMarket-value quality scaling (boost 1.0004, quality 0.518)market_value_eur=9600000
quality_factor=0.5177
boost_factor=1.0004
reference_quality=0.505
history_matches=46
history_shrink=0.098
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0170)blend_weight=0.017
history_matches=46
season_overlap_discount=1.0
per90_to_match_factor=1.0
prior_reliability=0.2667
competition=La Liga
saves: 2.978 -> 2.9996
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Iñaki Williams, Nico Williams', 'matchup_zone': 'Goalkeeper shot-stopping context', 'opponent_lambda': 1.2686}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.25 (squad xG sum 1.3010, xG scale 0.9646, xA scale 0.9646, team xA 0.85 = 0.67 x lambda)scoreline_reset=true
team_lambda=1.255
squad_xg_sum=1.301
squad_xa_sum=0.8767
team_expected_assists=0.8457
team_xa_to_xg_ratio=0.6739
shots_faced: 12.1 -> 16.4
expected_saves: 2.97 -> 4.01
high_pressure_saves: 1.01 -> 1.38
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 2 by projected rating, fifa_overall 81.0)match_squad_rank=2
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0
scorer_weight=0.0
squad_weight_total=1.3959
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0
provider_weight=0.0
squad_weight_total=0.8785
-
Jon AramburuD8600.010.0463%10.46.759.931FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0019, quality 0.567)market_value_eur=13900000
quality_factor=0.5671
boost_factor=1.0019
reference_quality=0.505
history_matches=43
history_shrink=0.1042
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0163)blend_weight=0.0163
history_matches=43
season_overlap_discount=1.0
per90_to_match_factor=0.9573
prior_reliability=0.24
competition=La Liga
fouls: 2.793 -> 2.8254
interceptionWon: 1.2068 -> 1.239
wonTackle: 1.6201 -> 1.6283
wasFouled: 1.6968 -> 1.7038
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Álex Berenguer', 'matchup_zone': 'Shape fallback'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.25 (squad xG sum 1.3010, xG scale 0.9646, xA scale 0.9646, team xA 0.85 = 0.67 x lambda)scoreline_reset=true
team_lambda=1.255
squad_xg_sum=1.301
squad_xa_sum=0.8767
team_expected_assists=0.8457
team_xa_to_xg_ratio=0.6739
-
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 14 by projected rating, fifa_overall 77.0)match_squad_rank=14
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0137
goal_rate=0.0045
scorer_weight=0.0117
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0231
assist_rate=0.0
provider_weight=0.0187
-
Mamadou SarrD8700.070.03159%00.16.825.121FBref Prior D_service
Step-by-step (9 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0189, quality 0.669)market_value_eur=24000000
quality_factor=0.6685
boost_factor=1.0189
reference_quality=0.505
history_matches=8
history_shrink=0.3846
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Nico Williams', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.25 (squad xG sum 1.3010, xG scale 0.9646, xA scale 0.9646, team xA 0.85 = 0.67 x lambda)scoreline_reset=true
team_lambda=1.255
squad_xg_sum=1.301
squad_xa_sum=0.8767
team_expected_assists=0.8457
team_xa_to_xg_ratio=0.6739
-
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 10 by projected rating, fifa_overall 77.0)match_squad_rank=10
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0642
goal_rate=0.0
scorer_weight=0.0531
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0077
assist_rate=0.0
provider_weight=0.0066
-
Jon MartinD9000.070.06ok10.47.053.232FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0063, quality 0.669)market_value_eur=24000000
quality_factor=0.6685
boost_factor=1.0063
reference_quality=0.505
history_matches=34
history_shrink=0.1282
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0222)blend_weight=0.0222
history_matches=34
season_overlap_discount=1.0
per90_to_match_factor=1.0
prior_reliability=0.2667
competition=La Liga
interceptionWon: 1.2874 -> 1.2643
wonTackle: 0.8433 -> 0.8579
fouls: 1.411 -> 1.4019
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Nico Williams', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.25 (squad xG sum 1.3010, xG scale 0.9646, xA scale 0.9646, team xA 0.85 = 0.67 x lambda)scoreline_reset=true
team_lambda=1.255
squad_xg_sum=1.301
squad_xa_sum=0.8767
team_expected_assists=0.8457
team_xa_to_xg_ratio=0.6739
-
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 6 by projected rating, fifa_overall 78.0)match_squad_rank=6
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0684
goal_rate=0.1736
scorer_weight=0.0885
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0085
assist_rate=0.126
provider_weight=0.0106
-
Sergio GómezD8600.010.02ok10.46.859.332FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0021, quality 0.575)market_value_eur=14600000
quality_factor=0.5748
boost_factor=1.0021
reference_quality=0.505
history_matches=45
history_shrink=0.1
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0165)blend_weight=0.0165
history_matches=45
season_overlap_discount=1.0
per90_to_match_factor=0.9584
prior_reliability=0.2533
competition=La Liga
totalCross: 4.2214 -> 4.2474
wasFouled: 0.339 -> 0.3334
fouls: 0.4172 -> 0.4228
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Maroan Sannadi', 'matchup_zone': 'Shape fallback'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.25 (squad xG sum 1.3010, xG scale 0.9646, xA scale 0.9646, team xA 0.85 = 0.67 x lambda)scoreline_reset=true
team_lambda=1.255
squad_xg_sum=1.301
squad_xa_sum=0.8767
team_expected_assists=0.8457
team_xa_to_xg_ratio=0.6739
-
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 12 by projected rating, fifa_overall 78.0)match_squad_rank=12
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0128
goal_rate=0.0
scorer_weight=0.0103
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0945
assist_rate=0.116
provider_weight=0.1078
-
Beñat TurrientesM7800.070.03164%10.66.949.733FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 1.0010, quality 0.529)market_value_eur=10600000
quality_factor=0.5295
boost_factor=1.001
reference_quality=0.505
history_matches=32
history_shrink=0.1351
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0170)blend_weight=0.017
history_matches=32
season_overlap_discount=1.0
per90_to_match_factor=0.8618
prior_reliability=0.1933
competition=La Liga
fouls: 0.6634 -> 0.6521
wasFouled: 0.9162 -> 0.9057
onTargetScoringAttempt: 0.3734 -> 0.3824
interceptionWon: 0.435 -> 0.4276
wonTackle: 0.8128 -> 0.8192
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=true
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Mikel Jauregizar', 'matchup_zone': 'CDM vs CDM', 'duel_win_rate': 0.351, 'pressing_faced': 'MEDIUM', 'numerical_situation': '1v1', 'xg_multiplier': 0.8987, 'skill_edge': -0.0769, 'height_edge': 0.008, 'attacker_skill': 0.551, 'defender_skill': 0.7219, 'attacker_role': 'CDM', 'attacker_mv_price_index': 0.85, 'defender_adjusted_parts': [{'player': 'Mikel Jauregizar', 'market_value': 26000000, 'role': 'CDM', 'price_index': 0.85, 'adjusted_quality': 0.7219}], 'xg_override': 0.0693}
aerialWon: 0.2815 -> 1.0
totalShots: 1.0695 -> 0.9612
shotOffTarget: 0.6871 -> 0.6175
onTargetScoringAttempt: 0.3824 -> 0.3437
expectedGoalsOnTarget: 0.1996 -> 0.1794
goals: 0.0873 -> 0.0785
expectedGoals: 0.0771 -> 0.0693
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.25 (squad xG sum 1.3010, xG scale 0.9646, xA scale 0.9646, team xA 0.85 = 0.67 x lambda)scoreline_reset=true
team_lambda=1.255
squad_xg_sum=1.301
squad_xa_sum=0.8767
team_expected_assists=0.8457
team_xa_to_xg_ratio=0.6739
-
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 7 by projected rating, fifa_overall 81.0)match_squad_rank=7
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0646
goal_rate=0.0785
scorer_weight=0.072
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0703
assist_rate=0.0667
provider_weight=0.0677
-
Jon GorrotxategiM7800.030.01378%00.16.950.027FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 1.0068, quality 0.694)market_value_eur=27000000
quality_factor=0.6941
boost_factor=1.0068
reference_quality=0.505
history_matches=37
history_shrink=0.119
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0015)blend_weight=0.0015
history_matches=37
season_overlap_discount=1.0
per90_to_match_factor=0.8701
prior_reliability=0.02
competition=La Liga
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Mikel Jauregizar', 'matchup_zone': 'CDM vs CDM', 'duel_win_rate': 0.424, 'pressing_faced': 'MEDIUM', 'numerical_situation': '1v1', 'xg_multiplier': 1.0056, 'skill_edge': 0.0038, 'height_edge': 0.0, 'attacker_skill': 0.7304, 'defender_skill': 0.7219, 'attacker_role': 'CDM', 'attacker_mv_price_index': 0.85, 'defender_adjusted_parts': [{'player': 'Mikel Jauregizar', 'market_value': 26000000, 'role': 'CDM', 'price_index': 0.85, 'adjusted_quality': 0.7219}], 'xg_override': 0.0325}
aerialWon: 0.9891 -> 1.0
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.25 (squad xG sum 1.3010, xG scale 0.9646, xA scale 0.9646, team xA 0.85 = 0.67 x lambda)scoreline_reset=true
team_lambda=1.255
squad_xg_sum=1.301
squad_xa_sum=0.8767
team_expected_assists=0.8457
team_xa_to_xg_ratio=0.6739
-
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 8 by projected rating, fifa_overall 79.0)match_squad_rank=8
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0309
goal_rate=0.0454
scorer_weight=0.0363
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0342
assist_rate=0.0453
provider_weight=0.0385
-
Luka SučićM8100.150.0964%21.26.955.434FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 1.0037, quality 0.593)market_value_eur=16300000
quality_factor=0.5932
boost_factor=1.0037
reference_quality=0.505
history_matches=31
history_shrink=0.1389
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0187)blend_weight=0.0187
history_matches=31
season_overlap_discount=1.0
per90_to_match_factor=0.9029
prior_reliability=0.2067
competition=La Liga
totalCross: 1.0135 -> 1.0272
interceptionWon: 0.6075 -> 0.5962
totalShots: 1.671 -> 1.6774
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Mikel Jauregizar, Beñat Gerenabarrena', 'matchup_zone': 'Attacking Mid vs Double Pivot — Tight Space Battle', 'duel_win_rate': 0.281, 'pressing_faced': 'LOW', 'numerical_situation': '1v2', 'xg_multiplier': 1.061, 'skill_edge': 0.0015, 'height_edge': 0.04, 'attacker_skill': 0.6022, 'defender_skill': 0.5989, 'attacker_role': 'CAM', 'attacker_mv_price_index': 0.95, 'defender_adjusted_parts': [{'player': 'Mikel Jauregizar', 'market_value': 26000000, 'role': 'CDM', 'price_index': 0.85, 'adjusted_quality': 0.7219}, {'player': 'Beñat Gerenabarrena', 'market_value': 5200000, 'role': 'CDM', 'price_index': 0.85, 'adjusted_quality': 0.4759}], 'xg_override': 0.1567}
aerialWon: 0.4427 -> 1.2
totalShots: 1.6774 -> 1.7797
shotOffTarget: 1.1072 -> 1.1747
onTargetScoringAttempt: 0.5641 -> 0.5985
expectedGoalsOnTarget: 0.2826 -> 0.2998
bigChanceMissed: 0.1874 -> 0.1988
goals: 0.1523 -> 0.1616
expectedGoals: 0.1477 -> 0.1567
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.25 (squad xG sum 1.3010, xG scale 0.9646, xA scale 0.9646, team xA 0.85 = 0.67 x lambda)scoreline_reset=true
team_lambda=1.255
squad_xg_sum=1.301
squad_xa_sum=0.8767
team_expected_assists=0.8457
team_xa_to_xg_ratio=0.6739
expected_goals: 0.1567 -> 0.1512
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 9 by projected rating, fifa_overall 76.0)match_squad_rank=9
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.1403
goal_rate=0.1616
scorer_weight=0.1548
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.113
assist_rate=0.1376
provider_weight=0.129
-
Carlos SolerM8400.130.0955%10.87.159.633FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 0.9993, quality 0.482)market_value_eur=6600000
quality_factor=0.4818
boost_factor=0.9993
reference_quality=0.505
history_matches=42
history_shrink=0.1064
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0106)blend_weight=0.0106
history_matches=42
season_overlap_discount=1.0
per90_to_match_factor=0.9369
prior_reliability=0.1533
competition=La Liga
totalShots: 1.4607 -> 1.4495
wonTackle: 0.2835 -> 0.2934
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Yuri Berchiche', 'matchup_zone': 'Left Wing vs Right Back — Flank Battle', 'duel_win_rate': 0.496, 'pressing_faced': 'LOW', 'numerical_situation': '1v1', 'xg_multiplier': 1.0234, 'skill_edge': 0.0199, 'height_edge': -0.004, 'attacker_skill': 0.4818, 'defender_skill': 0.4374, 'attacker_role': 'LW', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Yuri Berchiche', 'market_value': 910000, 'role': 'RB', 'price_index': 0.7, 'adjusted_quality': 0.4374}], 'xg_override': 0.1374}
aerialWon: 0.1221 -> 1.1
totalShots: 1.456 -> 1.4901
shotOffTarget: 1.0179 -> 1.0417
onTargetScoringAttempt: 0.4381 -> 0.4484
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.25 (squad xG sum 1.3010, xG scale 0.9646, xA scale 0.9646, team xA 0.85 = 0.67 x lambda)scoreline_reset=true
team_lambda=1.255
squad_xg_sum=1.301
squad_xa_sum=0.8767
team_expected_assists=0.8457
team_xa_to_xg_ratio=0.6739
expected_assists: 0.1665 -> 0.1607
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 3 by projected rating, fifa_overall 79.0)match_squad_rank=3
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.1241
goal_rate=0.1472
scorer_weight=0.1394
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.1485
assist_rate=0.1262
provider_weight=0.1308
-
Gonçalo GuedesF7600.210.1360%21.67.058.232FBref Prior F_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9989, quality 0.471)market_value_eur=5700000
quality_factor=0.4708
boost_factor=0.9989
reference_quality=0.505
history_matches=41
history_shrink=0.1087
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0028)blend_weight=0.0028
history_matches=41
season_overlap_discount=1.0
per90_to_match_factor=0.8418
prior_reliability=0.04
competition=La Liga
totalShots: 2.1061 -> 2.1258
onTargetScoringAttempt: 0.8021 -> 0.8127
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Aymeric Laporte, Dani Vivian', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.18, 'pressing_faced': 'LOW', 'numerical_situation': '1v2', 'xg_multiplier': 0.865, 'skill_edge': -0.0598, 'height_edge': -0.032, 'attacker_skill': 0.4708, 'defender_skill': 0.6037, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Aymeric Laporte', 'market_value': 8400000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.5365}, {'player': 'Dani Vivian', 'market_value': 18200000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.6709}], 'xg_override': 0.2226}
totalShots: 2.1258 -> 1.8388
shotOffTarget: 1.304 -> 1.128
onTargetScoringAttempt: 0.8127 -> 0.703
bigChanceMissed: 0.3962 -> 0.3427
goals: 0.3402 -> 0.2943
expectedGoals: 0.2573 -> 0.2226
expectedGoalsOnTarget: 0.2522 -> 0.2182
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.25 (squad xG sum 1.3010, xG scale 0.9646, xA scale 0.9646, team xA 0.85 = 0.67 x lambda)scoreline_reset=true
team_lambda=1.255
squad_xg_sum=1.301
squad_xa_sum=0.8767
team_expected_assists=0.8457
team_xa_to_xg_ratio=0.6739
expected_goals: 0.2226 -> 0.2147
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 5 by projected rating, fifa_overall 81.0)match_squad_rank=5
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.1932
goal_rate=0.2943
scorer_weight=0.2684
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=1
assist_probability=0.1231
assist_rate=0.2343
provider_weight=0.1642
-
Mikel OyarzabalF8210.280.32ok21.67.162.835FBref Prior F_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0058, quality 0.694)market_value_eur=27000000
quality_factor=0.6941
boost_factor=1.0058
reference_quality=0.505
history_matches=44
history_shrink=0.102
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0133)blend_weight=0.0133
history_matches=44
season_overlap_discount=1.0
per90_to_match_factor=0.9091
prior_reliability=0.2
competition=La Liga
wasFouled: 1.2792 -> 1.2904
wonTackle: 0.7353 -> 0.7255
goalAssist: 0.119 -> 0.1255
goals: 0.4055 -> 0.4001
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Aymeric Laporte, Dani Vivian', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.217, 'pressing_faced': 'LOW', 'numerical_situation': '1v2', 'xg_multiplier': 1.0246, 'skill_edge': 0.0407, 'height_edge': -0.024, 'attacker_skill': 0.6941, 'defender_skill': 0.6037, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Aymeric Laporte', 'market_value': 8400000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.5365}, {'player': 'Dani Vivian', 'market_value': 18200000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.6709}], 'xg_override': 0.2938}
totalShots: 2.2955 -> 2.352
shotOffTarget: 1.3968 -> 1.4312
onTargetScoringAttempt: 0.8987 -> 0.9208
bigChanceMissed: 0.4844 -> 0.4963
goals: 0.4001 -> 0.4099
expectedGoals: 0.2867 -> 0.2938
expectedGoalsOnTarget: 0.2834 -> 0.2904
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.25 (squad xG sum 1.3010, xG scale 0.9646, xA scale 0.9646, team xA 0.85 = 0.67 x lambda)scoreline_reset=true
team_lambda=1.255
squad_xg_sum=1.301
squad_xa_sum=0.8767
team_expected_assists=0.8457
team_xa_to_xg_ratio=0.6739
expected_goals: 0.2938 -> 0.2835
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 1 by projected rating, fifa_overall 90.0)match_squad_rank=1
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=1
goal_probability=0.2469
goal_rate=0.4099
scorer_weight=0.3544
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.1034
assist_rate=0.1255
provider_weight=0.1174
-
Team totals11.25136.9
Bench Candidates (7 modeled substitutes with empirical playing time)
PlayerPosExp MinApp ProbSubstitute Modeling Details
Unai MarreroG4.4m10.9%Market-value substitute prior
Héctor FortD14.1m32.3%Market-value substitute prior
Igor ZubeldiaD24.9m31.6%Market-value substitute prior
Arsen ZakharyanM12.2m69.8%Market-value substitute prior
Brais MéndezM22.2m50.9%Market-value substitute prior
Takefusa KuboF18.9m44.7%Market-value substitute prior
Antagonist / tactical summary
Midfield is evenly contested — Mikel Jauregizar vs Jon Gorrotxategi will be the pivotal duel. Total antagonist xG — Home: 0.80, Away: 0.91. Home danger zone: Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle. Away danger zone: Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle.
Midfield — possession 49.8% / 50.2%, dominance ratio 0.48, key duel: Mikel Jauregizar vs Jon Gorrotxategi
Nico Williams xG 0.16Álex Berenguer xG 0.12Maroan Sannadi xG 0.15Carlos Soler xG 0.14Luka Sučić xG 0.16Mikel Oyarzabal xG 0.29

Summary

Antagonist matchup analysis for Athletic Club vs Real Sociedad. Most likely scoreline: 2-1. Lambdas derived from 6 home and 6 away individual player duels. Head-to-head: Athletic Club 4W-2D-4L vs Real Sociedad over 10 meetings.
Tactical parity between 4-2-3-1 and 4-2-3-1. Match outcome driven primarily by individual player quality. Midfield is evenly contested — Mikel Jauregizar vs Jon Gorrotxategi will be the pivotal duel. Total antagonist xG — Home: 0.80, Away: 0.91. Home danger zone: Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle. Away danger zone: Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle.

Getafe vs Sevilla

LaLiga · 20261101 · 5-3-2 vs 4-4-2
Predicted 1-2Winner: SevillaWinning H 2-1 (7.4%)Winning A 1-2 (9.2%)Confidence 0.72λ home/away 1.33 / 1.66Most-likely P 9.2%
Actual vs predicted: result not available yet (upcoming fixture).
XGBoost Reasoning & FBref Dataset Tracing
Antagonist + XGBoost match analysis for Getafe vs Sevilla. Player statistics regressed using position-specific XGBoost models (G, D, M, F) with 2026-2027 FBref priors. Micro-duels resolved across 5-3-2 vs 4-4-2 (duel lambdas: Home 0.981, Away 1.293). Final calibrated Poisson lambdas: Home 1.326, Away 1.658 (most likely score 1-2).
Home Starters 11/11 XGBoost (10 FBref) Away Starters 11/11 XGBoost (6 FBref) Bench Modeled H: 7 / A: 7 Duel λ (H/A) 0.98 / 1.29 Final λ (H/A) 1.33 / 1.66
FBref Team Priors: Getafe (Gls/90: 0.3333333333333333, GA/90: 0.33 → E[λ]: 0.494) vs Sevilla (Gls/90: 2.0, GA/90: 2.0 → E[λ]: 0.489) | Blend Weight: 0.228
Modeling Pipeline Stages (5 layers)
  1. 1. XGBoost player regressions for volume & event rates with market-value quality scaling
  2. 2. Multi-source prior blending (FBref 2026-2027 tables + Sofascore season history)
  3. 3. Antagonist formation duel matrix resolving 1v1 and zonal matchups
  4. 4. Team-level prior calibration (FBref possession and attack/defense efficiencies)
  5. 5. Bivariate Poisson matrix with Dixon-Coles low-score correction

Standing & form context

MetricGetafeSevilla
League position18.006.00
Points per game1.071.57
Attack index0.701.03
Defense (concede) index1.031.00
Form multiplier0.971.03
Standing λ multiplier0.871.02

Lambda decomposition (how the goal rates were built)

StageGetafe λSevilla λ
FBref Squad Prior E[λ] (weight 0.228)0.4940.489
Pre-competitive-floor0.9321.452
Pre-calibration (Micro-duels)0.9811.293
Final λ1.3261.658
competition calibration scale 1.252competition observed total goals 2.984quality gap applied Truemismatch score pressure applied Falsecompetitive underdog floor applied Falsestage discount 1.0

Scoreline distribution & markets

Top 5 scorelinesP
1-111.2%
1-29.2%
0-18.3%
2-17.4%
0-27.0%
Home win30.6%
Draw24.2%
Away win45.2%
Over 2.557.3%
BTTS yes59.5%
Pregame fair line — favorite Sevilla (45.2%), fair total 2.98, fair spread -0.33

Projected players vs season baseline

Proj = projected for this match · Season = this season's per-game average from match data · deviation badge compares projected xG to the player's season xG/game.

Getafe — projected line vs season baseline (5-3-2)

PlayerPosMinProj GProj xGSeason xG/gProj ShSeason Sh/gProj RtgSeason RtgRecModel / FBref Prior
Enes ÜnalF8700.290.09233%20.76.745.530FBref Prior F_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9991, quality 0.484)market_value_eur=6800000
quality_factor=0.4842
boost_factor=0.9991
reference_quality=0.505
history_matches=31
history_shrink=0.1389
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0150)blend_weight=0.015
history_matches=31
season_overlap_discount=1.0
per90_to_match_factor=0.9662
prior_reliability=0.1667
competition=La Liga
wonTackle: 0.8121 -> 0.829
totalOffside: 0.358 -> 0.3701
wasFouled: 1.427 -> 1.4172
totalShots: 1.9243 -> 1.9186
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Andrés Castrin, Kike Salas', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.18, 'pressing_faced': 'LOW', 'numerical_situation': '1v2', 'xg_multiplier': 0.9191, 'skill_edge': -0.047, 'height_edge': -0.008, 'attacker_skill': 0.4842, 'defender_skill': 0.5887, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Andrés Castrin', 'market_value': 8700000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.5411}, {'player': 'Kike Salas', 'market_value': 15400000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.6363}], 'xg_override': 0.2069}
totalShots: 1.9202 -> 1.7649
shotOffTarget: 1.2622 -> 1.1601
onTargetScoringAttempt: 0.658 -> 0.6048
expectedGoalsOnTarget: 0.2313 -> 0.2126
expectedGoals: 0.2251 -> 0.2069
goals: 0.2223 -> 0.2043
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.33 (squad xG sum 0.9446, xG scale 1.4038, xA scale 1.4866, team xA 0.86 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.326
squad_xg_sum=0.9446
squad_xa_sum=0.5798
team_expected_assists=0.8619
team_xa_to_xg_ratio=0.65
expected_goals: 0.2069 -> 0.2905
expected_assists: 0.0386 -> 0.0574
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 12 by projected rating, fifa_overall 75.0)match_squad_rank=12
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.2521
goal_rate=0.2043
scorer_weight=0.2876
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0558
assist_rate=0.0
provider_weight=0.0459
-
Martín SatrianoF7710.280.1675%21.76.861.834FBref Prior F_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0011, quality 0.529)market_value_eur=10600000
quality_factor=0.5295
boost_factor=1.0011
reference_quality=0.505
history_matches=28
history_shrink=0.1515
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0177)blend_weight=0.0177
history_matches=28
season_overlap_discount=1.0
per90_to_match_factor=0.8584
prior_reliability=0.18
competition=La Liga
wasFouled: 1.9834 -> 1.9933
interceptionWon: 0.5072 -> 0.4982
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Andrés Castrin, Kike Salas', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.18, 'pressing_faced': 'LOW', 'numerical_situation': '1v2', 'xg_multiplier': 0.9608, 'skill_edge': -0.0266, 'height_edge': 0.0, 'attacker_skill': 0.5295, 'defender_skill': 0.5887, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Andrés Castrin', 'market_value': 8700000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.5411}, {'player': 'Kike Salas', 'market_value': 15400000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.6363}], 'xg_override': 0.2029}
totalShots: 1.8752 -> 1.8017
shotOffTarget: 1.2798 -> 1.2296
onTargetScoringAttempt: 0.5903 -> 0.5672
expectedGoalsOnTarget: 0.2644 -> 0.254
goals: 0.2299 -> 0.2209
expectedGoals: 0.2112 -> 0.2029
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.33 (squad xG sum 0.9446, xG scale 1.4038, xA scale 1.4866, team xA 0.86 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.326
squad_xg_sum=0.9446
squad_xa_sum=0.5798
team_expected_assists=0.8619
team_xa_to_xg_ratio=0.65
expected_goals: 0.2029 -> 0.2848
expected_assists: 0.0694 -> 0.1032
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 4 by projected rating, fifa_overall 77.0)match_squad_rank=4
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=1
goal_probability=0.2478
goal_rate=0.2209
scorer_weight=0.3051
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0981
assist_rate=0.119
provider_weight=0.129
-
Orel MangalaM8700.050.02226%10.36.846.010FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 1.0001, quality 0.506)market_value_eur=8600000
quality_factor=0.5059
boost_factor=1.0001
reference_quality=0.505
history_matches=7
history_shrink=0.4167
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0542)blend_weight=0.0542
history_matches=7
season_overlap_discount=1.0
per90_to_match_factor=0.9683
prior_reliability=0.2
competition=La Liga
interceptionWon: 2.4551 -> 2.4095
wasFouled: 0.9361 -> 0.9728
totalCross: 0.4455 -> 0.4214
wonTackle: 0.2326 -> 0.255
totalShots: 0.6875 -> 0.7027
fouls: 2.091 -> 2.1001
onTargetScoringAttempt: 0.1655 -> 0.1565
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Lucien Agoumé', 'matchup_zone': 'Central Mid vs Central Mid — Box-to-Box Midfield Contest', 'duel_win_rate': 0.338, 'pressing_faced': 'LOW', 'numerical_situation': '1v1', 'xg_multiplier': 0.8799, 'skill_edge': -0.0537, 'height_edge': -0.028, 'attacker_skill': 0.5172, 'defender_skill': 0.6365, 'attacker_role': 'CM', 'attacker_mv_price_index': 0.9, 'defender_adjusted_parts': [{'player': 'Lucien Agoumé', 'market_value': 18500000, 'role': 'CM', 'price_index': 0.9, 'adjusted_quality': 0.6365}], 'xg_override': 0.0385}
aerialWon: 0.3877 -> 1.0
totalShots: 0.7027 -> 0.6183
shotOffTarget: 0.522 -> 0.4593
onTargetScoringAttempt: 0.1565 -> 0.1377
goals: 0.0459 -> 0.0404
expectedGoals: 0.0438 -> 0.0385
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.33 (squad xG sum 0.9446, xG scale 1.4038, xA scale 1.4866, team xA 0.86 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.326
squad_xg_sum=0.9446
squad_xa_sum=0.5798
team_expected_assists=0.8619
team_xa_to_xg_ratio=0.65
expected_goals: 0.0385 -> 0.054
expected_assists: 0.043 -> 0.0639
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 6 by projected rating, fifa_overall 75.0)match_squad_rank=6
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0526
goal_rate=0.0404
scorer_weight=0.0552
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0619
assist_rate=0.0541
provider_weight=0.0715
-
Ramón TerratsM7100.170.07137%11.06.859.232FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 0.9977, quality 0.440)market_value_eur=3200000
quality_factor=0.4399
boost_factor=0.9977
reference_quality=0.505
history_matches=38
history_shrink=0.1163
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0151)blend_weight=0.0151
history_matches=38
season_overlap_discount=1.0
per90_to_match_factor=0.7922
prior_reliability=0.2
competition=La Liga
totalCross: 1.4756 -> 1.5052
totalShots: 1.6917 -> 1.7062
wasFouled: 2.0806 -> 2.0891
fouls: 0.8907 -> 0.8972
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Lucien Agoumé', 'matchup_zone': 'Central Mid vs Central Mid — Box-to-Box Midfield Contest', 'duel_win_rate': 0.31, 'pressing_faced': 'LOW', 'numerical_situation': '1v1', 'xg_multiplier': 0.8376, 'skill_edge': -0.0865, 'height_edge': -0.024, 'attacker_skill': 0.4443, 'defender_skill': 0.6365, 'attacker_role': 'CM', 'attacker_mv_price_index': 0.9, 'defender_adjusted_parts': [{'player': 'Lucien Agoumé', 'market_value': 18500000, 'role': 'CM', 'price_index': 0.9, 'adjusted_quality': 0.6365}], 'xg_override': 0.1237}
aerialWon: 0.7146 -> 1.0
totalShots: 1.7062 -> 1.4291
shotOffTarget: 1.1508 -> 0.9639
onTargetScoringAttempt: 0.5407 -> 0.4529
bigChanceMissed: 0.1694 -> 0.1419
expectedGoals: 0.1477 -> 0.1237
goals: 0.1412 -> 0.1183
expectedGoalsOnTarget: 0.141 -> 0.1181
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.33 (squad xG sum 0.9446, xG scale 1.4038, xA scale 1.4866, team xA 0.86 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.326
squad_xg_sum=0.9446
squad_xa_sum=0.5798
team_expected_assists=0.8619
team_xa_to_xg_ratio=0.65
expected_goals: 0.1237 -> 0.1737
expected_assists: 0.1031 -> 0.1533
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 2 by projected rating, fifa_overall 82.0)match_squad_rank=2
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.1595
goal_rate=0.1183
scorer_weight=0.1683
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.1421
assist_rate=0.1068
provider_weight=0.157
-
Francho SerranoM7900.070.01486%10.36.844.712FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 0.9923, quality 0.439)market_value_eur=3100000
quality_factor=0.4387
boost_factor=0.9923
reference_quality=0.505
history_matches=8
history_shrink=0.3846
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0300)blend_weight=0.03
history_matches=8
season_overlap_discount=1.0
per90_to_match_factor=0.8789
prior_reliability=0.12
competition=La Liga
totalCross: 1.3016 -> 1.3358
totalShots: 0.8822 -> 0.8557
interceptionWon: 0.6562 -> 0.6805
wonTackle: 0.1061 -> 0.1176
onTargetScoringAttempt: 0.2454 -> 0.238
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Lucien Agoumé', 'matchup_zone': 'Central Mid vs Central Mid — Box-to-Box Midfield Contest', 'duel_win_rate': 0.301, 'pressing_faced': 'LOW', 'numerical_situation': '1v1', 'xg_multiplier': 0.8249, 'skill_edge': -0.0871, 'height_edge': -0.032, 'attacker_skill': 0.4429, 'defender_skill': 0.6365, 'attacker_role': 'CM', 'attacker_mv_price_index': 0.9, 'defender_adjusted_parts': [{'player': 'Lucien Agoumé', 'market_value': 18500000, 'role': 'CM', 'price_index': 0.9, 'adjusted_quality': 0.6365}], 'xg_override': 0.0472}
aerialWon: 0.1727 -> 1.0
totalShots: 0.8748 -> 0.7216
shotOffTarget: 0.6368 -> 0.5253
onTargetScoringAttempt: 0.238 -> 0.1963
goals: 0.0614 -> 0.0506
expectedGoals: 0.0572 -> 0.0472
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.33 (squad xG sum 0.9446, xG scale 1.4038, xA scale 1.4866, team xA 0.86 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.326
squad_xg_sum=0.9446
squad_xa_sum=0.5798
team_expected_assists=0.8619
team_xa_to_xg_ratio=0.65
expected_goals: 0.0472 -> 0.0663
expected_assists: 0.0734 -> 0.1091
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 5 by projected rating, fifa_overall 79.0)match_squad_rank=5
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0641
goal_rate=0.0506
scorer_weight=0.0686
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.1034
assist_rate=0.0688
provider_weight=0.105
-
DavinchiD6600.010.00402%00.16.730.323FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9958, quality 0.437)market_value_eur=1800000
quality_factor=0.4374
boost_factor=0.9958
reference_quality=0.505
history_matches=19
history_shrink=0.2083
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0045)blend_weight=0.0045
history_matches=19
season_overlap_discount=1.0
per90_to_match_factor=0.7354
prior_reliability=0.0333
competition=La Liga
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=true
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Youssouf Fofana', 'matchup_zone': 'LM vs CB'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.33 (squad xG sum 0.9446, xG scale 1.4038, xA scale 1.4866, team xA 0.86 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.326
squad_xg_sum=0.9446
squad_xa_sum=0.5798
team_expected_assists=0.8619
team_xa_to_xg_ratio=0.65
expected_assists: 0.0311 -> 0.0462
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 11 by projected rating, fifa_overall 69.0)match_squad_rank=11
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0117
goal_rate=0.0
scorer_weight=0.0101
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0451
assist_rate=0.0
provider_weight=0.037
-
David SoriaG8400.00-n/a0.07.066.034FBref Prior G_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost G_service raw output over 3 target models--
market_value_boostMarket-value quality scaling (boost 0.9981, quality 0.437)market_value_eur=2700000
quality_factor=0.4374
boost_factor=0.9981
reference_quality=0.505
history_matches=48
history_shrink=0.0943
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0123)blend_weight=0.0123
history_matches=48
season_overlap_discount=1.0
per90_to_match_factor=0.9328
prior_reliability=0.2
competition=La Liga
saves: 2.9971 -> 2.9908
wasFouled: 0.2123 -> 0.2173
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Félix Correia, Lucas Stassin', 'matchup_zone': 'Goalkeeper shot-stopping context', 'opponent_lambda': 1.2934}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.33 (squad xG sum 0.9446, xG scale 1.4038, xA scale 1.4866, team xA 0.86 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.326
squad_xg_sum=0.9446
squad_xa_sum=0.5798
team_expected_assists=0.8619
team_xa_to_xg_ratio=0.65
shots_faced: 12.3 -> 15.8
expected_saves: 3.01 -> 3.87
high_pressure_saves: 1.03 -> 1.33
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 1 by projected rating, fifa_overall 80.0)match_squad_rank=1
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0
scorer_weight=0.0
squad_weight_total=1.327
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0
provider_weight=0.0
squad_weight_total=0.9122
-
Andrés GarcíaD7600.050.01208%10.46.742.524FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9991, quality 0.494)market_value_eur=7600000
quality_factor=0.4939
boost_factor=0.9991
reference_quality=0.505
history_matches=14
history_shrink=0.2632
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0285)blend_weight=0.0285
history_matches=14
season_overlap_discount=1.0
per90_to_match_factor=0.8491
prior_reliability=0.1667
competition=La Liga
wonTackle: 1.1103 -> 1.1367
interceptionWon: 0.7181 -> 0.6976
fouls: 0.6506 -> 0.632
totalShots: 0.5503 -> 0.5632
totalCross: 2.9733 -> 2.9854
wasFouled: 0.1355 -> 0.1413
onTargetScoringAttempt: 0.1875 -> 0.1822
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Isaac Romero', 'matchup_zone': 'Shape fallback'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.33 (squad xG sum 0.9446, xG scale 1.4038, xA scale 1.4866, team xA 0.86 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.326
squad_xg_sum=0.9446
squad_xa_sum=0.5798
team_expected_assists=0.8619
team_xa_to_xg_ratio=0.65
expected_goals: 0.0325 -> 0.0456
expected_assists: 0.0415 -> 0.0617
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 10 by projected rating, fifa_overall 73.0)match_squad_rank=10
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0446
goal_rate=0.0
scorer_weight=0.0365
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0598
assist_rate=0.0
provider_weight=0.0494
-
Dani CarvajalD7700.030.01212%00.16.738.521XGBoost D_service
Step-by-step (9 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9961, quality 0.442)market_value_eur=3400000
quality_factor=0.4424
boost_factor=0.9961
reference_quality=0.505
history_matches=19
history_shrink=0.2083
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Gabriel Suazo', 'matchup_zone': 'Left Wingback vs Right Back — Overlapping Run'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.33 (squad xG sum 0.9446, xG scale 1.4038, xA scale 1.4866, team xA 0.86 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.326
squad_xg_sum=0.9446
squad_xa_sum=0.5798
team_expected_assists=0.8619
team_xa_to_xg_ratio=0.65
expected_goals: 0.0216 -> 0.0303
expected_assists: 0.0867 -> 0.1289
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 8 by projected rating, fifa_overall 80.0)match_squad_rank=8
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0298
goal_rate=0.0
scorer_weight=0.0242
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=1
assist_probability=0.1209
assist_rate=0.1258
provider_weight=0.1611
-
Nemanja GudeljM8100.090.03219%10.86.756.342FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 0.9978, quality 0.437)market_value_eur=1900000
quality_factor=0.4374
boost_factor=0.9978
reference_quality=0.505
history_matches=42
history_shrink=0.1064
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0009)blend_weight=0.0009
history_matches=42
season_overlap_discount=1.0
per90_to_match_factor=0.9022
prior_reliability=0.0133
competition=La Liga
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Lucien Agoumé', 'matchup_zone': 'Central Mid vs Defensive Mid — Pressing/Creation Duel'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.33 (squad xG sum 0.9446, xG scale 1.4038, xA scale 1.4866, team xA 0.86 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.326
squad_xg_sum=0.9446
squad_xa_sum=0.5798
team_expected_assists=0.8619
team_xa_to_xg_ratio=0.65
expected_goals: 0.0671 -> 0.0942
expected_assists: 0.0304 -> 0.0452
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 9 by projected rating, fifa_overall 78.0)match_squad_rank=9
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0899
goal_rate=0.0591
scorer_weight=0.0878
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0442
assist_rate=0.0464
provider_weight=0.0542
-
DjenéD7500.00-n/a00.06.658.129FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9979, quality 0.437)market_value_eur=1500000
quality_factor=0.4374
boost_factor=0.9979
reference_quality=0.505
history_matches=43
history_shrink=0.1042
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0131)blend_weight=0.0131
history_matches=43
season_overlap_discount=1.0
per90_to_match_factor=0.8328
prior_reliability=0.1933
competition=La Liga
fouls: 0.9704 -> 0.9765
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Lucas Stassin', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.33 (squad xG sum 0.9446, xG scale 1.4038, xA scale 1.4866, team xA 0.86 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.326
squad_xg_sum=0.9446
squad_xa_sum=0.5798
team_expected_assists=0.8619
team_xa_to_xg_ratio=0.65
-
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 17 by projected rating, fifa_overall 79.0)match_squad_rank=17
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0004
goal_rate=0.0
scorer_weight=0.001
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.014
assist_rate=0.0
provider_weight=0.0118
-
Team totals11.33126.8
Bench Candidates (7 modeled substitutes with empirical playing time)
PlayerPosExp MinApp ProbSubstitute Modeling Details
Jiří LetáčekG4.4m10.9%Market-value substitute prior
Zaid RomeroD13.7m21.9%Market-value substitute prior
Abdel AbqarD6.7m41.0%Market-value substitute prior
Mario MartínM22.3m31.4%Market-value substitute prior
Mauro ArambarriM22.2m51.0%Market-value substitute prior
Christantus UcheF25.8m58.1%Market-value substitute prior

Sevilla — projected line vs season baseline (4-4-2)

PlayerPosMinProj GProj xGSeason xG/gProj ShSeason Sh/gProj RtgSeason RtgRecModel / FBref Prior
Odysseas VlachodimosG9000.00-n/a0.06.960.634FBref Prior G_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost G_service raw output over 3 target models--
market_value_boostMarket-value quality scaling (boost 0.9980, quality 0.440)market_value_eur=3200000
quality_factor=0.4399
boost_factor=0.998
reference_quality=0.505
history_matches=43
history_shrink=0.1042
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0135)blend_weight=0.0135
history_matches=43
season_overlap_discount=1.0
per90_to_match_factor=1.0
prior_reliability=0.2
competition=La Liga
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Enes Ünal, Martín Satriano', 'matchup_zone': 'Goalkeeper shot-stopping context', 'opponent_lambda': 0.9811}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.66 (squad xG sum 1.3489, xG scale 1.2292, xA scale 1.2838, team xA 1.08 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.658
squad_xg_sum=1.3489
squad_xa_sum=0.8394
team_expected_assists=1.0777
team_xa_to_xg_ratio=0.65
shots_faced: 9.3 -> 12.6
expected_saves: 2.27 -> 3.08
high_pressure_saves: 0.78 -> 1.06
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 5 by projected rating, fifa_overall 79.0)match_squad_rank=5
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.0
scorer_weight=0.0
squad_weight_total=1.6973
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0
provider_weight=0.0
squad_weight_total=1.029
-
Juan IglesiasD8800.070.03110%10.76.863.634XGBoost D_service
Step-by-step (9 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9990, quality 0.472)market_value_eur=5800000
quality_factor=0.472
boost_factor=0.999
reference_quality=0.505
history_matches=47
history_shrink=0.0962
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Martín Satriano', 'matchup_zone': 'Shape fallback'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.66 (squad xG sum 1.3489, xG scale 1.2292, xA scale 1.2838, team xA 1.08 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.658
squad_xg_sum=1.3489
squad_xa_sum=0.8394
team_expected_assists=1.0777
team_xa_to_xg_ratio=0.65
expected_goals: 0.0583 -> 0.0717
expected_assists: 0.0915 -> 0.1175
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 7 by projected rating, fifa_overall 76.0)match_squad_rank=7
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.0692
goal_rate=0.0689
scorer_weight=0.0787
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.1109
assist_rate=0.0049
provider_weight=0.094
-
Andrés CastrinD9000.040.02154%10.36.845.930XGBoost D_service
Step-by-step (9 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0001, quality 0.507)market_value_eur=8700000
quality_factor=0.5071
boost_factor=1.0001
reference_quality=0.505
history_matches=28
history_shrink=0.1515
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Enes Ünal', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.66 (squad xG sum 1.3489, xG scale 1.2292, xA scale 1.2838, team xA 1.08 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.658
squad_xg_sum=1.3489
squad_xa_sum=0.8394
team_expected_assists=1.0777
team_xa_to_xg_ratio=0.65
expected_goals: 0.0339 -> 0.0417
expected_assists: 0.0316 -> 0.0406
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 10 by projected rating, fifa_overall 73.0)match_squad_rank=10
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.0408
goal_rate=0.0359
scorer_weight=0.0427
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0398
assist_rate=0.0
provider_weight=0.0325
-
Kike SalasD9000.070.06ok10.86.863.231FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0030, quality 0.584)market_value_eur=15400000
quality_factor=0.5835
boost_factor=1.003
reference_quality=0.505
history_matches=34
history_shrink=0.1282
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0111)blend_weight=0.0111
history_matches=34
season_overlap_discount=1.0
per90_to_match_factor=0.9988
prior_reliability=0.1333
competition=La Liga
wasFouled: 0.548 -> 0.5586
totalShots: 0.8999 -> 0.9069
onTargetScoringAttempt: 0.5622 -> 0.556
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Enes Ünal', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.66 (squad xG sum 1.3489, xG scale 1.2292, xA scale 1.2838, team xA 1.08 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.658
squad_xg_sum=1.3489
squad_xa_sum=0.8394
team_expected_assists=1.0777
team_xa_to_xg_ratio=0.65
expected_goals: 0.0587 -> 0.0722
expected_assists: 0.0412 -> 0.0529
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 6 by projected rating, fifa_overall 76.0)match_squad_rank=6
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.0697
goal_rate=0.0336
scorer_weight=0.0578
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0515
assist_rate=0.0
provider_weight=0.0423
-
Gabriel SuazoD8800.010.0154%00.26.856.031FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9996, quality 0.494)market_value_eur=7600000
quality_factor=0.4939
boost_factor=0.9996
reference_quality=0.505
history_matches=39
history_shrink=0.1136
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0148)blend_weight=0.0148
history_matches=39
season_overlap_discount=1.0
per90_to_match_factor=0.9812
prior_reliability=0.2
competition=La Liga
totalCross: 2.1035 -> 2.1256
fouls: 1.576 -> 1.5962
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Dani Carvajal', 'matchup_zone': 'Left Wingback vs Right Back — Overlapping Run'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.66 (squad xG sum 1.3489, xG scale 1.2292, xA scale 1.2838, team xA 1.08 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.658
squad_xg_sum=1.3489
squad_xa_sum=0.8394
team_expected_assists=1.0777
team_xa_to_xg_ratio=0.65
expected_assists: 0.1437 -> 0.1844
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 12 by projected rating, fifa_overall 74.0)match_squad_rank=12
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.0098
goal_rate=0.0
scorer_weight=0.0084
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.1684
assist_rate=0.0016
provider_weight=0.1475
-
Chidera EjukeF7100.110.04210%10.66.849.633FBref Prior F_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9978, quality 0.446)market_value_eur=3700000
quality_factor=0.4461
boost_factor=0.9978
reference_quality=0.505
history_matches=35
history_shrink=0.125
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0054)blend_weight=0.0054
history_matches=35
season_overlap_discount=1.0
per90_to_match_factor=0.7928
prior_reliability=0.0667
competition=La Liga
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Davinchi, Djené', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.188, 'pressing_faced': 'LOW', 'numerical_situation': '1v2', 'xg_multiplier': 0.9822, 'skill_edge': 0.0039, 'height_edge': -0.016, 'attacker_skill': 0.4461, 'defender_skill': 0.4374, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Davinchi', 'market_value': 1800000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.4374}, {'player': 'Djené', 'market_value': 1500000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.4374}], 'xg_override': 0.0898}
totalShots: 1.1978 -> 1.1765
shotOffTarget: 0.8232 -> 0.8085
onTargetScoringAttempt: 0.3746 -> 0.3679
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.66 (squad xG sum 1.3489, xG scale 1.2292, xA scale 1.2838, team xA 1.08 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.658
squad_xg_sum=1.3489
squad_xa_sum=0.8394
team_expected_assists=1.0777
team_xa_to_xg_ratio=0.65
expected_goals: 0.0898 -> 0.1104
expected_assists: 0.0813 -> 0.1044
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 9 by projected rating, fifa_overall 76.0)match_squad_rank=9
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.1045
goal_rate=0.1671
scorer_weight=0.138
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0991
assist_rate=0.0
provider_weight=0.0835
-
Lucien AgouméM8800.070.02193%10.56.962.133FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 1.0034, quality 0.616)market_value_eur=18500000
quality_factor=0.6161
boost_factor=1.0034
reference_quality=0.505
history_matches=44
history_shrink=0.102
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0133)blend_weight=0.0133
history_matches=44
season_overlap_discount=1.0
per90_to_match_factor=0.9829
prior_reliability=0.2
competition=La Liga
wasFouled: 0.4188 -> 0.435
wonTackle: 2.1139 -> 2.1293
totalCross: 0.1896 -> 0.2045
fouls: 1.7691 -> 1.7804
interceptionWon: 1.3372 -> 1.3455
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Nemanja Gudelj', 'matchup_zone': 'Central Mid vs Defensive Mid — Pressing/Creation Duel', 'duel_win_rate': 0.532, 'pressing_faced': 'LOW', 'numerical_situation': '1v1', 'xg_multiplier': 1.1199, 'skill_edge': 0.0896, 'height_edge': -0.008, 'attacker_skill': 0.6365, 'defender_skill': 0.4374, 'attacker_role': 'CM', 'attacker_mv_price_index': 0.9, 'defender_adjusted_parts': [{'player': 'Nemanja Gudelj', 'market_value': 1900000, 'role': 'CDM', 'price_index': 0.85, 'adjusted_quality': 0.4374}], 'xg_override': 0.0535}
aerialWon: 0.4307 -> 1.2
totalShots: 0.6281 -> 0.7034
shotOffTarget: 0.4546 -> 0.5091
onTargetScoringAttempt: 0.1707 -> 0.1912
expectedGoalsOnTarget: 0.069 -> 0.0773
goals: 0.0525 -> 0.0588
expectedGoals: 0.0478 -> 0.0535
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.66 (squad xG sum 1.3489, xG scale 1.2292, xA scale 1.2838, team xA 1.08 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.658
squad_xg_sum=1.3489
squad_xa_sum=0.8394
team_expected_assists=1.0777
team_xa_to_xg_ratio=0.65
expected_goals: 0.0535 -> 0.0658
expected_assists: 0.0463 -> 0.0594
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 2 by projected rating, fifa_overall 76.0)match_squad_rank=2
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.0637
goal_rate=0.0588
scorer_weight=0.0692
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0577
assist_rate=0.0515
provider_weight=0.0626
-
Youssouf FofanaM8600.190.09111%21.16.950.610XGBoost M_service
Step-by-step (9 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 1.0110, quality 0.593)market_value_eur=16300000
quality_factor=0.5932
boost_factor=1.011
reference_quality=0.505
history_matches=7
history_shrink=0.4167
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=true
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Davinchi', 'matchup_zone': 'LM vs CB', 'duel_win_rate': 0.511, 'pressing_faced': 'LOW', 'numerical_situation': '1v1', 'xg_multiplier': 1.1332, 'skill_edge': 0.0786, 'height_edge': 0.012, 'attacker_skill': 0.6121, 'defender_skill': 0.4374, 'attacker_role': 'LM', 'attacker_mv_price_index': 0.9, 'defender_adjusted_parts': [{'player': 'Davinchi', 'market_value': 1800000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.4374}], 'xg_override': 0.1511}
aerialWon: 0.8265 -> 1.2
totalShots: 1.6173 -> 1.8327
shotOffTarget: 1.0258 -> 1.1624
onTargetScoringAttempt: 0.5915 -> 0.6703
bigChanceMissed: 0.2555 -> 0.2895
expectedGoalsOnTarget: 0.229 -> 0.2595
goals: 0.1351 -> 0.1531
expectedGoals: 0.1333 -> 0.1511
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.66 (squad xG sum 1.3489, xG scale 1.2292, xA scale 1.2838, team xA 1.08 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.658
squad_xg_sum=1.3489
squad_xa_sum=0.8394
team_expected_assists=1.0777
team_xa_to_xg_ratio=0.65
expected_goals: 0.1511 -> 0.1857
expected_assists: 0.112 -> 0.1438
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 3 by projected rating, fifa_overall 80.0)match_squad_rank=3
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.1695
goal_rate=0.1531
scorer_weight=0.1875
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=1
assist_probability=0.1339
assist_rate=0.1606
provider_weight=0.1798
-
Lucas StassinF7610.310.10201%21.06.842.68XGBoost F_service
Step-by-step (9 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0123, quality 0.587)market_value_eur=15700000
quality_factor=0.5868
boost_factor=1.0123
reference_quality=0.505
history_matches=5
history_shrink=0.5
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Davinchi, Djené', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.283, 'pressing_faced': 'LOW', 'numerical_situation': '1v2', 'xg_multiplier': 1.1223, 'skill_edge': 0.0672, 'height_edge': 0.016, 'attacker_skill': 0.5868, 'defender_skill': 0.4374, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Davinchi', 'market_value': 1800000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.4374}, {'player': 'Djené', 'market_value': 1500000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.4374}], 'xg_override': 0.252}
totalShots: 2.0092 -> 2.2549
shotOffTarget: 1.318 -> 1.4792
onTargetScoringAttempt: 0.6911 -> 0.7756
bigChanceMissed: 0.4652 -> 0.5221
expectedGoals: 0.2245 -> 0.252
goals: 0.2247 -> 0.2522
expectedGoalsOnTarget: 0.1407 -> 0.1579
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.66 (squad xG sum 1.3489, xG scale 1.2292, xA scale 1.2838, team xA 1.08 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.658
squad_xg_sum=1.3489
squad_xa_sum=0.8394
team_expected_assists=1.0777
team_xa_to_xg_ratio=0.65
expected_goals: 0.252 -> 0.3097
expected_assists: 0.041 -> 0.0526
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 13 by projected rating, fifa_overall 74.0)match_squad_rank=13
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=1
goal_probability=0.2663
goal_rate=0.2522
scorer_weight=0.3099
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0512
assist_rate=0.0
provider_weight=0.0421
-
Isaac RomeroF6500.270.09212%20.96.751.933FBref Prior F_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9986, quality 0.465)market_value_eur=5200000
quality_factor=0.4646
boost_factor=0.9986
reference_quality=0.505
history_matches=37
history_shrink=0.119
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0067)blend_weight=0.0067
history_matches=37
season_overlap_discount=1.0
per90_to_match_factor=0.7209
prior_reliability=0.0867
competition=La Liga
fouls: 1.5915 -> 1.5994
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Davinchi, Djené', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.228, 'pressing_faced': 'LOW', 'numerical_situation': '1v2', 'xg_multiplier': 1.0415, 'skill_edge': 0.0122, 'height_edge': 0.016, 'attacker_skill': 0.4646, 'defender_skill': 0.4374, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Davinchi', 'market_value': 1800000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.4374}, {'player': 'Djené', 'market_value': 1500000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.4374}], 'xg_override': 0.2172}
totalShots: 1.7879 -> 1.8621
shotOffTarget: 1.1995 -> 1.2493
onTargetScoringAttempt: 0.5884 -> 0.6128
goals: 0.2192 -> 0.2283
expectedGoals: 0.2085 -> 0.2172
bigChanceMissed: 0.1349 -> 0.1405
expectedGoalsOnTarget: 0.1245 -> 0.1297
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.66 (squad xG sum 1.3489, xG scale 1.2292, xA scale 1.2838, team xA 1.08 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.658
squad_xg_sum=1.3489
squad_xa_sum=0.8394
team_expected_assists=1.0777
team_xa_to_xg_ratio=0.65
expected_goals: 0.2172 -> 0.267
expected_assists: 0.0441 -> 0.0566
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 15 by projected rating, fifa_overall 74.0)match_squad_rank=15
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=0
goal_probability=0.2343
goal_rate=0.2283
scorer_weight=0.2781
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.055
assist_rate=0.0037
provider_weight=0.0453
-
Félix CorreiaF7710.320.14135%20.86.943.316XGBoost F_service
Step-by-step (9 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0019, quality 0.519)market_value_eur=9700000
quality_factor=0.5189
boost_factor=1.0019
reference_quality=0.505
history_matches=6
history_shrink=0.4545
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Davinchi, Djené', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.229, 'pressing_faced': 'LOW', 'numerical_situation': '1v2', 'xg_multiplier': 1.0422, 'skill_edge': 0.0367, 'height_edge': -0.008, 'attacker_skill': 0.5189, 'defender_skill': 0.4374, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Davinchi', 'market_value': 1800000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.4374}, {'player': 'Djené', 'market_value': 1500000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.4374}], 'xg_override': 0.2608}
totalShots: 1.9416 -> 2.0236
shotOffTarget: 1.2742 -> 1.328
onTargetScoringAttempt: 0.6674 -> 0.6956
bigChanceMissed: 0.2532 -> 0.2639
expectedGoals: 0.2502 -> 0.2608
goals: 0.2346 -> 0.2445
expectedGoalsOnTarget: 0.224 -> 0.2335
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 2 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=2
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.66 (squad xG sum 1.3489, xG scale 1.2292, xA scale 1.2838, team xA 1.08 = 0.65 x lambda)scoreline_reset=true
team_lambda=1.658
squad_xg_sum=1.3489
squad_xa_sum=0.8394
team_expected_assists=1.0777
team_xa_to_xg_ratio=0.65
expected_goals: 0.2608 -> 0.3205
expected_assists: 0.1066 -> 0.1369
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 4 by projected rating, fifa_overall 75.0)match_squad_rank=4
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 2 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=2
allocation_applied=true
goals_allocated=1
goal_probability=0.2742
goal_rate=0.2445
scorer_weight=0.3037
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.1279
assist_rate=0.1482
provider_weight=0.1711
-
Team totals21.66166.8
Bench Candidates (7 modeled substitutes with empirical playing time)
PlayerPosExp MinApp ProbSubstitute Modeling Details
Fran GonzálezG4.4m10.9%Market-value substitute prior
José Ángel CarmonaD14.0m31.6%Market-value substitute prior
Arouna SanganteD13.8m22.2%Market-value substitute prior
Dodi LukebakioM22.5m52.2%Market-value substitute prior
OsoM22.3m51.5%Market-value substitute prior
Akor AdamsF25.8m58.3%Market-value substitute prior
Antagonist / tactical summary
Midfield is evenly contested — Orel Mangala vs Lucien Agoumé will be the pivotal duel. Total antagonist xG — Home: 0.64, Away: 1.02. Home danger zone: Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle. Away danger zone: Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle.
Midfield — possession 48.1% / 51.9%, dominance ratio 0.45, key duel: Orel Mangala vs Lucien Agoumé
Dani Carvajal xG 0.02Orel Mangala xG 0.04Francho Serrano xG 0.05Youssouf Fofana xG 0.15Lucien Agoumé xG 0.05Lucas Stassin xG 0.25

Summary

Antagonist matchup analysis for Getafe vs Sevilla. Most likely scoreline: 1-2. Lambdas derived from 6 home and 6 away individual player duels. Head-to-head: Getafe 3W-1D-6L vs Sevilla over 10 meetings.
Tactical parity between 5-3-2 and 4-4-2. Match outcome driven primarily by individual player quality. Midfield is evenly contested — Orel Mangala vs Lucien Agoumé will be the pivotal duel. Total antagonist xG — Home: 0.64, Away: 1.02. Home danger zone: Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle. Away danger zone: Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle.

Elche vs Valencia

LaLiga · 20261101 · 4-2-3-1 vs 4-3-3
Predicted 1-0Winner: ElcheWinning H 1-0 (10.1%)Winning A 0-1 (7.6%)Confidence 0.72λ home/away 1.54 / 1.18Most-likely P 10.1%
Actual vs predicted: result not available yet (upcoming fixture).
XGBoost Reasoning & FBref Dataset Tracing
Antagonist + XGBoost match analysis for Elche vs Valencia. Player statistics regressed using position-specific XGBoost models (G, D, M, F) with 2026-2027 FBref priors. Micro-duels resolved across 4-2-3-1 vs 4-3-3 (duel lambdas: Home 1.154, Away 0.870). Final calibrated Poisson lambdas: Home 1.545, Away 1.176 (most likely score 1-0).
Home Starters 11/11 XGBoost (8 FBref) Away Starters 11/11 XGBoost (8 FBref) Bench Modeled H: 7 / A: 7 Duel λ (H/A) 1.15 / 0.87 Final λ (H/A) 1.54 / 1.18
FBref Team Priors: Elche (Gls/90: 1.0, GA/90: 1.0 → E[λ]: 0.244) vs Valencia (Gls/90: 0.3333333333333333, GA/90: 0.33 → E[λ]: 0.247) | Blend Weight: 0.228
Modeling Pipeline Stages (5 layers)
  1. 1. XGBoost player regressions for volume & event rates with market-value quality scaling
  2. 2. Multi-source prior blending (FBref 2026-2027 tables + Sofascore season history)
  3. 3. Antagonist formation duel matrix resolving 1v1 and zonal matchups
  4. 4. Team-level prior calibration (FBref possession and attack/defense efficiencies)
  5. 5. Bivariate Poisson matrix with Dixon-Coles low-score correction

Standing & form context

MetricElcheValencia
League position16.0019.00
Points per game1.140.89
Attack index0.970.76
Defense (concede) index1.061.06
Form multiplier1.010.98
Standing λ multiplier1.010.91

Lambda decomposition (how the goal rates were built)

StageElche λValencia λ
FBref Squad Prior E[λ] (weight 0.228)0.2440.247
Pre-competitive-floor1.1210.895
Pre-calibration (Micro-duels)1.1540.870
Final λ1.5451.176
competition calibration scale 1.35competition observed total goals 2.984quality gap applied Truemismatch score pressure applied Falsecompetitive underdog floor applied Falsestage discount 1.0

Scoreline distribution & markets

Top 5 scorelinesP
1-112.1%
1-010.1%
2-19.2%
2-07.8%
0-17.6%
Home win45.7%
Draw25.4%
Away win28.9%
Over 2.551.1%
BTTS yes54.5%
Pregame fair line — favorite Elche (45.7%), fair total 2.72, fair spread 0.37

Projected players vs season baseline

Proj = projected for this match · Season = this season's per-game average from match data · deviation badge compares projected xG to the player's season xG/game.

Elche — projected line vs season baseline (4-2-3-1)

PlayerPosMinProj GProj xGSeason xG/gProj ShSeason Sh/gProj RtgSeason RtgRecModel / FBref Prior
Buba SangaréD7700.010.01ok00.16.751.027FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9975, quality 0.461)market_value_eur=4900000
quality_factor=0.4609
boost_factor=0.9975
reference_quality=0.505
history_matches=21
history_shrink=0.1923
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0242)blend_weight=0.0242
history_matches=21
season_overlap_discount=1.0
per90_to_match_factor=0.8517
prior_reliability=0.1933
competition=La Liga
wonTackle: 1.0755 -> 1.0921
interceptionWon: 0.712 -> 0.7019
totalCross: 0.9708 -> 0.9615
goals: 0.0602 -> 0.0658
onTargetScoringAttempt: 0.0602 -> 0.0657
fouls: 1.2586 -> 1.2637
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Arnaut Danjuma', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.54 (squad xG sum 0.9978, xG scale 1.5484, xA scale 1.5484, team xA 1.15 = 0.74 x lambda)scoreline_reset=true
team_lambda=1.545
squad_xg_sum=0.9978
squad_xa_sum=0.7401
team_expected_assists=1.1459
team_xa_to_xg_ratio=0.7417
expected_assists: 0.014 -> 0.0217
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 17 by projected rating, fifa_overall 69.0)match_squad_rank=17
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0057
goal_rate=0.0657
scorer_weight=0.0071
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0215
assist_rate=0.0
provider_weight=0.0174
-
Federico RedondoM7100.090.0584%10.16.834.637FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 0.9956, quality 0.437)market_value_eur=2400000
quality_factor=0.4374
boost_factor=0.9956
reference_quality=0.505
history_matches=18
history_shrink=0.2174
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0141)blend_weight=0.0141
history_matches=18
season_overlap_discount=1.0
per90_to_match_factor=0.7874
prior_reliability=0.1
competition=La Liga
fouls: 0.9918 -> 0.9852
wasFouled: 0.9072 -> 0.9018
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Pepelu', 'matchup_zone': 'Holding Mid vs Central Mid — Midfield Anchor Duel', 'duel_win_rate': 0.384, 'pressing_faced': 'LOW', 'numerical_situation': '1v1', 'xg_multiplier': 0.9762, 'skill_edge': -0.0282, 'height_edge': 0.012, 'attacker_skill': 0.4374, 'defender_skill': 0.5, 'attacker_role': 'CDM', 'attacker_mv_price_index': 0.85, 'defender_adjusted_parts': [{'player': 'Pepelu', 'market_value': 7300000, 'role': 'CM', 'price_index': 0.9, 'adjusted_quality': 0.5}], 'xg_override': 0.0562}
aerialWon: 0.1147 -> 1.2
totalShots: 0.5412 -> 0.5283
shotOffTarget: 0.3713 -> 0.3625
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.54 (squad xG sum 0.9978, xG scale 1.5484, xA scale 1.5484, team xA 1.15 = 0.74 x lambda)scoreline_reset=true
team_lambda=1.545
squad_xg_sum=0.9978
squad_xa_sum=0.7401
team_expected_assists=1.1459
team_xa_to_xg_ratio=0.7417
expected_goals: 0.0562 -> 0.087
expected_assists: 0.0319 -> 0.0494
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 9 by projected rating, fifa_overall 70.0)match_squad_rank=9
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0833
goal_rate=0.0585
scorer_weight=0.0889
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0482
assist_rate=0.0552
provider_weight=0.0617
-
Víctor ChustD9000.050.02141%10.36.962.132FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9978, quality 0.437)market_value_eur=2700000
quality_factor=0.4374
boost_factor=0.9978
reference_quality=0.505
history_matches=41
history_shrink=0.1087
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0141)blend_weight=0.0141
history_matches=41
season_overlap_discount=1.0
per90_to_match_factor=0.9958
prior_reliability=0.2
competition=La Liga
totalCross: 0.9215 -> 0.9366
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Luis Rioja', 'matchup_zone': 'Shape fallback'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.54 (squad xG sum 0.9978, xG scale 1.5484, xA scale 1.5484, team xA 1.15 = 0.74 x lambda)scoreline_reset=true
team_lambda=1.545
squad_xg_sum=0.9978
squad_xa_sum=0.7401
team_expected_assists=1.1459
team_xa_to_xg_ratio=0.7417
expected_goals: 0.0326 -> 0.0505
expected_assists: 0.0306 -> 0.0474
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 7 by projected rating, fifa_overall 74.0)match_squad_rank=7
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0492
goal_rate=0.033
scorer_weight=0.0507
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0463
assist_rate=0.056
provider_weight=0.0592
-
Roy RevivoD8900.030.0244%10.36.848.310XGBoost D_service
Step-by-step (9 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9940, quality 0.457)market_value_eur=4600000
quality_factor=0.4572
boost_factor=0.994
reference_quality=0.505
history_matches=7
history_shrink=0.4167
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Arnaut Danjuma', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.54 (squad xG sum 0.9978, xG scale 1.5484, xA scale 1.5484, team xA 1.15 = 0.74 x lambda)scoreline_reset=true
team_lambda=1.545
squad_xg_sum=0.9978
squad_xa_sum=0.7401
team_expected_assists=1.1459
team_xa_to_xg_ratio=0.7417
expected_goals: 0.0199 -> 0.0308
expected_assists: 0.1244 -> 0.1926
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 11 by projected rating, fifa_overall 80.0)match_squad_rank=11
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0303
goal_rate=0.0
scorer_weight=0.0246
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=1
assist_probability=0.1752
assist_rate=0.294
provider_weight=0.2407
-
Gonzalo VillarM7600.110.03351%10.46.952.329FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 0.9962, quality 0.437)market_value_eur=1700000
quality_factor=0.4374
boost_factor=0.9962
reference_quality=0.505
history_matches=22
history_shrink=0.1852
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0241)blend_weight=0.0241
history_matches=22
season_overlap_discount=1.0
per90_to_match_factor=0.8427
prior_reliability=0.2
competition=La Liga
wasFouled: 1.93 -> 1.9782
totalCross: 1.0878 -> 1.1225
fouls: 1.3978 -> 1.4182
onTargetScoringAttempt: 0.2613 -> 0.2753
totalShots: 0.8491 -> 0.8556
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Guido Rodríguez', 'matchup_zone': 'Attacking Mid vs Single Holding Mid — Space Creator Duel', 'duel_win_rate': 0.437, 'pressing_faced': 'LOW', 'numerical_situation': '1v1', 'xg_multiplier': 0.9663, 'skill_edge': -0.0069, 'height_edge': -0.016, 'attacker_skill': 0.4374, 'defender_skill': 0.4527, 'attacker_role': 'CAM', 'attacker_mv_price_index': 0.95, 'defender_adjusted_parts': [{'player': 'Guido Rodríguez', 'market_value': 3600000, 'role': 'CDM', 'price_index': 0.85, 'adjusted_quality': 0.4527}], 'xg_override': 0.0737}
aerialWon: 0.6516 -> 1.1
totalShots: 0.8631 -> 0.834
shotOffTarget: 0.5878 -> 0.568
onTargetScoringAttempt: 0.2753 -> 0.266
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.54 (squad xG sum 0.9978, xG scale 1.5484, xA scale 1.5484, team xA 1.15 = 0.74 x lambda)scoreline_reset=true
team_lambda=1.545
squad_xg_sum=0.9978
squad_xa_sum=0.7401
team_expected_assists=1.1459
team_xa_to_xg_ratio=0.7417
expected_goals: 0.0737 -> 0.1141
expected_assists: 0.0909 -> 0.1407
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 5 by projected rating, fifa_overall 72.0)match_squad_rank=5
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.1078
goal_rate=0.067
scorer_weight=0.1079
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.1313
assist_rate=0.102
provider_weight=0.1518
-
Javi MorcilloM8700.060.02240%10.26.741.821FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 0.9944, quality 0.437)market_value_eur=2100000
quality_factor=0.4374
boost_factor=0.9944
reference_quality=0.505
history_matches=13
history_shrink=0.2778
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0048)blend_weight=0.0048
history_matches=13
season_overlap_discount=1.0
per90_to_match_factor=0.9707
prior_reliability=0.0267
competition=La Liga
fouls: 0.725 -> 0.7332
wonTackle: 1.1344 -> 1.1406
interceptionWon: 1.0719 -> 1.0667
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Pepelu', 'matchup_zone': 'Holding Mid vs Central Mid — Midfield Anchor Duel', 'duel_win_rate': 0.364, 'pressing_faced': 'LOW', 'numerical_situation': '1v1', 'xg_multiplier': 0.9468, 'skill_edge': -0.0282, 'height_edge': -0.008, 'attacker_skill': 0.4374, 'defender_skill': 0.5, 'attacker_role': 'CDM', 'attacker_mv_price_index': 0.85, 'defender_adjusted_parts': [{'player': 'Pepelu', 'market_value': 7300000, 'role': 'CM', 'price_index': 0.9, 'adjusted_quality': 0.5}], 'xg_override': 0.0373}
aerialWon: 0.6603 -> 1.1
totalShots: 0.5542 -> 0.5247
shotOffTarget: 0.424 -> 0.4014
onTargetScoringAttempt: 0.1302 -> 0.1233
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.54 (squad xG sum 0.9978, xG scale 1.5484, xA scale 1.5484, team xA 1.15 = 0.74 x lambda)scoreline_reset=true
team_lambda=1.545
squad_xg_sum=0.9978
squad_xa_sum=0.7401
team_expected_assists=1.1459
team_xa_to_xg_ratio=0.7417
expected_goals: 0.0373 -> 0.0578
expected_assists: 0.0258 -> 0.0399
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 14 by projected rating, fifa_overall 79.0)match_squad_rank=14
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0562
goal_rate=0.0503
scorer_weight=0.0664
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0391
assist_rate=0.044
provider_weight=0.0495
-
Lucas CepedaF7600.160.05236%20.86.942.632FBref Prior F_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9959, quality 0.437)market_value_eur=2600000
quality_factor=0.4374
boost_factor=0.9959
reference_quality=0.505
history_matches=20
history_shrink=0.2
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0078)blend_weight=0.0078
history_matches=20
season_overlap_discount=1.0
per90_to_match_factor=0.8458
prior_reliability=0.06
competition=La Liga
totalCross: 1.8527 -> 1.8822
totalShots: 1.6818 -> 1.7058
fouls: 0.6266 -> 0.6437
onTargetScoringAttempt: 0.7042 -> 0.7136
wasFouled: 2.0331 -> 2.0246
wonTackle: 1.0198 -> 1.0118
interceptionWon: 0.916 -> 0.9235
goalAssist: 0.0 -> 0.0073
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Arnau Martínez, César Tárrega', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.18, 'pressing_faced': 'LOW', 'numerical_situation': '1v2', 'xg_multiplier': 0.8592, 'skill_edge': -0.0558, 'height_edge': -0.04, 'attacker_skill': 0.4374, 'defender_skill': 0.5614, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Arnau Martínez', 'market_value': 10800000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.5726}, {'player': 'César Tárrega', 'market_value': 9300000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.5502}], 'xg_override': 0.1005}
totalShots: 1.7058 -> 1.4656
shotOffTarget: 0.9776 -> 0.84
onTargetScoringAttempt: 0.7136 -> 0.6131
goals: 0.1538 -> 0.1321
expectedGoals: 0.117 -> 0.1005
expectedGoalsOnTarget: 0.0459 -> 0.0394
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.54 (squad xG sum 0.9978, xG scale 1.5484, xA scale 1.5484, team xA 1.15 = 0.74 x lambda)scoreline_reset=true
team_lambda=1.545
squad_xg_sum=0.9978
squad_xa_sum=0.7401
team_expected_assists=1.1459
team_xa_to_xg_ratio=0.7417
expected_goals: 0.1005 -> 0.1556
expected_assists: 0.1085 -> 0.168
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 8 by projected rating, fifa_overall 71.0)match_squad_rank=8
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.1441
goal_rate=0.1321
scorer_weight=0.1883
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.1546
assist_rate=0.0073
provider_weight=0.1344
-
Thomas LemarM7200.100.0660%10.67.160.330XGBoost M_service
Step-by-step (9 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 0.9974, quality 0.437)market_value_eur=1900000
quality_factor=0.4374
boost_factor=0.9974
reference_quality=0.505
history_matches=34
history_shrink=0.1282
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Pablo Maffeo', 'matchup_zone': 'Left Wing vs Right Back — Flank Battle', 'duel_win_rate': 0.466, 'pressing_faced': 'LOW', 'numerical_situation': '1v1', 'xg_multiplier': 0.9788, 'skill_edge': -0.0024, 'height_edge': -0.012, 'attacker_skill': 0.4374, 'defender_skill': 0.4428, 'attacker_role': 'LW', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Pablo Maffeo', 'market_value': 2400000, 'role': 'RB', 'price_index': 0.7, 'adjusted_quality': 0.4428}], 'xg_override': 0.0655}
aerialWon: 0.0199 -> 0.8
totalShots: 0.9443 -> 0.9243
shotOffTarget: 0.6415 -> 0.6279
onTargetScoringAttempt: 0.3028 -> 0.2964
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.54 (squad xG sum 0.9978, xG scale 1.5484, xA scale 1.5484, team xA 1.15 = 0.74 x lambda)scoreline_reset=true
team_lambda=1.545
squad_xg_sum=0.9978
squad_xa_sum=0.7401
team_expected_assists=1.1459
team_xa_to_xg_ratio=0.7417
expected_goals: 0.0655 -> 0.1014
expected_assists: 0.1163 -> 0.1801
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 3 by projected rating, fifa_overall 77.0)match_squad_rank=3
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0964
goal_rate=0.0813
scorer_weight=0.1153
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.1648
assist_rate=0.0981
provider_weight=0.1604
-
Germán ValeraF8600.190.05318%10.57.058.542XGBoost F_service
Step-by-step (9 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9992, quality 0.477)market_value_eur=6200000
quality_factor=0.4769
boost_factor=0.9992
reference_quality=0.505
history_matches=46
history_shrink=0.098
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Arnau Martínez, César Tárrega', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.18, 'pressing_faced': 'LOW', 'numerical_situation': '1v2', 'xg_multiplier': 0.8559, 'skill_edge': -0.038, 'height_edge': -0.06, 'attacker_skill': 0.4769, 'defender_skill': 0.5614, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Arnau Martínez', 'market_value': 10800000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.5726}, {'player': 'César Tárrega', 'market_value': 9300000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.5502}], 'xg_override': 0.123}
totalShots: 1.1989 -> 1.0261
shotOffTarget: 0.7187 -> 0.6151
onTargetScoringAttempt: 0.4801 -> 0.4109
goals: 0.2152 -> 0.1842
expectedGoals: 0.1437 -> 0.123
expectedGoalsOnTarget: 0.0807 -> 0.0691
bigChanceMissed: 0.0569 -> 0.0487
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.54 (squad xG sum 0.9978, xG scale 1.5484, xA scale 1.5484, team xA 1.15 = 0.74 x lambda)scoreline_reset=true
team_lambda=1.545
squad_xg_sum=0.9978
squad_xa_sum=0.7401
team_expected_assists=1.1459
team_xa_to_xg_ratio=0.7417
expected_goals: 0.123 -> 0.1905
expected_assists: 0.1162 -> 0.1799
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 4 by projected rating, fifa_overall 82.0)match_squad_rank=4
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.1735
goal_rate=0.1842
scorer_weight=0.2381
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.1646
assist_rate=0.0349
provider_weight=0.1439
-
Fernando NiñoF7310.540.3273%21.26.854.113FBref Prior F_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9940, quality 0.445)market_value_eur=3600000
quality_factor=0.4449
boost_factor=0.994
reference_quality=0.505
history_matches=10
history_shrink=0.3333
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0361)blend_weight=0.0361
history_matches=10
season_overlap_discount=1.0
per90_to_match_factor=0.8061
prior_reliability=0.1667
competition=La Liga
totalShots: 2.1609 -> 2.1291
fouls: 1.0612 -> 1.0345
totalOffside: 0.3119 -> 0.3006
wasFouled: 1.354 -> 1.3633
wonTackle: 0.8152 -> 0.8207
interceptionWon: 0.1843 -> 0.1893
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Arnau Martínez, César Tárrega', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.18, 'pressing_faced': 'LOW', 'numerical_situation': '1v2', 'xg_multiplier': 0.9406, 'skill_edge': -0.0524, 'height_edge': 0.012, 'attacker_skill': 0.4449, 'defender_skill': 0.5614, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Arnau Martínez', 'market_value': 10800000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.5726}, {'player': 'César Tárrega', 'market_value': 9300000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.5502}], 'xg_override': 0.3517}
totalShots: 2.1576 -> 2.0294
shotOffTarget: 1.1103 -> 1.0443
onTargetScoringAttempt: 1.0473 -> 0.9851
expectedGoalsOnTarget: 0.6831 -> 0.6425
goals: 0.4092 -> 0.3849
expectedGoals: 0.3739 -> 0.3517
bigChanceMissed: 0.1567 -> 0.1474
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.54 (squad xG sum 0.9978, xG scale 1.5484, xA scale 1.5484, team xA 1.15 = 0.74 x lambda)scoreline_reset=true
team_lambda=1.545
squad_xg_sum=0.9978
squad_xa_sum=0.7401
team_expected_assists=1.1459
team_xa_to_xg_ratio=0.7417
expected_goals: 0.3517 -> 0.5446
expected_assists: 0.0385 -> 0.0596
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 10 by projected rating, fifa_overall 81.0)match_squad_rank=10
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=1
goal_probability=0.4199
goal_rate=0.3849
scorer_weight=0.5896
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0579
assist_rate=0.0
provider_weight=0.0477
-
Matías DituroG9000.00-n/a0.07.354.934FBref Prior G_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost G_service raw output over 3 target models--
market_value_boostMarket-value quality scaling (boost 0.9973, quality 0.437)market_value_eur=105000
quality_factor=0.4374
boost_factor=0.9973
reference_quality=0.505
history_matches=32
history_shrink=0.1351
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0176)blend_weight=0.0176
history_matches=32
season_overlap_discount=1.0
per90_to_match_factor=1.0
prior_reliability=0.2
competition=La Liga
saves: 2.9148 -> 2.9046
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Javier Guerra, Arnaut Danjuma', 'matchup_zone': 'Goalkeeper shot-stopping context', 'opponent_lambda': 0.8704}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 1 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=1
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.54 (squad xG sum 0.9978, xG scale 1.5484, xA scale 1.5484, team xA 1.15 = 0.74 x lambda)scoreline_reset=true
team_lambda=1.545
squad_xg_sum=0.9978
squad_xa_sum=0.7401
team_expected_assists=1.1459
team_xa_to_xg_ratio=0.7417
shots_faced: 8.3 -> 11.2
expected_saves: 2.03 -> 2.74
high_pressure_saves: 0.7 -> 0.94
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 2 by projected rating, fifa_overall 76.0)match_squad_rank=2
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation: 1 projected goals distributed by scorer weight (xG x finishing x appearance)team_goals=1
allocation_applied=true
goals_allocated=0
goal_probability=0.0
scorer_weight=0.0
squad_weight_total=1.72
-
integer_assist_projectionTeam scoreline allocation: 1 projected assists distributed by provider weight (xA x creation x appearance; nobody assists his own goal)allocation_applied=true
team_assists=1
assists_allocated=0
assist_probability=0.0
provider_weight=0.0
squad_weight_total=1.141
-
Team totals11.54146.9
Bench Candidates (7 modeled substitutes with empirical playing time)
PlayerPosExp MinApp ProbSubstitute Modeling Details
Iñaki PeñaG4.4m11.0%Market-value substitute prior
Kevin LomónacoD13.8m31.0%Market-value substitute prior
Rubén SánchezD13.6m29.9%Market-value substitute prior
Martim NetoM24.8m50.0%Market-value substitute prior
Marc AguadoM22.0m30.8%Market-value substitute prior
Facundo BuonanotteF26.4m53.4%Market-value substitute prior

Valencia — projected line vs season baseline (4-3-3)

PlayerPosMinProj GProj xGSeason xG/gProj ShSeason Sh/gProj RtgSeason RtgRecModel / FBref Prior
Stole DimitrievskiG9000.00-n/a0.06.963.133FBref Prior G_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost G_service raw output over 3 target models--
market_value_boostMarket-value quality scaling (boost 0.9971, quality 0.437)market_value_eur=2100000
quality_factor=0.4374
boost_factor=0.9971
reference_quality=0.505
history_matches=30
history_shrink=0.1429
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0186)blend_weight=0.0186
history_matches=30
season_overlap_discount=1.0
per90_to_match_factor=1.0
prior_reliability=0.2
competition=La Liga
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Fernando Niño, Germán Valera', 'matchup_zone': 'Goalkeeper shot-stopping context', 'opponent_lambda': 1.1544}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 0 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=0
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.18 (squad xG sum 0.8670, xG scale 1.3565, xA scale 1.3565, team xA 0.93 = 0.79 x lambda)scoreline_reset=true
team_lambda=1.176
squad_xg_sum=0.867
squad_xa_sum=0.6851
team_expected_assists=0.9294
team_xa_to_xg_ratio=0.7903
shots_faced: 11.0 -> 14.7
expected_saves: 2.7 -> 3.6
high_pressure_saves: 0.92 -> 1.24
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 3 by projected rating, fifa_overall 77.0)match_squad_rank=3
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation skipped: 0 projected goalsteam_goals=0
allocation_applied=false
goals_allocated=0
goal_probability=0.0
scorer_weight=0.0
squad_weight_total=1.3468
-
integer_assist_projectionTeam scoreline allocation skipped: 0 projected assistsallocation_applied=false
team_assists=0
assists_allocated=0
assist_probability=0.0
provider_weight=0.0
squad_weight_total=0.9711
-
Arnau MartínezD7900.080.04125%00.56.856.331FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0009, quality 0.532)market_value_eur=10800000
quality_factor=0.5318
boost_factor=1.0009
reference_quality=0.505
history_matches=41
history_shrink=0.1087
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0042)blend_weight=0.0042
history_matches=41
season_overlap_discount=1.0
per90_to_match_factor=0.8783
prior_reliability=0.06
competition=La Liga
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Fernando Niño', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 0 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=0
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.18 (squad xG sum 0.8670, xG scale 1.3565, xA scale 1.3565, team xA 0.93 = 0.79 x lambda)scoreline_reset=true
team_lambda=1.176
squad_xg_sum=0.867
squad_xa_sum=0.6851
team_expected_assists=0.9294
team_xa_to_xg_ratio=0.7903
expected_goals: 0.0616 -> 0.0836
expected_assists: 0.0472 -> 0.064
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 11 by projected rating, fifa_overall 77.0)match_squad_rank=11
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation skipped: 0 projected goalsteam_goals=0
allocation_applied=false
goals_allocated=0
goal_probability=0.0802
goal_rate=0.0955
scorer_weight=0.1045
-
integer_assist_projectionTeam scoreline allocation skipped: 0 projected assistsallocation_applied=false
team_assists=0
assists_allocated=0
assist_probability=0.062
assist_rate=0.0972
provider_weight=0.08
-
César TárregaD8300.060.02162%10.46.949.631FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 1.0003, quality 0.514)market_value_eur=9300000
quality_factor=0.5142
boost_factor=1.0003
reference_quality=0.505
history_matches=39
history_shrink=0.1136
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0148)blend_weight=0.0148
history_matches=39
season_overlap_discount=1.0
per90_to_match_factor=0.9186
prior_reliability=0.2
competition=La Liga
interceptionWon: 1.2556 -> 1.2416
wonTackle: 0.9316 -> 0.9405
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Fernando Niño', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 0 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=0
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.18 (squad xG sum 0.8670, xG scale 1.3565, xA scale 1.3565, team xA 0.93 = 0.79 x lambda)scoreline_reset=true
team_lambda=1.176
squad_xg_sum=0.867
squad_xa_sum=0.6851
team_expected_assists=0.9294
team_xa_to_xg_ratio=0.7903
expected_goals: 0.0425 -> 0.0576
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 7 by projected rating, fifa_overall 75.0)match_squad_rank=7
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation skipped: 0 projected goalsteam_goals=0
allocation_applied=false
goals_allocated=0
goal_probability=0.056
goal_rate=0.0
scorer_weight=0.0461
-
integer_assist_projectionTeam scoreline allocation skipped: 0 projected assistsallocation_applied=false
team_assists=0
assists_allocated=0
assist_probability=0.0079
assist_rate=0.0
provider_weight=0.0071
-
PepeluM8500.070.10ok10.56.953.240XGBoost M_service
Step-by-step (9 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 0.9995, quality 0.490)market_value_eur=7300000
quality_factor=0.4903
boost_factor=0.9995
reference_quality=0.505
history_matches=41
history_shrink=0.1087
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Federico Redondo', 'matchup_zone': 'Central Mid vs Defensive Mid — Pressing/Creation Duel', 'duel_win_rate': 0.466, 'pressing_faced': 'LOW', 'numerical_situation': '1v1', 'xg_multiplier': 1.0238, 'skill_edge': 0.0282, 'height_edge': -0.012, 'attacker_skill': 0.5, 'defender_skill': 0.4374, 'attacker_role': 'CM', 'attacker_mv_price_index': 0.9, 'defender_adjusted_parts': [{'player': 'Federico Redondo', 'market_value': 2400000, 'role': 'CDM', 'price_index': 0.85, 'adjusted_quality': 0.4374}], 'xg_override': 0.0545}
aerialWon: 0.5012 -> 1.2
totalShots: 0.5882 -> 0.6022
shotOffTarget: 0.4094 -> 0.4191
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 0 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=0
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.18 (squad xG sum 0.8670, xG scale 1.3565, xA scale 1.3565, team xA 0.93 = 0.79 x lambda)scoreline_reset=true
team_lambda=1.176
squad_xg_sum=0.867
squad_xa_sum=0.6851
team_expected_assists=0.9294
team_xa_to_xg_ratio=0.7903
expected_goals: 0.0545 -> 0.0739
expected_assists: 0.0391 -> 0.053
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 5 by projected rating, fifa_overall 76.0)match_squad_rank=5
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation skipped: 0 projected goalsteam_goals=0
allocation_applied=false
goals_allocated=0
goal_probability=0.0712
goal_rate=0.0657
scorer_weight=0.0818
-
integer_assist_projectionTeam scoreline allocation skipped: 0 projected assistsallocation_applied=false
team_assists=0
assists_allocated=0
assist_probability=0.0516
assist_rate=0.0516
provider_weight=0.0604
-
José Luis GayàD8300.060.03116%10.46.855.031FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9983, quality 0.454)market_value_eur=4300000
quality_factor=0.4535
boost_factor=0.9983
reference_quality=0.505
history_matches=40
history_shrink=0.1111
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0038)blend_weight=0.0038
history_matches=40
season_overlap_discount=1.0
per90_to_match_factor=0.9267
prior_reliability=0.0533
competition=La Liga
wasFouled: 0.8235 -> 0.8292
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Lucas Cepeda', 'matchup_zone': 'Shape fallback'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 0 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=0
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.18 (squad xG sum 0.8670, xG scale 1.3565, xA scale 1.3565, team xA 0.93 = 0.79 x lambda)scoreline_reset=true
team_lambda=1.176
squad_xg_sum=0.867
squad_xa_sum=0.6851
team_expected_assists=0.9294
team_xa_to_xg_ratio=0.7903
expected_goals: 0.0453 -> 0.0614
expected_assists: 0.0598 -> 0.0811
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 12 by projected rating, fifa_overall 80.0)match_squad_rank=12
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation skipped: 0 projected goalsteam_goals=0
allocation_applied=false
goals_allocated=0
goal_probability=0.0596
goal_rate=0.0052
scorer_weight=0.0491
-
integer_assist_projectionTeam scoreline allocation skipped: 0 projected assistsallocation_applied=false
team_assists=0
assists_allocated=0
assist_probability=0.0779
assist_rate=0.0313
provider_weight=0.0649
-
Aaron MayolM8800.080.011278%10.16.99.415XGBoost M_service
Step-by-step (9 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 0.9900, quality 0.458)market_value_eur=4700000
quality_factor=0.4585
boost_factor=0.99
reference_quality=0.505
history_matches=2
history_shrink=0.7143
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Federico Redondo', 'matchup_zone': 'Central Mid vs Defensive Mid — Pressing/Creation Duel', 'duel_win_rate': 0.442, 'pressing_faced': 'LOW', 'numerical_situation': '1v1', 'xg_multiplier': 0.9888, 'skill_edge': 0.0124, 'height_edge': -0.02, 'attacker_skill': 0.4649, 'defender_skill': 0.4374, 'attacker_role': 'CM', 'attacker_mv_price_index': 0.9, 'defender_adjusted_parts': [{'player': 'Federico Redondo', 'market_value': 2400000, 'role': 'CDM', 'price_index': 0.85, 'adjusted_quality': 0.4374}], 'xg_override': 0.0599}
aerialWon: 0.0 -> 1.1
totalShots: 0.8466 -> 0.8371
shotOffTarget: 0.5919 -> 0.5853
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 0 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=0
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.18 (squad xG sum 0.8670, xG scale 1.3565, xA scale 1.3565, team xA 0.93 = 0.79 x lambda)scoreline_reset=true
team_lambda=1.176
squad_xg_sum=0.867
squad_xa_sum=0.6851
team_expected_assists=0.9294
team_xa_to_xg_ratio=0.7903
expected_goals: 0.0599 -> 0.0813
expected_assists: 0.0795 -> 0.1078
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 2 by projected rating, fifa_overall 82.0)match_squad_rank=2
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation skipped: 0 projected goalsteam_goals=0
allocation_applied=false
goals_allocated=0
goal_probability=0.0781
goal_rate=0.1137
scorer_weight=0.1016
-
integer_assist_projectionTeam scoreline allocation skipped: 0 projected assistsallocation_applied=false
team_assists=0
assists_allocated=0
assist_probability=0.1022
assist_rate=0.1033
provider_weight=0.1276
-
Guido RodríguezM8600.060.0451%10.67.059.429FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 0.9973, quality 0.445)market_value_eur=3600000
quality_factor=0.4449
boost_factor=0.9973
reference_quality=0.505
history_matches=29
history_shrink=0.1471
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0127)blend_weight=0.0127
history_matches=29
season_overlap_discount=1.0
per90_to_match_factor=0.9508
prior_reliability=0.1333
competition=La Liga
interceptionWon: 1.3963 -> 1.4088
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Federico Redondo', 'matchup_zone': 'CDM vs CDM', 'duel_win_rate': 0.415, 'pressing_faced': 'LOW', 'numerical_situation': '1v1', 'xg_multiplier': 0.9925, 'skill_edge': 0.0069, 'height_edge': -0.012, 'attacker_skill': 0.4527, 'defender_skill': 0.4374, 'attacker_role': 'CDM', 'attacker_mv_price_index': 0.85, 'defender_adjusted_parts': [{'player': 'Federico Redondo', 'market_value': 2400000, 'role': 'CDM', 'price_index': 0.85, 'adjusted_quality': 0.4374}], 'xg_override': 0.0412}
aerialWon: 1.2549 -> 1.2
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 0 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=0
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.18 (squad xG sum 0.8670, xG scale 1.3565, xA scale 1.3565, team xA 0.93 = 0.79 x lambda)scoreline_reset=true
team_lambda=1.176
squad_xg_sum=0.867
squad_xa_sum=0.6851
team_expected_assists=0.9294
team_xa_to_xg_ratio=0.7903
expected_goals: 0.0412 -> 0.0559
expected_assists: 0.0355 -> 0.0482
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 1 by projected rating, fifa_overall 78.0)match_squad_rank=1
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation skipped: 0 projected goalsteam_goals=0
allocation_applied=false
goals_allocated=0
goal_probability=0.0544
goal_rate=0.0557
scorer_weight=0.0648
-
integer_assist_projectionTeam scoreline allocation skipped: 0 projected assistsallocation_applied=false
team_assists=0
assists_allocated=0
assist_probability=0.0471
assist_rate=0.0471
provider_weight=0.0547
-
Javier GuerraM8100.240.10133%21.16.959.037FBref Prior M_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost M_service raw output over 8 target models--
market_value_boostMarket-value quality scaling (boost 1.0053, quality 0.686)market_value_eur=26000000
quality_factor=0.6858
boost_factor=1.0053
reference_quality=0.505
history_matches=46
history_shrink=0.098
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0115)blend_weight=0.0115
history_matches=46
season_overlap_discount=1.0
per90_to_match_factor=0.901
prior_reliability=0.18
competition=La Liga
fouls: 1.1056 -> 1.0929
totalShots: 1.6755 -> 1.668
onTargetScoringAttempt: 0.5347 -> 0.5286
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Federico Redondo', 'matchup_zone': 'Central Mid vs Defensive Mid — Pressing/Creation Duel', 'duel_win_rate': 0.568, 'pressing_faced': 'LOW', 'numerical_situation': '1v1', 'xg_multiplier': 1.1739, 'skill_edge': 0.1223, 'height_edge': -0.004, 'attacker_skill': 0.7091, 'defender_skill': 0.4374, 'attacker_role': 'CM', 'attacker_mv_price_index': 0.9, 'defender_adjusted_parts': [{'player': 'Federico Redondo', 'market_value': 2400000, 'role': 'CDM', 'price_index': 0.85, 'adjusted_quality': 0.4374}], 'xg_override': 0.1769}
aerialWon: 0.618 -> 1.2
totalShots: 1.6694 -> 1.9597
shotOffTarget: 1.1408 -> 1.3392
onTargetScoringAttempt: 0.5286 -> 0.6205
bigChanceMissed: 0.2735 -> 0.3211
goals: 0.1959 -> 0.23
expectedGoals: 0.1507 -> 0.1769
expectedGoalsOnTarget: 0.1226 -> 0.1439
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 0 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=0
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.18 (squad xG sum 0.8670, xG scale 1.3565, xA scale 1.3565, team xA 0.93 = 0.79 x lambda)scoreline_reset=true
team_lambda=1.176
squad_xg_sum=0.867
squad_xa_sum=0.6851
team_expected_assists=0.9294
team_xa_to_xg_ratio=0.7903
expected_goals: 0.1769 -> 0.24
expected_assists: 0.126 -> 0.171
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 6 by projected rating, fifa_overall 82.0)match_squad_rank=6
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation skipped: 0 projected goalsteam_goals=0
allocation_applied=false
goals_allocated=0
goal_probability=0.2134
goal_rate=0.23
scorer_weight=0.2962
-
integer_assist_projectionTeam scoreline allocation skipped: 0 projected assistsallocation_applied=false
team_assists=0
assists_allocated=0
assist_probability=0.1572
assist_rate=0.1375
provider_weight=0.1822
-
Pablo MaffeoD8200.020.0188%00.36.759.331FBref Prior D_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost D_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9977, quality 0.437)market_value_eur=2400000
quality_factor=0.4374
boost_factor=0.9977
reference_quality=0.505
history_matches=40
history_shrink=0.1111
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0038)blend_weight=0.0038
history_matches=40
season_overlap_discount=1.0
per90_to_match_factor=0.9154
prior_reliability=0.0533
competition=La Liga
totalCross: 2.7296 -> 2.7411
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Thomas Lemar', 'matchup_zone': 'Left Wing vs Right Back — Flank Battle'}
-
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 0 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=0
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.18 (squad xG sum 0.8670, xG scale 1.3565, xA scale 1.3565, team xA 0.93 = 0.79 x lambda)scoreline_reset=true
team_lambda=1.176
squad_xg_sum=0.867
squad_xa_sum=0.6851
team_expected_assists=0.9294
team_xa_to_xg_ratio=0.7903
expected_goals: 0.0169 -> 0.0229
expected_assists: 0.0557 -> 0.0756
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 15 by projected rating, fifa_overall 82.0)match_squad_rank=15
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv_filled
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation skipped: 0 projected goalsteam_goals=0
allocation_applied=false
goals_allocated=0
goal_probability=0.0226
goal_rate=0.001
scorer_weight=0.0183
-
integer_assist_projectionTeam scoreline allocation skipped: 0 projected assistsallocation_applied=false
team_assists=0
assists_allocated=0
assist_probability=0.0728
assist_rate=0.0634
provider_weight=0.0811
-
Arnaut DanjumaF8300.190.08133%21.06.952.835FBref Prior F_service
Step-by-step (10 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9977, quality 0.437)market_value_eur=2800000
quality_factor=0.4374
boost_factor=0.9977
reference_quality=0.505
history_matches=40
history_shrink=0.1111
-
fbref_prior_blendFBref 2026-27 prior blended (weight 0.0092)blend_weight=0.0092
history_matches=40
season_overlap_discount=1.0
per90_to_match_factor=0.9237
prior_reliability=0.1267
competition=La Liga
totalShots: 1.5769 -> 1.5943
wasFouled: 0.7597 -> 0.7705
fouls: 0.7168 -> 0.7236
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Buba Sangaré, Roy Revivo', 'matchup_zone': 'Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle', 'duel_win_rate': 0.18, 'pressing_faced': 'LOW', 'numerical_situation': '1v2', 'xg_multiplier': 0.9405, 'skill_edge': -0.0185, 'height_edge': -0.022, 'attacker_skill': 0.4374, 'defender_skill': 0.4785, 'attacker_role': 'ST', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Buba Sangaré', 'market_value': 4900000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.4809}, {'player': 'Roy Revivo', 'market_value': 4600000, 'role': 'CB', 'price_index': 0.75, 'adjusted_quality': 0.4761}], 'xg_override': 0.1365}
totalShots: 1.5943 -> 1.4994
shotOffTarget: 0.9717 -> 0.9139
onTargetScoringAttempt: 0.6088 -> 0.5726
bigChanceMissed: 0.4115 -> 0.387
goals: 0.1932 -> 0.1817
expectedGoals: 0.1451 -> 0.1365
expectedGoalsOnTarget: 0.107 -> 0.1006
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 0 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=0
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.18 (squad xG sum 0.8670, xG scale 1.3565, xA scale 1.3565, team xA 0.93 = 0.79 x lambda)scoreline_reset=true
team_lambda=1.176
squad_xg_sum=0.867
squad_xa_sum=0.6851
team_expected_assists=0.9294
team_xa_to_xg_ratio=0.7903
expected_goals: 0.1365 -> 0.1852
expected_assists: 0.0938 -> 0.1272
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 4 by projected rating, fifa_overall 75.0)match_squad_rank=4
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation skipped: 0 projected goalsteam_goals=0
allocation_applied=false
goals_allocated=0
goal_probability=0.1691
goal_rate=0.1817
scorer_weight=0.2301
-
integer_assist_projectionTeam scoreline allocation skipped: 0 projected assistsallocation_applied=false
team_assists=0
assists_allocated=0
assist_probability=0.1194
assist_rate=0.032
provider_weight=0.1018
-
Luis RiojaF7900.140.05210%10.76.858.134XGBoost F_service
Step-by-step (9 steps)
StepDescriptionKey paramsChanges
xgboost_rawXGBoost F_service raw output over 7 target models--
market_value_boostMarket-value quality scaling (boost 0.9979, quality 0.437)market_value_eur=1900000
quality_factor=0.4374
boost_factor=0.9979
reference_quality=0.505
history_matches=43
history_shrink=0.1042
-
final_capStats clamped to historical constraints and shot-component identitystats_clamped=0
shot_identity_applied=false
-
enriched_model_outputModel output after duel-context enrichment (pre router post-processing)duel_context_applied=true
duel_context={'opponent_faced': 'Matías Dituro', 'matchup_zone': 'Left Wing vs Right Back — Flank Battle', 'duel_win_rate': 0.36, 'pressing_faced': 'LOW', 'numerical_situation': '1v1', 'xg_multiplier': 0.9118, 'skill_edge': 0.0, 'height_edge': -0.06, 'attacker_skill': 0.4374, 'defender_skill': 0.4374, 'attacker_role': 'LW', 'attacker_mv_price_index': 1.0, 'defender_adjusted_parts': [{'player': 'Matías Dituro', 'market_value': 105000, 'role': 'GK', 'price_index': 0.55, 'adjusted_quality': 0.4374}], 'xg_override': 0.1042}
totalShots: 1.0546 -> 0.9616
shotOffTarget: 0.7231 -> 0.6593
onTargetScoringAttempt: 0.3315 -> 0.3023
goals: 0.1426 -> 0.13
expectedGoals: 0.1143 -> 0.1042
bigChanceMissed: 0.0839 -> 0.0765
expectedGoalsOnTarget: 0.0747 -> 0.0681
scoreline_resetTeam scoreline allocation: goal/assist counters reset to 0; the team's 0 goals are handed out as whole numbers by integer_goal_projection / integer_assist_projectionscoreline_reset=true
team_goals=0
-
team_lambda_rescalePlayer expected_goals/expected_assists rescaled to unconditional contributions so squad sum equals team lambda 1.18 (squad xG sum 0.8670, xG scale 1.3565, xA scale 1.3565, team xA 0.93 = 0.79 x lambda)scoreline_reset=true
team_lambda=1.176
squad_xg_sum=0.867
squad_xa_sum=0.6851
team_expected_assists=0.9294
team_xa_to_xg_ratio=0.7903
expected_goals: 0.1042 -> 0.1413
expected_assists: 0.0917 -> 0.1244
rankings_attachedDisplay-only provenance: no published number changes. Global ranking attached (match squad rank 8 by projected rating, fifa_overall 77.0)match_squad_rank=8
squad_role=starter
squad_rank_basis=projected_rating
affects_projection=false
ranking_source=sofascore_plus_fifa_csv
ranking_status=combined
-
integer_goal_projectionTeam scoreline allocation skipped: 0 projected goalsteam_goals=0
allocation_applied=false
goals_allocated=0
goal_probability=0.1318
goal_rate=0.13
scorer_weight=0.1649
-
integer_assist_projectionTeam scoreline allocation skipped: 0 projected assistsallocation_applied=false
team_assists=0
assists_allocated=0
assist_probability=0.117
assist_rate=0.1164
provider_weight=0.1461
-
Team totals01.18136.9
Bench Candidates (7 modeled substitutes with empirical playing time)
PlayerPosExp MinApp ProbSubstitute Modeling Details
Kayne van OevelenG4.5m11.1%Market-value substitute prior
Justin De HaasD13.8m22.2%Market-value substitute prior
José CopeteD13.7m30.2%Market-value substitute prior
Harvey ElliottM22.8m53.5%Market-value substitute prior
Filip UgrinićM29.8m43.8%Market-value substitute prior
Hugo DuroF22.6m59.9%Market-value substitute prior
Antagonist / tactical summary
Midfield is evenly contested — Federico Redondo vs Javier Guerra will be the pivotal duel. Total antagonist xG — Home: 0.81, Away: 0.57. Home danger zone: Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle. Away danger zone: Central Mid vs Defensive Mid — Pressing/Creation Duel.
Midfield — possession 48.5% / 51.5%, dominance ratio 0.46, key duel: Federico Redondo vs Javier Guerra
Thomas Lemar xG 0.07Gonzalo Villar xG 0.07Fernando Niño xG 0.35Luis Rioja xG 0.10Arnaut Danjuma xG 0.14Guido Rodríguez xG 0.04

Summary

Antagonist matchup analysis for Elche vs Valencia. Most likely scoreline: 1-0. Lambdas derived from 7 home and 6 away individual player duels. Head-to-head: Elche 2W-2D-6L vs Valencia over 10 meetings.
Tactical parity between 4-2-3-1 and 4-3-3. Match outcome driven primarily by individual player quality. Midfield is evenly contested — Federico Redondo vs Javier Guerra will be the pivotal duel. Total antagonist xG — Home: 0.81, Away: 0.57. Home danger zone: Striker vs Two Centre Backs — 1v2 Aerial/Physical Battle. Away danger zone: Central Mid vs Defensive Mid — Pressing/Creation Duel.


Generated 2026-11-01 14:36:49 UTC · Soccer prediction reporting