Two scorecards, kept honest. One grades the forecast — how good our probabilities were. The other grades the bets — paper picks taken only when our price beat the market. They measure different things and can disagree on the same match; that's the method working, not a contradiction.
43 of 69 hit · beats the 0.667 coin-flip
How sharp the group-stage forecast was. Lower is better — 0 is perfect, 0.667 a coin flip.
26 of 32 right · beats the 0.5 coin-flip
Who we called to advance in the knockout, graded on the tie's result (extra time + penalties). Lower is better — 0.5 a coin flip.
68–55 settled · CLV +0.2pp
Paper picks, recorded only when our price beats the market. CLV is how far the line moved our way by kickoff.
35–36 on paper
Bold calls where we disagree hard with the market — too risky to stake, tracked to see who's right.
The Ledger
Each day's calls and bets, newest first. Open a day to see the detail.
Sun · July 191 advance call · 1/1 hit · Brier 0.34
Advance calls — who goes through, graded
| Tie | Our call | Advanced | Hit | Brier |
|---|---|---|---|---|
| Spain v Argentina | Spain 59% | Spain | correct call | 0.340 |
Sat · July 181 advance call · 0/1 hit · Brier 0.611 bet · +1.0u
Advance calls — who goes through, graded
| Tie | Our call | Advanced | Hit | Brier |
|---|---|---|---|---|
| France v England | France 55% | England | missed | 0.610 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| France v England | England +0.5 | -104 | 6.3pp | won | +0.96 | -0.8pp |
Wed · July 151 advance call · 1/1 hit · Brier 0.331 bet · -1.0u
Advance calls — who goes through, graded
| Tie | Our call | Advanced | Hit | Brier |
|---|---|---|---|---|
| England v Argentina | Argentina 60% | Argentina | correct call | 0.325 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| England v Argentina | Under 2.5 | -175 | 7.9pp | lost | -1.00 | -0.0pp |
Tue · July 141 advance call · 1/1 hit · Brier 0.26
Advance calls — who goes through, graded
| Tie | Our call | Advanced | Hit | Brier |
|---|---|---|---|---|
| France v Spain | Spain 64% | Spain | correct call | 0.261 |
Sat · July 112 advance calls · 2/2 hit · Brier 0.112 bets · +1.2u
Advance calls — who goes through, graded
| Tie | Our call | Advanced | Hit | Brier |
|---|---|---|---|---|
| Norway v England | England 73% | England | correct call | 0.144 |
| Argentina v Switzerland | Argentina 80% | Argentina | correct call | 0.077 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| Argentina v Switzerland | Over 2 | -145 | 4.7pp | push | +0.00 | -0.7pp |
| Norway v England | Under 2.5 | +119 | 6.3pp | won | +1.19 | -1.5pp |
Fri · July 101 advance call · 1/1 hit · Brier 0.101 bet · +0.0u
Advance calls — who goes through, graded
| Tie | Our call | Advanced | Hit | Brier |
|---|---|---|---|---|
| Spain v Belgium | Spain 78% | Spain | correct call | 0.100 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| Spain v Belgium | Spain -1 | +104 | 7.8pp | push | +0.00 | +0.0pp |
Thu · July 91 advance call · 1/1 hit · Brier 0.21
Advance calls — who goes through, graded
| Tie | Our call | Advanced | Hit | Brier |
|---|---|---|---|---|
| France v Morocco | France 67% | France | correct call | 0.212 |
Tue · July 72 advance calls · 1/2 hit · Brier 0.431 bet · -1.0u
Advance calls — who goes through, graded
| Tie | Our call | Advanced | Hit | Brier |
|---|---|---|---|---|
| Argentina v Egypt | Argentina 88% | Argentina | correct call | 0.028 |
| Switzerland v Colombia | Colombia 65% | Switzerland | missed | 0.842 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| Argentina v Egypt | Argentina -1.5 | +115 | 5.8pp | lost | -1.00 | — |
Mon · July 62 advance calls · 2/2 hit · Brier 0.163 bets · +2.9u
Advance calls — who goes through, graded
| Tie | Our call | Advanced | Hit | Brier |
|---|---|---|---|---|
| Portugal v Spain | Spain 68% | Spain | correct call | 0.200 |
| United States v Belgium | Belgium 75% | Belgium | correct call | 0.130 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| Portugal v Spain | Spain -0.5 | -108 | 4.8pp | won | +0.93 | -0.3pp |
| Portugal v Spain | Under 2.5 | +112 | 4.0pp | won | +1.12 | +0.1pp |
| United States v Belgium | Over 2.5 | -123 | 5.4pp | won | +0.81 | -0.0pp |
Sun · July 52 advance calls · 1/2 hit · Brier 0.66
Advance calls — who goes through, graded
| Tie | Our call | Advanced | Hit | Brier |
|---|---|---|---|---|
| Brazil v Norway | Brazil 75% | Norway | missed | 1.139 |
| Mexico v England | England 70% | England | correct call | 0.177 |
Sat · July 42 advance calls · 2/2 hit · Brier 0.131 bet · +0.8u
Advance calls — who goes through, graded
| Tie | Our call | Advanced | Hit | Brier |
|---|---|---|---|---|
| Paraguay v France | France 83% | France | correct call | 0.056 |
| Canada v Morocco | Morocco 69% | Morocco | correct call | 0.196 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| Canada v Morocco | Morocco -0.5 | -122 | 5.2pp | won | +0.82 | -0.0pp |
Fri · July 33 advance calls · 2/3 hit · Brier 0.213 bets · -3.0u
Advance calls — who goes through, graded
| Tie | Our call | Advanced | Hit | Brier |
|---|---|---|---|---|
| Argentina v Cape Verde | Argentina 95% | Argentina | correct call | 0.004 |
| Colombia v Ghana | Colombia 92% | Colombia | correct call | 0.013 |
| Australia v Egypt | Australia 56% | Egypt | missed | 0.620 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| Argentina v Cape Verde | Under 3 | -116 | 6.4pp | lost | -1.00 | +0.5pp |
| Argentina v Cape Verde | Argentina -2 | -127 | 7.3pp | lost | -1.00 | +0.0pp |
| Colombia v Ghana | Over 2.5 | +110 | 7.8pp | lost | -1.00 | +1.2pp |
Thu · July 23 advance calls · 3/3 hit · Brier 0.143 bets · +1.1u
Advance calls — who goes through, graded
| Tie | Our call | Advanced | Hit | Brier |
|---|---|---|---|---|
| Portugal v Croatia | Portugal 71% | Portugal | correct call | 0.166 |
| Spain v Austria | Spain 86% | Spain | correct call | 0.037 |
| Switzerland v Algeria | Switzerland 66% | Switzerland | correct call | 0.226 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| Portugal v Croatia | Under 3 | -141 | 4.0pp | push | +0.00 | +0.7pp |
| Spain v Austria | Under 3 | -141 | 6.4pp | push | +0.00 | -0.8pp |
| Switzerland v Algeria | Switzerland -0.5 | +107 | 7.4pp | won | +1.07 | +2.0pp |
Wed · July 13 advance calls · 3/3 hit · Brier 0.113 bets · -1.2u
Advance calls — who goes through, graded
| Tie | Our call | Advanced | Hit | Brier |
|---|---|---|---|---|
| England v DR Congo | England 87% | England | correct call | 0.032 |
| United States v Bosnia and Herzegovina | United States 80% | United States | correct call | 0.081 |
| Belgium v Senegal | Belgium 68% | Belgium | correct call | 0.206 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| England v DR Congo | Under 2.5 | -127 | 7.7pp | lost | -1.00 | — |
| United States v Bosnia and Herzegovina | Under 3 | -128 | 7.1pp | won | +0.78 | -0.3pp |
| United States v Bosnia and Herzegovina | Bosnia and Herzegovina +1.5 | -111 | 4.9pp | lost | -1.00 | +0.0pp |
Tue · June 303 advance calls · 3/3 hit · Brier 0.222 bets · -1.0u
Advance calls — who goes through, graded
| Tie | Our call | Advanced | Hit | Brier |
|---|---|---|---|---|
| France v Sweden | France 90% | France | correct call | 0.019 |
| Côte d'Ivoire v Norway | Norway 70% | Norway | correct call | 0.180 |
| Mexico v Ecuador | Mexico 52% | Mexico | correct call | 0.453 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| Mexico v Ecuador | Ecuador +0.5 | -139 | 6.8pp | lost | -1.00 | — |
| Mexico v Ecuador | Under 2 | -133 | 4.4pp | push | +0.00 | — |
Mon · June 293 advance calls · 1/3 hit · Brier 0.634 bets · +3.4u
Advance calls — who goes through, graded
| Tie | Our call | Advanced | Hit | Brier |
|---|---|---|---|---|
| Germany v Paraguay | Germany 75% | Paraguay | missed | 1.139 |
| Netherlands v Morocco | Netherlands 55% | Morocco | missed | 0.607 |
| Brazil v Japan | Brazil 74% | Brazil | correct call | 0.140 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| Germany v Paraguay | Paraguay +1.5 | -123 | 7.5pp | won | +0.81 | +1.0pp |
| Netherlands v Morocco | Under 2.5 | -135 | 5.7pp | won | +0.74 | -0.3pp |
| Brazil v Japan | Over 2.5 | +115 | 4.4pp | won | +1.15 | -1.5pp |
| Brazil v Japan | Brazil -0.5 | -135 | 4.8pp | won | +0.74 | -3.1pp |
Sun · June 281 advance call · 1/1 hit · Brier 0.14
Advance calls — who goes through, graded
| Tie | Our call | Advanced | Hit | Brier |
|---|---|---|---|---|
| South Africa v Canada | Canada 73% | Canada | correct call | 0.145 |
Sat · June 276 calls · 4/6 hit · Brier 0.4010 bets · +1.5u
Calls — the forecast, graded
| Match | Logged H/D/A | Final | Hit | Brier |
|---|---|---|---|---|
| Jordan v Argentina | 1%/6%/93% (0-3) | 1–3 | correct call | 0.009 |
| Algeria v Austria | 30%/25%/45% (1-1) | 3–3 | missed | 0.846 |
| Colombia v Portugal | 34%/26%/40% (1-1) | 0–0 | missed | 0.826 |
| DR Congo v Uzbekistan | 36%/31%/32% (1-0) | 3–1 | correct call | 0.611 |
| Panama v England | 2%/8%/90% (0-2) | 0–2 | correct call | 0.018 |
| Croatia v Ghana | 78%/16%/7% (2-0) | 2–1 | correct call | 0.079 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| Jordan v Argentina | Argentina ‡ | -667 | 9.5pp | won | +0.15 | +0.0pp |
| Jordan v Argentina | Over 2.5 | -182 | 4.6pp | won | +0.55 | -0.0pp |
| Algeria v Austria | Algeria ‡ | +295 | 5.7pp | lost | -1.00 | +1.9pp |
| Colombia v Portugal | Colombia ‡ | +265 | 8.0pp | lost | -1.00 | -2.1pp |
| Colombia v Portugal | Under 2.5 | +123 | 6.2pp | won | +1.23 | +0.0pp |
| DR Congo v Uzbekistan | Uzbekistan ‡ | +400 | 13.4pp | lost | -1.00 | -0.9pp |
| Panama v England | Under 3 | +137 | 7.5pp | won | +1.37 | -0.0pp |
| Panama v England | England ‡ | -667 | 6.7pp | won | +0.15 | -0.0pp |
| Panama v England | England -2 | -141 | 6.7pp | push | +0.00 | -0.0pp |
| Croatia v Ghana | Over 2.25 | +102 | 5.3pp | won | +1.02 | — |
Fri · June 266 calls · 4/6 hit · Brier 0.3413 bets · +1.5u
Calls — the forecast, graded
| Match | Logged H/D/A | Final | Hit | Brier |
|---|---|---|---|---|
| Egypt v Iran | 31%/29%/39% (0-1) | 1–1 | missed | 0.749 |
| New Zealand v Belgium | 3%/9%/88% (0-2) | 1–5 | correct call | 0.024 |
| Cape Verde v Saudi Arabia | 38%/29%/33% (1-1) | 0–0 | missed | 0.752 |
| Uruguay v Spain | 10%/21%/69% (0-1) | 0–1 | correct call | 0.152 |
| Norway v France | 16%/20%/63% (0-2) | 1–4 | correct call | 0.201 |
| Senegal v Iraq | 69%/21%/10% (1-0) | 5–0 | correct call | 0.145 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| Egypt v Iran | Iran ‡ | +280 | 13.9pp | lost | -1.00 | +3.9pp |
| Egypt v Iran | Iran +0.5 | -164 | 7.7pp | won | +0.61 | +3.6pp |
| New Zealand v Belgium | Belgium ‡ | -526 | 7.6pp | won | +0.19 | +0.2pp |
| New Zealand v Belgium | Belgium -2 | -130 | 5.1pp | won | +0.77 | +0.9pp |
| Cape Verde v Saudi Arabia | Under 2.5 | -130 | 6.9pp | won | +0.77 | -1.3pp |
| Cape Verde v Saudi Arabia | Cape Verde +0.25 | -128 | 7.3pp | half-won | +0.39 | -0.0pp |
| Cape Verde v Saudi Arabia | Cape Verde ‡ | +205 | 6.1pp | lost | -1.00 | +0.0pp |
| Uruguay v Spain | Spain ‡ | -161 | 9.8pp | won | +0.62 | -0.2pp |
| Uruguay v Spain | Under 2.5 | -120 | 6.3pp | won | +0.83 | -0.0pp |
| Norway v France | Under 3.5 | -164 | 5.3pp | lost | -1.00 | -2.0pp |
| Norway v France | France -1 | +108 | 5.2pp | won | +1.08 | +3.6pp |
| Norway v France | France ‡ | -154 | 4.9pp | won | +0.65 | +3.0pp |
| Senegal v Iraq | Draw | +550 | 6.0pp | lost | -1.00 | +0.2pp |
Thu · June 256 calls · 2/6 hit · Brier 0.5910 bets · -1.1u
Calls — the forecast, graded
| Match | Logged H/D/A | Final | Hit | Brier |
|---|---|---|---|---|
| Türkiye v United States | 29%/23%/48% (1-1) | 3–2 | missed | 0.789 |
| Paraguay v Australia | 32%/30%/37% (0-1) | 0–0 | missed | 0.734 |
| Curaçao v Côte d'Ivoire | 5%/14%/81% (0-2) | 0–2 | correct call | 0.059 |
| Ecuador v Germany | 25%/27%/48% (0-1) | 2–1 | missed | 0.864 |
| Japan v Sweden | 64%/20%/16% (2-0) | 1–1 | missed | 1.064 |
| Tunisia v Netherlands | 5%/13%/81% (0-2) | 1–3 | correct call | 0.055 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| Türkiye v United States | Over 2.5 | -135 | 4.1pp | won | +0.74 | +2.3pp |
| Türkiye v United States | Türkiye +0.5 | +101 | 4.1pp | won | +1.01 | +3.5pp |
| Türkiye v United States | Türkiye ‡ | +310 | 5.4pp | won | +3.10 | +3.5pp |
| Paraguay v Australia | Over 2 | +135 | 5.3pp | lost | -1.00 | -7.8pp |
| Paraguay v Australia | Australia +0.25 | -145 | 5.2pp | half-won | +0.34 | -2.7pp |
| Paraguay v Australia | Australia ‡ | +320 | 14.6pp | lost | -1.00 | -0.1pp |
| Ecuador v Germany | Draw | +390 | 7.1pp | lost | -1.00 | +1.0pp |
| Japan v Sweden | Over 2.5 | -120 | 4.5pp | lost | -1.00 | -1.3pp |
| Japan v Sweden | Japan ‡ | -110 | 13.0pp | lost | -1.00 | -10.4pp |
| Tunisia v Netherlands | Draw | +1000 | 4.7pp | lost | -1.00 | +2.6pp |
Wed · June 246 calls · 5/6 hit · Brier 0.3611 bets · +2.1u
Calls — the forecast, graded
| Match | Logged H/D/A | Final | Hit | Brier |
|---|---|---|---|---|
| Czechia v Mexico | 14%/21%/65% (0-1) | 0–3 | correct call | 0.187 |
| South Africa v South Korea | 15%/23%/62% (0-1) | 1–0 | missed | 1.173 |
| Switzerland v Canada | 47%/26%/27% (1-1) | 2–1 | correct call | 0.422 |
| Bosnia and Herzegovina v Qatar | 56%/24%/21% (1-0) | 3–1 | correct call | 0.297 |
| Scotland v Brazil | 7%/14%/79% (0-2) | 0–3 | correct call | 0.067 |
| Morocco v Haiti | 86%/11%/3% (2-0) | 4–2 | correct call | 0.034 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| Czechia v Mexico | Mexico ‡ | -110 | 14.5pp | won | +0.91 | -0.0pp |
| South Africa v South Korea | South Korea -0.5 | -145 | 4.9pp | lost | -1.00 | +3.7pp |
| South Africa v South Korea | South Korea ‡ | -149 | 4.4pp | lost | -1.00 | +1.7pp |
| Switzerland v Canada | Switzerland -0.5 | +137 | 6.0pp | won | +1.37 | -2.6pp |
| Switzerland v Canada | Under 2.25 | +105 | 4.8pp | lost | -1.00 | +3.2pp |
| Switzerland v Canada | Switzerland ‡ | +140 | 7.1pp | won | +1.40 | -1.5pp |
| Bosnia and Herzegovina v Qatar | Qatar ‡ | +700 | 8.9pp | lost | -1.00 | -0.7pp |
| Scotland v Brazil | Brazil -1.5 | +105 | 7.0pp | won | +1.05 | -0.5pp |
| Scotland v Brazil | Over 2.5 | -115 | 6.8pp | won | +0.87 | +0.3pp |
| Scotland v Brazil | Brazil ‡ | -312 | 6.8pp | won | +0.32 | -0.0pp |
| Morocco v Haiti | Morocco ‡ | -526 | 5.5pp | won | +0.19 | +1.2pp |
Tue · June 234 calls · 3/4 hit · Brier 0.467 bets · -0.3u
Calls — the forecast, graded
| Match | Logged H/D/A | Final | Hit | Brier |
|---|---|---|---|---|
| Portugal v Uzbekistan | 80%/14%/5% (2-0) | 5–0 | correct call | 0.063 |
| Colombia v DR Congo | 76%/17%/6% (2-0) | 1–0 | correct call | 0.091 |
| England v Ghana | 88%/10%/2% (2-0) | 0–0 | missed | 1.594 |
| Panama v Croatia | 7%/14%/78% (0-2) | 0–1 | correct call | 0.072 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| Colombia v DR Congo | Under 2.25 | -115 | 4.7pp | won | +0.87 | -2.1pp |
| Colombia v DR Congo | Colombia ‡ | -185 | 13.9pp | won | +0.54 | +1.0pp |
| England v Ghana | Under 3 | -122 | 7.2pp | won | +0.82 | -3.1pp |
| England v Ghana | England ‡ | -526 | 8.0pp | lost | -1.00 | +0.0pp |
| England v Ghana | England -2 | -103 | 7.8pp | lost | -1.00 | +0.0pp |
| Panama v Croatia | Over 2.5 | -127 | 5.3pp | lost | -1.00 | +1.1pp |
| Panama v Croatia | Croatia ‡ | -204 | 14.1pp | won | +0.49 | +2.7pp |
Mon · June 224 calls · 4/4 hit · Brier 0.188 bets · +4.4u
Calls — the forecast, graded
| Match | Logged H/D/A | Final | Hit | Brier |
|---|---|---|---|---|
| France v Iraq | 90%/8%/2% (2-0) | 3–0 | correct call | 0.018 |
| Norway v Senegal | 47%/26%/28% (1-1) | 3–2 | correct call | 0.428 |
| Argentina v Austria | 72%/20%/9% (1-0) | 2–0 | correct call | 0.128 |
| Jordan v Algeria | 13%/18%/69% (0-2) | 1–2 | correct call | 0.148 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| France v Iraq | Iraq +2.5 | +121 | 6.8pp | lost | -1.00 | +0.5pp |
| Norway v Senegal | Norway -0.5 | +134 | 5.1pp | won | +1.34 | +0.0pp |
| Norway v Senegal | Norway ‡ | +130 | 4.7pp | won | +1.30 | +0.0pp |
| Argentina v Austria | Argentina -1 | -120 | 7.9pp | won | +0.83 | — |
| Argentina v Austria | Under 2.5 | -108 | 6.3pp | won | +0.93 | — |
| Argentina v Austria | Argentina ‡ | -213 | 6.2pp | won | +0.47 | — |
| Jordan v Algeria | Algeria ‡ | -189 | 5.8pp | won | +0.53 | +0.6pp |
| Jordan v Algeria | Algeria -1 | -118 | 7.3pp | push | +0.00 | +0.0pp |
Sun · June 214 calls · 2/4 hit · Brier 0.624 bets · -1.8u
Calls — the forecast, graded
| Match | Logged H/D/A | Final | Hit | Brier |
|---|---|---|---|---|
| Belgium v Iran | 63%/21%/16% (1-0) | 0–0 | missed | 1.042 |
| New Zealand v Egypt | 13%/26%/61% (0-1) | 1–3 | correct call | 0.239 |
| Spain v Saudi Arabia | 92%/7%/1% (2-0) | 4–0 | correct call | 0.013 |
| Uruguay v Cape Verde | 74%/19%/7% (1-0) | 2–2 | missed | 1.203 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| Belgium v Iran | Iran +1 | +125 | 6.4pp | won | +1.25 | — |
| Spain v Saudi Arabia | Under 3 | +128 | 6.8pp | lost | -1.00 | — |
| Uruguay v Cape Verde | Under 2.25 | -125 | 7.2pp | lost | -1.00 | +0.6pp |
| Uruguay v Cape Verde | Uruguay ‡ | -222 | 7.9pp | lost | -1.00 | +0.4pp |
Sat · June 204 calls · 3/4 hit · Brier 0.5110 bets · +1.6u
Calls — the forecast, graded
| Match | Logged H/D/A | Final | Hit | Brier |
|---|---|---|---|---|
| Germany v Côte d'Ivoire | 68%/20%/13% (2-0) | 2–1 | correct call | 0.159 |
| Ecuador v Curaçao | 89%/10%/2% (2-0) | 0–0 | missed | 1.604 |
| Netherlands v Sweden | 69%/17%/14% (2-1) | 5–1 | correct call | 0.145 |
| Tunisia v Japan | 10%/21%/70% (0-1) | 0–4 | correct call | 0.146 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| Germany v Côte d'Ivoire | Under 3.5 | -182 | 7.2pp | won | +0.55 | -0.7pp |
| Germany v Côte d'Ivoire | Germany -1 | -118 | 5.0pp | push | +0.00 | +2.2pp |
| Germany v Côte d'Ivoire | Germany ‡ | -196 | 4.1pp | won | +0.51 | +0.7pp |
| Ecuador v Curaçao | Under 2.5 | +138 | 6.6pp | won | +1.38 | +0.6pp |
| Ecuador v Curaçao | Ecuador ‡ | -714 | 4.5pp | lost | -1.00 | -1.9pp |
| Ecuador v Curaçao | Ecuador -2 | -120 | 5.9pp | lost | -1.00 | -0.0pp |
| Netherlands v Sweden | Netherlands ‡ | -135 | 13.8pp | won | +0.74 | +1.3pp |
| Tunisia v Japan | Japan ‡ | -179 | 7.7pp | won | +0.56 | +3.6pp |
| Tunisia v Japan | Japan -1 | -120 | 4.7pp | won | +0.83 | +1.5pp |
| Tunisia v Japan | Under 2.5 | -120 | 4.0pp | lost | -1.00 | -0.0pp |
Fri · June 194 calls · 3/4 hit · Brier 0.415 bets · +1.9u
Calls — the forecast, graded
| Match | Logged H/D/A | Final | Hit | Brier |
|---|---|---|---|---|
| Scotland v Morocco | 16%/27%/57% (0-1) | 0–1 | correct call | 0.281 |
| Brazil v Haiti | 96%/3%/1% (4-0) | 3–0 | correct call | 0.003 |
| United States v Australia | 38%/27%/35% (1-1) | 2–0 | correct call | 0.584 |
| Türkiye v Paraguay | 45%/26%/29% (1-1) | 0–1 | missed | 0.777 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| Brazil v Haiti | Brazil ‡ | -909 | 9.3pp | won | +0.11 | -0.5pp |
| United States v Australia | Under 2.5 | -102 | 4.7pp | won | +0.98 | -0.1pp |
| United States v Australia | Draw | +330 | 4.5pp | lost | -1.00 | +0.4pp |
| Türkiye v Paraguay | Over 2.5 | +115 | 4.1pp | lost | -1.00 | -0.0pp |
| Türkiye v Paraguay | Paraguay ‡ | +285 | 4.0pp | won | +2.85 | -0.0pp |
Thu · June 184 calls · 3/4 hit · Brier 0.354 bets · -0.7u
Calls — the forecast, graded
| Match | Logged H/D/A | Final | Hit | Brier |
|---|---|---|---|---|
| Czechia v South Africa | 64%/22%/14% (1-0) | 1–1 | missed | 1.040 |
| Mexico v South Korea | 59%/24%/17% (1-0) | 1–0 | correct call | 0.252 |
| Switzerland v Bosnia and Herzegovina | 79%/14%/7% (2-0) | 4–1 | correct call | 0.069 |
| Canada v Qatar | 83%/13%/4% (2-0) | 6–0 | correct call | 0.049 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| Czechia v South Africa | Czechia ‡ | -125 | 10.4pp | lost | -1.00 | — |
| Mexico v South Korea | Over 2 | -125 | 7.9pp | lost | -1.00 | +6.1pp |
| Mexico v South Korea | Mexico ‡ | +105 | 12.5pp | won | +1.05 | +1.3pp |
| Canada v Qatar | Canada ‡ | -345 | 8.8pp | won | +0.29 | +0.0pp |
Wed · June 174 calls · 2/4 hit · Brier 0.677 bets · -1.4u
Calls — the forecast, graded
| Match | Logged H/D/A | Final | Hit | Brier |
|---|---|---|---|---|
| Portugal v DR Congo | 80%/15%/5% (2-0) | 1–1 | missed | 1.367 |
| Uzbekistan v Colombia | 7%/17%/76% (0-2) | 1–3 | correct call | 0.088 |
| England v Croatia | 58%/25%/18% (1-0) | 4–2 | correct call | 0.272 |
| Ghana v Panama | 23%/25%/53% (0-1) | 1–0 | missed | 0.936 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| Portugal v DR Congo | Portugal -1.5 | -102 | 6.2pp | lost | -1.00 | +2.9pp |
| Portugal v DR Congo | Portugal ‡ | -357 | 5.4pp | lost | -1.00 | -0.1pp |
| Portugal v DR Congo | Under 2.5 | +107 | 4.3pp | won | +1.07 | -0.6pp |
| Uzbekistan v Colombia | Colombia -1.5 | +114 | 6.0pp | won | +1.14 | +1.3pp |
| Uzbekistan v Colombia | Colombia ‡ | -270 | 6.2pp | won | +0.37 | +0.0pp |
| Uzbekistan v Colombia | Under 2.5 | +105 | 4.3pp | lost | -1.00 | +0.0pp |
| Ghana v Panama | Over 2.5 | +140 | 7.9pp | lost | -1.00 | — |
Tue · June 164 calls · 4/4 hit · Brier 0.124 bets · -0.2u
Calls — the forecast, graded
| Match | Logged H/D/A | Final | Hit | Brier |
|---|---|---|---|---|
| France v Senegal | 65%/22%/14% (1-0) | 3–1 | correct call | 0.192 |
| Iraq v Norway | 6%/15%/78% (0-2) | 1–4 | correct call | 0.074 |
| Argentina v Algeria | 79%/15%/5% (2-0) | 3–0 | correct call | 0.070 |
| Austria v Jordan | 71%/18%/11% (2-0) | 3–1 | correct call | 0.130 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| Iraq v Norway | Under 2.5 | +138 | 6.7pp | lost | -1.00 | -0.2pp |
| Iraq v Norway | Iraq +2 | -125 | 4.8pp | lost | -1.00 | +0.5pp |
| Argentina v Algeria | Argentina ‡ | -227 | 13.0pp | won | +0.44 | +0.7pp |
| Austria v Jordan | Over 3 | +141 | 4.6pp | won | +1.41 | -1.1pp |
Mon · June 154 calls · 0/4 hit · Brier 1.313 bets · -3.0u
Calls — the forecast, graded
| Match | Logged H/D/A | Final | Hit | Brier |
|---|---|---|---|---|
| Belgium v Egypt | 67%/21%/12% (1-0) | 1–1 | missed | 1.083 |
| Iran v New Zealand | 69%/21%/10% (1-0) | 2–2 | missed | 1.119 |
| Spain v Cape Verde | 94%/5%/1% (3-0) | 0–0 | missed | 1.785 |
| Saudi Arabia v Uruguay | 6%/19%/76% (0-1) | 1–1 | missed | 1.238 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| Belgium v Egypt | Belgium ‡ | -169 | 7.5pp | lost | -1.00 | +0.7pp |
| Spain v Cape Verde | Spain ‡ | -1429 | 4.5pp | lost | -1.00 | — |
| Saudi Arabia v Uruguay | Uruguay ‡ | -222 | 9.8pp | lost | -1.00 | +1.4pp |
Sun · June 144 calls · 2/4 hit · Brier 0.615 bets · -1.4u
Calls — the forecast, graded
| Match | Logged H/D/A | Final | Hit | Brier |
|---|---|---|---|---|
| Germany v Curaçao | 91%/8%/1% (2-0) | 7–1 | correct call | 0.014 |
| Côte d'Ivoire v Ecuador | 14%/28%/58% (0-1) | 1–0 | missed | 1.159 |
| Netherlands v Japan | 45%/25%/30% (1-1) | 2–2 | missed | 0.860 |
| Sweden v Tunisia | 47%/26%/27% (1-1) | 5–1 | correct call | 0.426 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| Côte d'Ivoire v Ecuador | Over 1.75 | -118 | 4.9pp | lost | -1.00 | — |
| Netherlands v Japan | Over 2.5 | +100 | 4.6pp | won | +1.00 | — |
| Netherlands v Japan | Japan ‡ | +282 | 4.2pp | lost | -1.00 | +0.5pp |
| Sweden v Tunisia | Over 2 | -154 | 4.4pp | won | +0.65 | — |
| Sweden v Tunisia | Tunisia ‡ | +335 | 4.0pp | lost | -1.00 | -3.7pp |
Sat · June 134 calls · 1/4 hit · Brier 0.864 bets · +3.7u
Calls — the forecast, graded
| Match | Logged H/D/A | Final | Hit | Brier |
|---|---|---|---|---|
| Qatar v Switzerland | 6%/13%/82% (0-2) | 1–1 | missed | 1.434 |
| Brazil v Morocco | 56%/25%/19% (1-0) | 1–1 | missed | 0.920 |
| Haiti v Scotland | 14%/19%/67% (0-2) | 0–1 | correct call | 0.168 |
| Australia v Türkiye | 24%/24%/52% (1-1) | 2–0 | missed | 0.900 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| Qatar v Switzerland | Switzerland -1.5 | -149 | 8.9pp | lost | -1.00 | +0.0pp |
| Australia v Türkiye | Australia +0.5 | +125 | 8.8pp | won | +1.25 | -0.7pp |
| Australia v Türkiye | Over 2.5 | +105 | 6.8pp | lost | -1.00 | -0.3pp |
| Australia v Türkiye | Australia ‡ | +440 | 5.8pp | won | +4.40 | -0.3pp |
Fri · June 121 call · 1/1 hit · Brier 0.593 bets · -1.1u
Calls — the forecast, graded
| Match | Logged H/D/A | Final | Hit | Brier |
|---|---|---|---|---|
| United States v Paraguay | 38%/27%/36% (1-1) | 4–1 | correct call | 0.589 |
Bets — paper picks, settled
| Match | Pick | Odds | Edge | Result | Units | CLV |
|---|---|---|---|---|---|---|
| United States v Paraguay | Paraguay ‡ | +300 | 11.0pp | lost | -1.00 | -0.7pp |
| United States v Paraguay | Over 2.0 | -115 | 10.6pp | won | +0.87 | -0.0pp |
| United States v Paraguay | Paraguay +0.5 | -125 | 10.5pp | lost | -1.00 | +0.0pp |
‡ the model under-prices draws (June-20 audit: p_draw ≈19% vs ≈36% realised), which inflates favourite-side 1X2 (moneyline) edges — treat win-side moneyline picks with extra caution until the draw calibration is re-checked after MD3.
The Shadow Book
82 settled, 36W-37L, -2.88u paper (flat 1u, not staked); 1X2 3W-7L -4.58u; model-priced 33W-30L +1.70u show the risky calls
| Day | Match | Conviction | Odds | Edge | Model | Result | Units* |
|---|---|---|---|---|---|---|---|
| Jun 14 | Côte d'Ivoire v Ecuador | Ecuador -0.25 | +113 | 22.8pp | 68% | lost | -1.00 |
| Jun 14 | Côte d'Ivoire v Ecuador | Ecuador ‡ | +165 | 20.9pp | 58% | lost | -1.00 |
| Jun 15 | Iran v New Zealand | Iran ‡ | -120 | 16.7pp | 69% | lost | -1.00 |
| Jun 16 | France v Senegal | Under 2.5 | +117 | 8.1pp | 54% | lost | -1.00 |
| Jun 16 | Iraq v Norway | Under 3 | -120 | 8.4pp | 61% | lost | -1.00 |
| Jun 16 | Argentina v Algeria | Argentina -1.5 | +132 | 12.8pp | 55% | won | +1.32 |
| Jun 17 | England v Croatia | Under 2.25 | -108 | 8.4pp | 58% | lost | -1.00 |
| Jun 17 | Ghana v Panama | Panama +0.5 | -145 | 19.3pp | 77% | lost | -1.00 |
| Jun 17 | Ghana v Panama | Over 2 | -125 | 11.2pp | 65% | lost | -1.00 |
| Jun 17 | Ghana v Panama | Panama ‡ | +225 | 23.3pp | 53% | lost | -1.00 |
| Jun 18 | Czechia v South Africa | Czechia -0.5 | -115 | 12.2pp | 64% | lost | -1.00 |
| Jun 18 | Mexico v South Korea | Mexico -0.5 | +106 | 11.7pp | 59% | won | +1.06 |
| Jun 18 | Switzerland v Bosnia and Herzegovina | Switzerland -1 | +100 | 24.0pp | 73% | won | +1.00 |
| Jun 18 | Switzerland v Bosnia and Herzegovina | Over 2.5 | +105 | 10.1pp | 58% | won | +1.05 |
| Jun 18 | Switzerland v Bosnia and Herzegovina | Switzerland ‡ | -179 | 18.0pp | 79% | won | +0.56 |
| Jun 18 | Canada v Qatar | Canada -1.5 | -115 | 8.1pp | 60% | won | +0.87 |
| Jun 19 | Scotland v Morocco | Under 2.25 | -120 | 13.5pp | 66% | won | +0.83 |
| Jun 19 | Brazil v Haiti | Brazil -2.5 | -110 | 20.9pp | 71% | won | +0.91 |
| Jun 19 | Brazil v Haiti | Over 3.75 | +100 | 14.5pp | 62% | lost | -1.00 |
| Jun 19 | United States v Australia | Australia +1 | -120 | 25.4pp | 79% | lost | -1.00 |
| Jun 19 | United States v Australia | Australia ‡ | +425 | 17.1pp | 35% | lost | -1.00 |
| Jun 20 | Germany v Côte d'Ivoire | Under 3 | -110 | 8.2pp | 59% | push | +0.00 |
| Jun 20 | Ecuador v Curaçao | Under 3 | -101 | 10.2pp | 60% | won | +0.99 |
| Jun 20 | Netherlands v Sweden | Over 2.75 | -115 | 16.1pp | 67% | won | +0.87 |
| Jun 20 | Netherlands v Sweden | Netherlands -0.5 | -141 | 12.6pp | 69% | won | +0.71 |
| Jun 20 | Tunisia v Japan | Japan -1 | +110 | 11.0pp | 58% | won | +1.10 |
| Jun 20 | Tunisia v Japan | Under 2.25 | -105 | 8.8pp | 58% | lost | -1.00 |
| Jun 21 | New Zealand v Egypt | Under 2.25 | +100 | 19.2pp | 67% | lost | -1.00 |
| Jun 21 | Spain v Saudi Arabia | Under 3.25 | -105 | 11.7pp | 61% | lost | -1.00 |
| Jun 21 | Uruguay v Cape Verde | Uruguay -1 | -120 | 11.0pp | 64% | lost | -1.00 |
| Jun 22 | France v Iraq | Under 3.5 | +102 | 13.4pp | 62% | won | +1.02 |
| Jun 22 | Jordan v Algeria | Over 2.5 | -108 | 11.8pp | 62% | won | +0.93 |
| Jun 22 | Jordan v Algeria | Algeria -1 | -103 | 10.2pp | 59% | push | +0.00 |
| Jun 23 | Portugal v Uzbekistan | Under 3.25 | -122 | 17.4pp | 70% | lost | -1.00 |
| Jun 23 | Portugal v Uzbekistan | Uzbekistan +2 | +109 | 10.3pp | 57% | lost | -1.00 |
| Jun 23 | Colombia v DR Congo | Colombia -1 | +100 | 18.8pp | 68% | push | +0.00 |
| Jun 23 | England v Ghana | England -2 | +110 | 11.2pp | 58% | lost | -1.00 |
| Jun 23 | England v Ghana | Under 3 | -108 | 9.3pp | 60% | won | +0.93 |
| Jun 23 | Panama v Croatia | Croatia -1 | -125 | 18.5pp | 72% | push | +0.00 |
| Jun 23 | Panama v Croatia | Over 2.75 | -108 | 10.5pp | 60% | lost | -1.00 |
| Jun 24 | Czechia v Mexico | Mexico -0.5 | -109 | 14.6pp | 65% | won | +0.92 |
| Jun 24 | Czechia v Mexico | Mexico ‡ | -105 | 15.7pp | 65% | won | +0.95 |
| Jun 24 | South Africa v South Korea | Under 2.25 | +105 | 9.3pp | 56% | won | +1.05 |
| Jun 24 | Switzerland v Canada | Switzerland -0.5 | +153 | 8.6pp | 47% | won | +1.53 |
| Jun 24 | Bosnia and Herzegovina v Qatar | Qatar +1 | +138 | 18.0pp | 59% | lost | -1.00 |
| Jun 24 | Bosnia and Herzegovina v Qatar | Under 3 | -105 | 12.1pp | 62% | lost | -1.00 |
| Jun 24 | Scotland v Brazil | Brazil -1.5 | +106 | 10.3pp | 57% | won | +1.06 |
| Jun 24 | Scotland v Brazil | Over 2.5 | -112 | 8.6pp | 60% | won | +0.89 |
| Jun 24 | Morocco v Haiti | Under 3 | +102 | 12.7pp | 62% | lost | -1.00 |
| Jun 25 | Türkiye v United States | Over 2.75 | -115 | 8.5pp | 60% | won | +0.87 |
| Jun 25 | Paraguay v Australia | Over 1.75 | -118 | 9.8pp | 61% | lost | -1.00 |
| Jun 25 | Paraguay v Australia | Australia +0.25 | -125 | 8.5pp | 62% | half-won | +0.40 |
| Jun 25 | Paraguay v Australia | Australia ‡ | +340 | 15.5pp | 37% | lost | -1.00 |
| Jun 25 | Curaçao v Côte d'Ivoire | Under 3.25 | -122 | 18.0pp | 71% | won | +0.82 |
| Jun 25 | Curaçao v Côte d'Ivoire | Curaçao +2 | +110 | 9.7pp | 56% | push | +0.00 |
| Jun 25 | Ecuador v Germany | Ecuador +1 | +100 | 20.2pp | 69% | won | +1.00 |
| Jun 25 | Ecuador v Germany | Under 3 | -130 | 18.0pp | 72% | push | +0.00 |
| Jun 25 | Japan v Sweden | Japan -0.5 | -115 | 12.0pp | 64% | lost | -1.00 |
| Jun 25 | Japan v Sweden | Japan ‡ | +140 | 23.5pp | 64% | lost | -1.00 |
| Jun 25 | Tunisia v Netherlands | Under 3.25 | +102 | 19.0pp | 66% | lost | -1.00 |
| Jun 25 | Tunisia v Netherlands | Tunisia +2.5 | -102 | 14.2pp | 64% | won | +0.98 |
| Jun 26 | Egypt v Iran | Over 1.75 | -130 | 8.9pp | 63% | won | +0.77 |
| Jun 26 | New Zealand v Belgium | Under 3.5 | +104 | 14.8pp | 62% | lost | -1.00 |
| Jun 26 | Cape Verde v Saudi Arabia | Under 2.25 | -112 | 12.3pp | 63% | won | +0.89 |
| Jun 26 | Uruguay v Spain | Spain -1 | +117 | 12.3pp | 57% | push | +0.00 |
| Jun 26 | Uruguay v Spain | Under 2.25 | -108 | 10.1pp | 60% | won | +0.93 |
| Jun 26 | Norway v France | Under 3.25 | -125 | 11.3pp | 64% | lost | -1.00 |
| Jun 26 | Senegal v Iraq | Under 3 | +106 | 24.5pp | 71% | lost | -1.00 |
| Jun 26 | Senegal v Iraq | Iraq +2 | -122 | 19.9pp | 73% | lost | -1.00 |
| Jun 27 | Jordan v Argentina | Argentina -2 | -120 | 19.2pp | 72% | push | +0.00 |
| Jun 27 | Algeria v Austria | Over 2 | +141 | 26.3pp | 67% | won | +1.41 |
| Jun 27 | Algeria v Austria | Austria -0.25 | +130 | 9.4pp | 51% | half-lost | -0.50 |
| Jun 27 | Algeria v Austria | Austria ‡ | +235 | 15.8pp | 45% | lost | -1.00 |
| Jun 27 | Colombia v Portugal | Colombia +0.5 | -105 | 10.4pp | 60% | won | +0.95 |
| Jun 27 | Colombia v Portugal | Under 3 | -141 | 8.2pp | 64% | won | +0.71 |
| Jun 27 | DR Congo v Uzbekistan | Uzbekistan +0.5 | +126 | 20.8pp | 64% | lost | -1.00 |
| Jun 27 | DR Congo v Uzbekistan | Under 2.5 | -115 | 17.2pp | 69% | lost | -1.00 |
| Jun 27 | Panama v England | England -2 | -112 | 12.2pp | 64% | push | +0.00 |
| Jun 27 | Panama v England | Under 3.25 | -112 | 9.3pp | 60% | won | +0.89 |
| Jun 27 | Croatia v Ghana | Croatia -0.5 | -125 | 23.9pp | 78% | won | +0.80 |
| Jun 27 | Croatia v Ghana | Over 2 | -135 | 13.9pp | 69% | won | +0.74 |
| Jun 27 | Croatia v Ghana | Croatia ‡ | -110 | 27.1pp | 78% | won | +0.91 |
*hypothetical flat-1u, on paper — these are risky calls (severe model–market gap), tracked to test the model, not staked.
‡ the model under-prices draws (June-20 audit: p_draw ≈19% vs ≈36% realised), which inflates favourite-side 1X2 (moneyline) edges — treat win-side moneyline picks with extra caution until the draw calibration is re-checked after MD3.