Model Notes

Model Notes

This page answers the big question: are the probabilities just vibes? Short answer: not magic, not a crystal ball. The model uses official fixtures, team strength, and locked results to run Monte Carlo simulations every day at 00:00 ET.

Latest prediction
06/02/2026, 11:12 AM EDT
Simulation runs
100,000
Locked results
0
Match probabilities in this version
72

Inputs

Input data

Official fixtures and format

48 teams, 12 groups, 104 matches, and official knockout slots. The top two in each group plus the eight best third-place teams reach the Round of 32.

Team strength

FIFA ranking points are imported as rating inputs first; the local seed rating keeps the development model runnable when a team is not matched yet.

Actual results

After each match, results are locked through the official sync or admin entry. The public site treats both as the same verified actual result.

Pre-match probabilities

Each prediction version stores home win, draw, and away win probabilities for known group-stage matches, powering the match center, recap, and prediction API.

Data Ledger

Source data details

Teams, groups, and fixtures

Source: FIFA 2026 World Cup official page. Local record time 2026-05-28Current database 48 teams104 matches

View FIFA official tournament page
Team strength

Source: FIFA men's ranking API. The imported fields are rank and ranking points, then written to the local model rating. Imported 48unmatched 0Unmatched teams use local placeholder ratings so the model does not simply refuse to work.

View FIFA ranking API
Actual match results

Source: FIFA match calendar API or admin entry based on the actual result. Once locked, a result participates as fact in the next prediction.

View FIFA matches API
Model configuration

Configuration version 1Simulation runs 100,000home advantage 35 rating pointsThe configuration is archived with each prediction version so we can review what the model believed at the time.

Current Ratings

Current strength sample

TeamFIFA codeGroupFIFA rankRanking pointsModel rating
🇫🇷FranceFRAGroup I11877.321877.32
🇪🇸SpainESPGroup H21876.401876.40
🇦🇷ArgentinaARGGroup J31874.811874.81
🏴EnglandENGGroup L41825.971825.97
🇵🇹PortugalPORGroup K51763.831763.83
🇧🇷BrazilBRAGroup C61761.161761.16
🇳🇱NetherlandsNEDGroup F71757.871757.87
🇲🇦MoroccoMARGroup C81755.871755.87

Only the first 8 rows are shown here. The full strength table lives in the Team database table. If Elo, injuries, form, or market odds are added later, their source and weight will also be exposed here.

Process

Calculation flow

  1. Read teams, fixtures, latest model config, and locked results.
  2. Simulate the group stage: locked matches use actual scores; unplayed matches are generated from team strength.
  3. Rank groups by points, goal difference, goals scored, wins, and related tiebreakers.
  4. Fill official knockout slots and simulate through the final, counting how often each team reaches each round and wins.
  5. Store pre-match directional probabilities so the recap can later answer what the model believed before kickoff.
  6. Convert counts into probabilities and compare champion odds against the previous version.

API

Match probability API

Latest match probabilities

`GET /api/matches/[matchId]/prediction` returns the latest prediction version, teams, and home/draw/away probabilities for one match.

Example

`/api/matches/g001/prediction` shows the pre-match directional probabilities for M1 Mexico vs South Africa.

Cadence

Update cadence

Daily scheduled update

A formal prediction version is generated every day at 00:00 ET and recorded in the prediction log.

Same rhythm during the tournament

Matches with actual results are locked; unplayed matches keep being simulated until the champion is decided.

Sync fallback

If official data is temporarily delayed, the admin can enter the actual result manually with the same prediction effect.

Current State

Current data state

48
Team
104
matches
48
FIFA points imported
1
Model config version
72
Cumulative match probabilities

Latest generated at: 06/02/2026, 11:12 AM EDTThis is still a lightweight prototype model: great for matchday fun and path watching, not investment advice. Football has a gift for educating certainty.