Sources, definitions and accountability

Football prediction methodology

How PredictionsX publishes forecasts and measures results.

Today shows current provider estimates. History preserves published forecasts; Performance evaluates saved probabilities against recorded results. Betting selections and returns are not available.

Provider model and limitations

Today reads football fixtures and external Provider model estimates from API-FOOTBALL through a separate read-only connection. These are not a proprietary PredictionsX model. Provider model version is undisclosed.

The current adapter (provider-percent-1x2-v1) displays the supplied home, draw and away percentages without selecting a betting pick. All three values must be between 0 and 100, with a total between 99 and 101 to allow rounding; values are not rescaled. Other markets remain N/A.

Estimates are shown only before kickoff for Not Started fixtures when source sync is within 24 hours and not in the future. Source sync means collection time, not a verified model-generation time. The fixture feed is cached for up to 60 seconds. Current estimates can change. History preserves published snapshots, and Performance evaluates only their saved probabilities against recorded results. Equal top estimates identify two or three outcomes with the same highest probability; we do not break the tie to select a favourite.

Estimated probability describes a named outcome. It is not historical accuracy or confidence. Confidence will remain N/A unless the provider supplies a documented method; missing probabilities will not be inferred from text advice.

Form, head-to-head records and team news can provide context when verified. They will not be described as model inputs unless the provider documents that relationship.

Publication before kick-off

Each published pick will record its source, model or adapter version, data timestamps, probability, available decimal odds and lock time in UTC. An undisclosed provider version will be labelled as undisclosed.

The planned lock deadline is five minutes before kick-off, subject to a fresh fixture and source check. Post-kick-off imports will not count as pre-match predictions. New information will not overwrite the original locked forecast.

Selection thresholds, freshness limits and tie-breaking rules must be confirmed and published before the workflow starts.

Full-time markets and odds

1X2
Home win, draw or away win.
Over / Under 2.5
Whether the match has at least three goals or fewer than three.
Both teams to score
Whether each team scores at least once.

These planned markets use regulation time plus stoppage time. Extra time and penalties do not count. Unsupported provider markets will be marked unavailable.

Decimal odds will include the bookmaker, market, line and capture time. A margin-adjusted comparison needs the complete set of mutually exclusive outcomes from the same bookmaker and market. Current odds will never substitute for missing locked odds.

Results, pending picks and corrections

Published records will remain pending until a confirmed regulation-time result supports settlement. Won, Lost, Void and Pending will all remain visible in the public history.

The proposed postponement policy keeps the original published pick visible as void, with no replacement pick for the same fixture, model and market. Cancellation and abandonment handling will be confirmed against the provider's status contract before publication.

A corrected result will create a new settlement revision with the old and new values, reason and UTC time. The original forecast will remain unchanged, and performance will use the latest settlement revision.

View the public prediction history

Planned betting accuracy, yield and bankroll ROI

Accuracy
Won ÷ (Won + Lost) × 100. Pending and void picks are excluded.
Yield
Net profit ÷ settled, non-void priced staked units × 100.
Bankroll ROI
Net profit ÷ the initial 100-unit bankroll × 100.

The planned simulation uses a flat stake of 1 unit per pick. A win returns odds minus 1 unit of profit; a loss is −1 unit; a void is 0. No cash betting is performed.

Picks without pre-match locked odds can enter accuracy after settlement but not financial metrics. Reports will show the period, model version, sample size and exclusions. Values remain N/A before actual results are available.

View forecast evaluation and betting metrics

Evaluating saved 1X2 probabilities

Performance evaluates valid pre-match publications by their original scheduled kickoff, over 7, 30 or 90 UTC calendar days ending at the displayed cutoff. Only the latest result revision recorded by that cutoff is used. Later imports and corrections do not enter an earlier cutoff. The sample is limited to published analyses, not the provider's entire coverage. Provider model version is undisclosed.

Highest-probability accuracy is the percentage of eligible forecasts whose single highest-probability outcome matched the FT result. Ties are excluded from accuracy and included in the probability score. This is retrospective forecast evaluation, not a record of selected or placed bets.

