Expected Goals Revolution: Soccer Betting With xG Models
    Back to Media
    Soccer
    Soccer
    xG
    Analytics
    Betting

    Expected Goals Revolution: Soccer Betting With xG Models

    Pete Najarian 11 min readApr 6, 2026 52 comments

    Expected Goals (xG) has transformed soccer analysis. Here's how to use xG models to find mispriced match odds, totals, and Asian handicaps across the world's biggest leagues.

    What Is Expected Goals (xG)?

    Expected Goals assigns a probability to every shot based on historical conversion rates from similar positions. A penalty has an xG of ~0.76. A header from 15 yards has an xG of ~0.06. Sum all the shots in a match and you get the team's total xG โ€” a measure of how many goals they SHOULD have scored.

    Why xG Matters for Betting

    Actual goals are noisy. A team can dominate possession, create 2.5 xG worth of chances, and lose 1-0 to a team that created 0.4 xG. This happens all the time in soccer. And when it does, the betting market overreacts.

    ### The xG Edge - Team creates high xG but scores few goals: Undervalued by the market. Back them. - Team creates low xG but scores lots of goals: Overvalued. Fade them. - The market tracks results. You track process.

    xG vs. xGOT (Expected Goals on Target)

    xGOT only counts shots that hit the target, weighted by their placement. A shot into the top corner has a higher xGOT than the same location shot into the middle of the goal.

    xGOT is more predictive for individual match outcomes, while xG is better for long-term team assessment.

    Applying xG to Betting Markets

    ### Match Odds (1X2) Compare each team's season xG for and against to the implied probabilities in the odds. When your xG-derived probability exceeds the market's by 5%+, you have a bet.

    ### Asian Handicap xG tells you the expected margin. If Team A's xG differential suggests they should win by 1.2 goals on average, and the handicap is -0.5, that's value on Team A -0.5.

    ### Totals (Over/Under) Sum both teams' xG averages. If the combined xG suggests 3.1 goals per game but the total is set at 2.5, the over has value.

    League-Specific Adjustments

    ### Premier League - Highest pace and transition frequency in Europe - xG models need to account for counter-attacking speed - Set pieces contribute ~30% of goals โ€” factor in set piece xG

    ### La Liga - More possession-based, lower xG per game on average - Overs are less frequent; look for value on unders - Home field advantage is stronger than in the PL

    ### Bundesliga - Highest goals per game of any top league - xG models align well with actual results (less variance) - Great league for systematic xG-based betting

    ### Serie A - Tactically defensive, especially for away teams - First half unders are profitable - xG models work well for home teams but overestimate away performance

    Building Your xG Model

    1. Aggregate xG data from Understat, FBref, or StatsBomb
    2. Calculate rolling 10-match xG averages (home/away separately)
    3. Derive expected match xG from the averages
    4. Convert to implied probabilities using a Poisson distribution
    5. Compare to market odds

    Common Mistakes

    • Using xG from a single match (too small a sample)
    • Ignoring home/away splits (massive in soccer)
    • Not accounting for player availability (one injured striker can drop xG by 0.5)
    • Treating all leagues the same (each has a different scoring environment)

    *โ€” Pete Najarian*

    ENJOYED THIS ARTICLE?

    Check out more analysis from the Najarian Brothers