The models · 9 min read

EPL Projection Model

How Fairline's Premier League model works: a Dixon-Coles adjusted Poisson framework with the tau draw correction, venue-split goal rates, recent form, and the markets it prices.

Updated Jul 2026 · Part of the models series

Why Dixon-Coles?

Football (soccer) has a fundamental modeling challenge that standard Poisson doesn't handle well: low-scoring outcomes are correlated. In a 0-0 or 1-1 game, both teams' goal counts reflect the same underlying match conditions (defensive tactics, poor pitch, weather) suppressing both sides at once. Standard Poisson treats the two teams' scores as independent draws, and that assumption systematically underestimates the probability of draws.

The Dixon-Coles model (1997) fixes this by adding a tau correction that adjusts exactly four cells in the score matrix (the 0-0, 1-0, 0-1, and 1-1 outcomes) using a parameter rho (-0.07) fitted from historical match data. The correction shifts draw probability by 2-3 percentage points, the part of the score matrix a plain Poisson model gets most wrong. Low-scoring results like draws are exactly where the goals-are-independent assumption breaks down.

The model also compares each team's season scoring rates with a trailing average from its last 8finished matches. This lets recent changes affect the projection while bounding the adjustment so a short streak cannot dominate the season sample. The EPL is also unique in having a three-way outcome (Home/Draw/Away), so the model must correctly distribute probability across all three outcomes and cannot treat the market as a binary yes/no.

Component Weights

The model computes each team's scoring rate (lambda) from five weighted components. Goals differential (each team's actual home/away goal splits) is the foundation; a 2025-26 audit found the model's prior xG-based version produced systematic per-team biases, so live lambdas are built from actual goals instead. The remaining components capture factors those splits alone miss. The percentages shown describe the design allocation across components; the live formula applies each factor as a multiplicative adjustment rather than consuming these percentages directly.

Live configurationrendered from the running system, always current
Goals Differential45%
Defensive Suppression15%
Recent Form18%
Congestion8%
Home Venue8%

Per-Team Home/Away Splits: Each team's home and away attack and defense strengths are computed from their actual goals scored and conceded at each venue, drawn from finished fixtures. The samples are Bayesian-blended with the league venue baseline using 10 phantom matches as a prior, so early-season noise gets shrunk toward the league mean. This replaces a flat venue factor that assumed every team shared the league-wide H/A asymmetry. In 2025-26 the per-team H-A spread ranges from +0.89 (Newcastle) to -0.41 (Chelsea), so a uniform factor erased real venue effects.

Defensive Suppression (15%): How well a team limits opponents' goals. Separating this from overall goals differential lets the model weight defensive solidity independently, which matters most in low-scoring league phases.

Recent Form (18%): A simple average of goals scored and conceded over the last 8 finished matches. Each rate is compared with the team's season rate and adjusts the relevant lambda by 10% per goal per match, capped at 12%.

Congestion (8%): Fixture pile-ups from Champions League, Europa League, and cup competitions force rotation and fatigue, reducing attacking output.

Home Venue (8%): Captured entirely by the per-team H/A splits above, which already encode each ground's actual scoring and conceding profile. A 2026-07 ablation tested adding a generic multiplicative boost on top of the venue splits and found it added no 1X2 accuracy while worsening goal-total projections, so it stays neutral in the live model (see the Home Advantage section below).

Player Absence (0-25%): A separate multiplicative reduction applied on top of the five core components. When the pipeline runs within 90 minutes of kickoff, the official starting XI is fetched from PulseLive (the backend that powers premierleague.com), and any expected starter not in it is treated as a rotation-out absence alongside FPL-flagged injuries and suspensions. Each absence reduces lambda proportional to that player's xG/90 share of team output, capped at 25% total. This catches B-team rotations before midweek cup matches and end-of-season dead rubbers, where the manager rests healthy starters and FPL injury data has no signal.

Dixon-Coles Tau Correction

The heart of the model. Standard Poisson produces a 9x9 matrix of scoreline probabilities assuming independence. The tau correction then adjusts four specific cells:

  • P(0,0) is increased, because goalless draws happen more often than independence predicts
  • P(1,1) is increased, because 1-1 draws are also more common
  • P(1,0) and P(0,1) are decreased, because narrow wins are slightly less likely

With rho = -0.07, this shifts draw probability by 2-3 percentage points and is the primary source of model edge. The parameter is refitted at mid-season and end-of-season from EPL data; it has remained stable in the -0.10 to -0.20 range across multiple seasons.

Recent Form Adjustment

Football teams evolve through transfers, tactical adjustments, injuries, and manager changes. The live model takes an arithmetic mean over the trailing finished-fixture window, so every match in that window carries equal weight. It does not apply exponential time decay.

Live configurationrendered from the running system, always current
ParameterValue
Form window8 matches
Goal-rate scaling10%
Maximum adjustment12%

Home Advantage

Home advantage in the EPL is carried by the per-team venue-split strengths above: each club's home and away scoring and conceding rates are estimated separately, so a fortress ground or a difficult away trip is already priced into the lambda before any further adjustment. A 2026-07 preregistered ablation tested adding a generic multiplicative boost and per-ground premiums (Anfield, St James' Park) on top of the venue splits by replaying three completed seasons through the real backtest. The extra boost added no measurable 1X2 accuracy and made goal-total projections measurably worse, so both the boost and the premiums are neutral in the live model.

