How the edge is computed

WeBall3 min readUpdated Aug 15, 2026Reviewed Aug 15, 2026

WeBall computes an edge in four steps. It samples the results behind the market, fits those samples into a model probability for the bet, strips the vig from cross-book consensus to get the market's fair probability, and subtracts one from the other. That difference, in percentage points, is the edge.

Every graded bet in WeBall is the output of the same four steps, regardless of sport or market. There is no per-sport hand-tuning and no discretionary override — one engine grades an NFL spread and a Premier League corners total by the same procedure.

Step 1 — Sample

The engine pulls the historical results that decide the market. For a spread that is the scoring margin in each team's recent games; for a total it is combined score; for a player prop it is that player's game log for the relevant stat.

What counts as "recent" varies by sport, and the sample is opponent-adjusted where the data supports it. Markets whose deciding number cannot be reconstructed from the warehouse are not graded at all — they surface as UNRATED rather than receiving a guess.

Step 2 — Fit a model probability

The sample is fitted with a distribution chosen by the shape of the quantity being predicted:

QuantityDistributionExamples
Yes/no outcomeBinaryMoneyline, both teams to score, anytime touchdown
Non-negative countPoisson or negative binomial, by dispersionTotals, corners, receptions, strikeouts
Continuous amountNormal approximationSpreads, passing yards, rushing yards

For head-to-head and derived markets the engine uses a paired Poisson matchup model: it estimates each side's expected scoring rate, then derives the probability of every outcome the market prices from that pair.

Step 3 — Find the market's fair probability

The posted odds are not the market's honest opinion — they include the bookmaker's margin. The engine takes the prices across books, converts them to implied probabilities, and normalises them so they sum to 100%. That is the no-vig fair probability.

Skipping this step is the most common way to fool yourself into thinking a bet has value: measured against the posted price rather than the fair price, almost everything looks slightly bad, and the few things that look good are usually mispriced in the other direction.

Step 4 — Publish the difference

edge = model probability − fair probability

The number on every edge badge

An edge of +5.4% means the model thinks the bet wins 5.4 percentage points more often than the market's fair price implies. That gap, together with the confidence score, decides the verdict grade.

Worked example

  1. 01A team's spread is priced −110 on both sides across the board.
  2. 02Each side's implied probability is 52.4%, summing to 104.8% — a 4.8% hold.
  3. 03Normalising to 100% gives a fair probability of 50.0% per side.
  4. 04The matchup model, shrunk toward that market prior, lands at 55.4% for the favourite.
Edge = 55.4% − 50.0% = +5.4%. At standard −110 pricing, breakeven is 52.4%, so the model expects this bet to clear the vig by roughly three points.

What the edge is not

It is not a prediction that the bet wins. A +5.4% edge on a coin-flip spread still loses a little under half the time, and a run of losses inside that is completely normal.

It is also not a promise about the price you will get. Edges are computed against the best available price at grading time. Lines move, and a bet that graded GOOD at open can be fairly priced by kickoff — which is exactly why closing line value is the better measure of whether your process is working.

Common questions

Is a bigger edge always better?

No. A large edge on a thin sample is usually a sign the model is wrong rather than the market. That is what the confidence score exists to express, and why a high-edge, low-confidence bet is graded THIN DATA instead of GOOD.

Does the edge account for the price I actually get?

It is computed against the best price on the board at the time of grading. If the line has moved by the time you bet, the edge you get is not the edge that was published. This is why beating the closing line matters more than the badge.