Model and markets,
side by side
Probability tables alone are commodity content. The distinctive thing is publishing the model's read next to two independent markets — Polymarket and Kalshi — ahead of time, then scoring each one honestly as the tournament plays out. There is no single market reference, so we never blend the venues into a consensus. This page is the dated bet; the calibration scorecard is where it gets settled.
Model and both markets agree at the top of the field — all have Spain as the favourite. Most of the action is therefore further down the table. Mean absolute gap across the 48 compared teams is 0.88 pp (averaged over venues — a navigational figure, not a pooled price). The pairs below isolate the biggest gaps in each direction.
We rate higher than the markets
All compared teams
Snapshot 2026-05-27| Team | Model | Polymarket | Kalshi | ||
|---|---|---|---|---|---|
| implied | Δ | implied | Δ | ||
| Spain | 13.3% | 16.6% | -3.2pp | 16.2% | -2.8pp |
| Brazil | 13.1% | 9.0% | +4.1pp | 8.7% | +4.4pp |
| Argentina | 11.8% | 8.0% | +3.8pp | 8.7% | +3.0pp |
| England | 9.4% | 10.8% | -1.4pp | 10.5% | -1.1pp |
| France | 6.9% | 16.3% | -9.3pp | 15.9% | -8.9pp |
| Portugal | 6.7% | 10.1% | -3.5pp | 9.0% | -2.3pp |
| Germany | 5.0% | 5.0% | +0.1pp | 5.3% | -0.3pp |
| Colombia | 4.6% | 1.7% | +3.0pp | 1.7% | +3.0pp |
| Belgium | 4.1% | 1.7% | +2.4pp | 2.2% | +1.8pp |
| Netherlands | 4.0% | 3.7% | +0.2pp | 3.8% | +0.2pp |
| Uruguay | 2.9% | 1.0% | +1.9pp | 1.1% | +1.8pp |
| Morocco | 2.6% | 1.4% | +1.2pp | 1.4% | +1.2pp |
| Croatia | 1.9% | 0.8% | +1.1pp | 0.8% | +1.1pp |
| Ecuador | 1.9% | 0.7% | +1.2pp | 0.7% | +1.2pp |
| Switzerland | 1.8% | 1.2% | +0.6pp | 0.9% | +0.9pp |
| Mexico | 1.0% | 1.0% | -0.0pp | 1.1% | -0.2pp |
| Japan | 1.0% | 1.8% | -0.8pp | 1.5% | -0.5pp |
| Norway | 0.9% | 2.5% | -1.5pp | 2.2% | -1.3pp |
| Senegal | 0.9% | 0.6% | +0.3pp | 0.7% | +0.2pp |
| Iran | 0.6% | 0.1% | +0.5pp | 0.1% | +0.6pp |
| United States | 0.5% | 1.1% | -0.6pp | 1.3% | -0.8pp |
| Austria | 0.5% | 0.5% | -0.0pp | 0.5% | -0.0pp |
| Australia | 0.4% | 0.1% | +0.3pp | 0.1% | +0.3pp |
| Sweden | 0.4% | 0.5% | -0.1pp | 0.5% | -0.1pp |
| Turkey | 0.4% | — | — | 0.7% | -0.3pp |
| Paraguay | 0.4% | 0.2% | +0.2pp | 0.2% | +0.2pp |
| Ivory Coast | 0.4% | 0.2% | +0.1pp | 0.2% | +0.1pp |
| Canada | 0.4% | 0.3% | +0.0pp | 0.3% | +0.1pp |
| Egypt | 0.3% | 0.2% | +0.1pp | 0.2% | +0.1pp |
| South Korea | 0.3% | 0.2% | +0.1pp | 0.2% | +0.1pp |
| Czech Republic | 0.3% | 0.2% | +0.1pp | 0.5% | -0.2pp |
| Scotland | 0.3% | 0.2% | +0.0pp | 0.2% | +0.0pp |
| Algeria | 0.3% | 0.1% | +0.1pp | 0.1% | +0.1pp |
| Tunisia | 0.2% | 0.1% | +0.1pp | 0.1% | +0.1pp |
| Uzbekistan | 0.1% | 0.1% | +0.0pp | 0.1% | +0.0pp |
| DR Congo | 0.1% | — | — | 0.5% | -0.4pp |
| South Africa | 0.0% | 0.1% | -0.0pp | 0.1% | -0.0pp |
| Bosnia and Herzegovina | 0.0% | — | — | 0.5% | -0.4pp |
| Panama | 0.0% | 0.1% | -0.0pp | 0.1% | -0.0pp |
| Ghana | 0.0% | 0.2% | -0.2pp | 0.1% | -0.1pp |
| Saudi Arabia | 0.0% | 0.1% | -0.0pp | 0.1% | -0.0pp |
| Jordan | 0.0% | 0.1% | -0.0pp | 0.1% | -0.0pp |
| Iraq | 0.0% | 0.1% | -0.0pp | 0.5% | -0.5pp |
| Cape Verde | 0.0% | 0.1% | -0.1pp | 0.1% | -0.1pp |
| Curaçao | 0.0% | 0.1% | -0.1pp | 0.1% | -0.1pp |
| Haiti | 0.0% | 0.1% | -0.1pp | 0.1% | -0.1pp |
| New Zealand | 0.0% | 0.1% | -0.1pp | 0.1% | -0.1pp |
| Qatar | 0.0% | 0.1% | -0.1pp | 0.1% | -0.1pp |
We de-vig each venue separately by proportional normalization (pi = yesi / Σ yesj). This is simple and transparent, but it assumes the overround is spread proportionally across teams. Δ is the model's champion probability minus that venue's de-vigged implied, in percentage points.
Tournament scoreboard starts 2026-06-11
Once matches start, every fixture gets a pre-match probability from us and from each market venue's closing line. Outcomes are then scored under a proper rule (RPS), per venue, and the cumulative margins published here. Champion futures are scored separately, and only resolve once the tournament ends.
The point is not bragging rights — it's to make the comparison falsifiable on a public timeline. If the model loses to a venue, the page says so. The calibration scorecard tracks the related "when we say 60%, does it happen 60% of the time?" question.