Contextual Adjustments

These adjustments capture situations that baseline team strength doesn't account for. Fixture congestion from European competition forces rotation and fatigue. A new manager appointment produces a well-documented short-term performance boost as players respond to fresh methods and increased scrutiny.

Live configurationrendered from the running system, always current
ParameterValue
Fixture congestion penalty-0.075
New manager bounce+12%

League Baselines

The league-wide scoring averages that anchor all lambda calculations. Home and away baselines are separated because home advantage in football is baked into the attack/defense strength ratios, with home teams creating better chances on average.

Live configurationrendered from the running system, always current
ParameterValue
Goals per game2.73
Home Goals (League Avg)1.45
Away Goals (League Avg)1.25
BTTS rate52%

Internal observation policy

Fairline records an internal observation whenever the model's fair odds differ from the sportsbook's price by a flat 3%, the same threshold for every market. Each row carries a one-unit research weight for calibration and closing-line tracking. These observations are not surfaced as bets.

Command-line reference. The standalone model runner also includes a quarter-Kelly staking calculator with per-market EV thresholds (below). These are an offline reference and do not drive any user-facing surface. The internal measurement record uses the flat 3% threshold and one-unit research weight described above.

Live configurationrendered from the running system, always current
ParameterValue
1x23.0%
Asian Handicap2.0%
Total2.0%
Btts3.0%
Correct Score5.0%
Team Total2.5%
Anytime Goalscorer4.0%
Cards5.0%

Markets Explained

Football has more distinct market types than any other sport the model covers. Each one asks a different question, and the Dixon-Coles score matrix lets the model answer all of them from a single unified probability distribution.

1X2 (Match Result)

LIV 1.75 / Draw 3.50 / ARS 4.50

Three-way outcome: home win, draw, or away win. Football is the only major sport where a tie is a regular outcome, with about 25% of matches ending in a draw. Shown in decimal odds here (1.75 = +75 American). This is where Dixon-Coles does its primary work: the tau correction shifts draw probability by 2-3 points vs standard Poisson, and draws are consistently underpriced because casual bettors avoid them.

Asian Handicap

LIV -1.5 +120 / ARS +1.5 -140

A goal-based spread that eliminates draws entirely. If the result is a push, you get your stake back. Quarter lines (-1.25, -1.75) split your bet across two adjacent handicaps. Asian handicap is the sharpest, most efficient football market, with the lowest EV threshold and the cleanest prices, and it's the market most favored by sharp bettors worldwide.

Goal Totals (Over/Under)

O 2.5 -110 / U 2.5 -110

Combined goals across both teams. 2.5 is the most common line. Driven by both teams' goal-scoring rates, defensive suppression, and fixture-specific factors like congestion (tired legs produce fewer goals). Quarter lines (2.25, 2.75) work like Asian handicaps, splitting between adjacent whole lines to soften pushes.

BTTS (Both Teams To Score)

Yes -125 / No +105

Does each team score at least one goal? Independent of final margin: a 3-1 and a 1-1 both cash 'Yes'. Derived directly from the score matrix: sum all cells where both home and away goals > 0. The league BTTS rate sits around 55%, and the model's edge here comes from defensive matchups where one side is unusually likely to be shut out.

Correct Score

2-1 +650 / 1-1 +550

Pick the exact final score. The highest-variance market football offers: correct score cashes rarely but pays huge. The model reads each scoreline directly from the Dixon-Coles matrix cell, so priced bets are always internally consistent with the rest of the markets. Requires the largest edge threshold because pricing errors compound at long odds.

Team Totals

LIV O 1.5 -130 / LIV U 1.5 +110

Over/under on one team's goals. Useful when the model has a strong view on one side's attack (Manchester City at home vs. a relegation defense) but an unclear read on the opponent. Derived by marginalizing the score matrix across one team's axis.

Model Track Record

EPL presents an honest backtesting challenge because the season is only 380 matches, a sample too small for hit-rate metrics to be meaningful on their own. Dixon-Coles is validated primarily through Brier score and CLV. The core question is whether the model's probabilities are better calibrated than the market's opening lines. Historical academic replications of Dixon-Coles on multi-decade European football data consistently show it is well-calibrated against match outcomes, and our implementation follows the same framework. Live validation happens continuously against bet results on the History page.

When to Trust This Model (and When Not To)

EPL's weekly rhythm means most matches are clean projection environments. The exceptions are European-competition weeks and international breaks, where fixture context fights the model's assumptions.

Trust it most
  • Standard Saturday 3pm/5pm/7pm matches with full week of rest
  • Mid-season form (matchweeks 6-34, after early-season noise settles)
  • Matches between non-European teams (no congestion variable)
  • Asian handicap and totals markets (sharpest lines)
  • Draw-friendly matchups where Dixon-Coles' edge is strongest
Trust it least
  • Post-Champions League midweek (heavy rotation, hard to predict XI)
  • First match after an international break (player fatigue and injuries)
  • First match under a new manager (bounce is modeled but volatile)
  • Final-day matches with nothing to play for (motivation flips)
  • Matchweeks 1-3 (priors dominate, little current-season data)
  • Correct score markets (always treat as entertainment bets)

The parameter values on this page are rendered from the running system and refresh periodically; when a weight or threshold changes, this page reflects it automatically.