The multiclass Brier score is the mean of (pHome − yHome)² + (pDraw − yDraw)² + (pAway − yAway)², where the observed outcome has y = 1 and the other outcomes have y = 0. The scale is 0 to 2, lower is better. Equal one-third probabilities score 2/3 regardless of the result. This baseline is not a betting strategy.

All three saved probabilities must be finite, between 0 and 1 and total between 0.99 and 1.01. For scoring only, each is divided by that total to resolve provider rounding. The number adjusted is disclosed; original stored and displayed probabilities are never rescaled or replaced. No missing probability is inferred.

Only confirmed FT scores qualify. Extra-time, shootouts, awarded results and non-final states are excluded. Coverage separately identifies missing results, missing probabilities and invalid publications. A data error or oversized report returns unavailable metrics rather than a partial sample.

The reporting-cutoff link and calculation fingerprint identify the period, method version and immutable publication/result references. Results remain inspectable on the original analysis URL. These metrics do not establish calibration across other competitions, future accuracy or profitability. Yield and ROI require separately published betting selections and remain N/A.

Saved match analyses

We publish factual pre-match analyses only when at least three completed home matches and three completed away matches are available. Each sample contains up to five FT results from the previous year, across all competitions. Extra-time and penalty-shootout results are excluded from goal frequencies.

The analysis saves its evidence, provider distribution when recent and complete, publication time and a content checksum in our own database. Publication is at least five minutes before scheduled kickoff. The original record remains unchanged after kickoff; it is not presented as live team news.

Over 2.5 and BTTS frequencies describe the observed samples, not future probabilities. Kickoff gaps are not measured recovery time. Standings retain their source dates and group labels. No motivation score or model reasoning is inferred.

New publications can include observed xG from the same FT home/away samples. The observed-xg-paired-v1 adapter counts a match only when both teams have one valid expected_goals value and source timestamps no later than publication. Missing, duplicate, malformed, negative, non-finite or values above 100 are excluded as data-quality failures. Zero is valid. Totals, averages and actual goals all use the displayed paired sample; they are not a forecast, a luck score or evidence of model calibration. Provider xG methodology is undisclosed. Old publications are never backfilled with xG that was not saved at their publication time.

New analyses can save pre-match Match Winner (1X2) prices using prematch-1x2-lowest-bookmaker-v1. The complete Home/Draw/Away market must belong to one bookmaker and the same fixture and kickoff. Source update and sync must fall within the previous 24 hours, with update no later than sync and sync no later than publication. The JSON update timestamp is required; a separate update column, when supplied, must agree. Decimal values must be finite, greater than 1 and no greater than 1000. Duplicate or incomplete records are excluded. We select the lowest numeric bookmaker ID among valid candidates, not the highest price.

The market comparison divides each inverse decimal odd by the sum of all three inverse odds. This removes the margin proportionally; it is not a verified true probability. The Provider model minus this baseline is shown in percentage points, without claiming an edge or calibrated expected return. Saved quotes cannot establish 24-hour price movement, current availability or ROI. Old publications are never filled with later prices.

New analyses can save provider-reported absences and lineups using observed-team-news-v1. Absences must match the fixture, kickoff, competition, season, team and player identities, with collection no later than observation. Records collected over 24 hours earlier are labelled; collection time does not prove current availability or complete coverage. Identical normalized absence duplicates are collapsed, while conflicting duplicates are excluded. A list exceeding 100 source rows is withheld. An empty list is unavailable information, not a healthy-squad claim.

A lineup requires 11 distinct starting players, matching fixture and team identities, and collection within the 24 hours before scheduled kickoff and no later than observation. Incomplete or conflicting lineups are excluded. Lineups remain provider-reported; independent confirmation and key-player impact are not supplied. Team news is saved only when an analysis is first published. Later news does not replace that snapshot, and old publications are not backfilled.

Saved distributions do not select a bet and do not enter the prediction win/loss or ROI ledger. Confidence, referee metrics and odds movement remain unavailable.