Every call, on the record.
Each prediction is logged before kick-off and settled in the open. Value flags are recorded live since 26 September 2026; earlier ones are a labelled backtest. How we verify →
Why it is below zero: a prediction simply takes the market’s most likely result (or the two most likely, as a double chance) at the Pinnacle price recorded for it, usually days before kick-off, and this CLV compares that price with Pinnacle’s closing price with the margin left in, a margin that is usually smaller at the close; value flags are measured separately, below.
Tracking since: 8 Jun 2026
42 predictions voided (match postponed, cancelled or never played) — excluded from every figure on this page, never deleted from the ledger.
Filtered view — 4592 predictions match.
Every day a snapshot of the full public record is published to a public Git repository and timestamped with OpenTimestamps. Timestamped snapshots are never overwritten and the Git history shows any difference, so a later change to a past row is visible by comparing two snapshots. The corrections file lists the corrections we announced. Verify on the public log →
Since 20 June 2026 the public record is snapshotted daily (07:40 Bucharest time: 04:40 UTC in summer time, 05:40 UTC in winter) to an external log. A prediction is externally timestamped before kick-off only if it was in a snapshot taken before the match; predictions logged on match day, or whose Pinnacle price was added after logging, first appear there after kick-off. Value flags have been recorded live only since 26 September 2026; earlier value flags were reconstructed on that date.
Performance of flagged value — if you had backed every flag at the odds recorded, flat stakes
Live — recorded when shown, since 26 Sep 2026
Backtest — reconstructed on 26 Sep 2026 from stored prices (flags detected 8 Jun – 26 Sep 2026)
Notes and corrections (3)
Realizable CLV. A flag’s price can be several hours old when the flag appears, and may be gone by the time you act on it. So next to CLV at signal we show realizable CLV: the first price the same bookmaker quoted on the same selection after the flag was recorded, within 60 minutes and before kick-off, measured against the same devigged close. Flags with no such quote are left out of that average; the percentage is how many had one. The gap between the two numbers is value that was on paper rather than on offer.
Rule change, 30 September 2026 (flag-v2): exchange prices (Betfair Exchange, Matchbook) are no longer treated as a soft bookmaker’s best price — in the backtest they had negative CLV even before commission — and a flag now needs a soft price and a Pinnacle price seen within the last 90 minutes. Flags recorded earlier stay under the rule they were recorded with.
Correction, 26 September 2026: this panel previously scored each flag at the highest soft price ever logged for the match and measured CLV against Pinnacle's raw closing odds (margin included), which overstated it (shown: +7.9% CLV). Flags are now scored at the first price at which today’s flag rule fires, with CLV against the devigged close. From 26 September 2026 that price is recorded live, when the site shows the flag. For earlier matches it is a reconstruction — a replay of today’s rule on the prices we had stored — not the price the site displayed at the time. Clarified 29 September 2026: the reconstruction is a backtest and is now shown separately from the live record.
Value flags recorded live — cumulative result
One step per settled flag recorded live, when the site showed it, at 1 unit and the odds recorded then. The reconstructed backtest is the separate chart below.
Value flags — cumulative result of the backtest (reconstructed)
Breakdown — every settled flag, whole history
Live record vs backtest
| Segment | n | Win rate | ROI | CLV |
|---|---|---|---|---|
| Live: recorded when shown, sealed before kick-off | 1,507 | 50% | +1.7% ± 5.5 |
+1.6% ± 0.5 |
| Backtest: reconstructed on 26 Sep 2026 from stored prices (not recorded at the time) | 3,085 | 50% | +2.2% ± 3.9 |
+1.9% ± 0.3 |
By tier
| Segment | n | Win rate | ROI | CLV |
|---|---|---|---|---|
| Strong value | 1,421 | 47% | +5.1% ± 6.2 |
+3.8% ± 0.5 |
| Value flag | 1,260 | 51% | +3.6% ± 6.0 |
+1.5% ± 0.5 |
| Micro-edge | 1,911 | 52% | -1.2% ± 4.6 |
+0.5% ± 0.3 |
By odds band
| Segment | n | Win rate | ROI | CLV |
|---|---|---|---|---|
| < 1.80 | 1,364 | 69% | +3.7% ± 3.8 |
+2.0% ± 0.3 |
| 1.80 – 2.49 | 1,799 | 49% | +1.4% ± 4.9 |
+1.8% ± 0.4 |
| 2.50 – 3.99 | 1,429 | 34% | +1.3% ± 7.3 |
+1.4% ± 0.5 |
By month
| Segment | n | Win rate | ROI | CLV |
|---|---|---|---|---|
| Jun 2026 | 166 | 52% | +9.4% ± 17.0 |
+1.8% ± 1.0 |
| Jul 2026 | 489 | 53% | +5.5% ± 9.6 |
+1.7% ± 0.6 |
| Aug 2026 | 1,034 | 51% | +5.3% ± 6.8 |
+2.0% ± 0.4 |
| Sep 2026 | 1,410 | 48% | -2.4% ± 5.7 |
+1.8% ± 0.5 |
| Oct 2026 | 1,366 | 50% | +1.1% ± 5.8 |
+1.6% ± 0.5 |
| Nov 2026 | 127 | 55% | +12.1% ± 19.0 |
+1.4% ± 1.6 |
By league
| Segment | n | Win rate | ROI | CLV |
|---|---|---|---|---|
| Brazil Serie B | 181 | 46% | -3.4% ± 16.1 |
+0.3% ± 1.2 |
| Argentina Liga Profesional | 162 | 50% | +11.1% ± 18.1 |
+1.4% ± 1.2 |
| MLS | 157 | 49% | -0.5% ± 17.0 |
+3.6% ± 1.6 |
| Brazil Serie A | 118 | 55% | +12.5% ± 19.8 |
+1.4% ± 1.8 |
| Championship | 117 | 55% | +21.8% ± 21.5 |
+1.9% ± 1.4 |
| Allsvenskan | 115 | 56% | +6.3% ± 18.8 |
+2.0% ± 1.4 |
| League One | 112 | 46% | -1.8% ± 20.6 |
+0.8% ± 1.7 |
| League Two | 112 | 36% | -20.7% ± 20.8 |
-0.3% ± 1.4 |
| Veikkausliiga | 104 | 54% | +10.4% ± 21.2 |
+3.4% ± 1.8 |
| Segunda Division | 96 | 51% | — | -0.0% ± 1.7 |
| Eliteserien | 94 | 54% | — | +3.1% ± 1.6 |
| China Super League | 84 | 40% | — | +0.6% ± 3.0 |
| La Liga | 79 | 56% | — | +2.1% ± 2.1 |
| Serie A | 79 | 59% | — | +1.3% ± 1.8 |
| Ekstraklasa | 78 | 46% | — | -1.8% ± 1.6 |
| 3. Liga | 76 | 49% | — | +0.5% ± 2.4 |
| Eredivisie | 75 | 51% | — | +2.0% ± 1.8 |
| Primera Nacional | 75 | 47% | — | +1.9% ± 1.5 |
| Serie B | 71 | 45% | — | +1.6% ± 2.1 |
| 2. Bundesliga | 70 | 33% | — | +0.9% ± 1.8 |
| Premier League | 70 | 43% | — | +0.8% ± 1.9 |
| Liga MX | 68 | 49% | — | +2.8% ± 2.5 |
| Premier Division | 66 | 44% | — | +1.8% ± 2.3 |
| Süper Lig | 66 | 56% | — | +3.3% ± 2.0 |
| Ligue 2 | 64 | 42% | — | -0.9% ± 1.7 |
| MLS Next Pro | 64 | 47% | — | +1.8% ± 1.7 |
| Primera A | 64 | 45% | — | +3.2% ± 2.2 |
| Superettan | 64 | 45% | — | +1.3% ± 1.6 |
| Ligue 1 | 63 | 51% | — | +1.1% ± 2.4 |
| Peru Liga 1 | 63 | 52% | — | +2.6% ± 2.2 |
| Bundesliga | 62 | 45% | — | +2.0% ± 2.2 |
| Urvalsdeild | 58 | 60% | — | +2.8% ± 1.6 |
| Norway 1. Division | 57 | 58% | — | +3.6% ± 1.6 |
| Primeira Liga | 57 | 54% | — | -0.2% ± 2.0 |
| Primera Division Chile | 55 | 53% | — | +3.9% ± 2.6 |
| Swiss Super League | 55 | 60% | — | +3.4% ± 3.0 |
| Jupiler Pro League | 54 | 59% | — | +1.5% ± 1.8 |
| UEFA Champions League | 52 | 67% | — | +1.7% ± 3.4 |
| Danish Superliga | 51 | 51% | — | +0.9% ± 2.2 |
| UEFA Europa League | 51 | 61% | — | +4.6% ± 3.3 |
| 1. Deild | 48 | 65% | — | +1.8% ± 1.8 |
| USL Championship | 47 | 60% | — | +1.8% ± 2.1 |
| Ecuador LigaPro | 46 | 41% | — | +2.6% ± 1.9 |
| K League 1 | 45 | 40% | — | +0.0% ± 1.6 |
| Scottish Premiership | 45 | 31% | — | +0.1% ± 2.6 |
| Chile Primera B | 44 | 36% | — | +1.3% ± 1.9 |
| Lithuania 1 Lyga | 44 | 57% | — | +4.0% ± 1.1 |
| Slovakia 2. Liga | 44 | 43% | — | +3.4% ± 1.6 |
| Ykkösliiga | 42 | 67% | — | +2.1% ± 1.6 |
| China League Two | 41 | 41% | — | +4.4% ± 1.6 |
| Romania Liga I | 41 | 54% | — | +0.9% ± 2.3 |
| Bulgaria Second League | 40 | 53% | — | +3.3% ± 3.3 |
| Greek Super League | 40 | 60% | — | -0.5% ± 2.2 |
| Austrian Bundesliga | 39 | 62% | — | +3.5% ± 2.8 |
| Primera B Metropolitana | 38 | 42% | — | +1.7% ± 1.9 |
| Primera C | 36 | 31% | — | +2.9% ± 1.4 |
| First Division Ireland | 35 | 66% | — | +1.6% ± 1.6 |
| Serbia Super Liga | 35 | 66% | — | +2.8% ± 1.5 |
| Uruguay Primera Division | 35 | 46% | — | +2.6% ± 1.8 |
| Copa Sudamericana | 34 | 62% | — | +4.2% ± 2.6 |
| Czech Liga | 34 | 47% | — | -0.3% ± 1.2 |
| J1 League | 34 | 59% | — | +2.5% ± 2.8 |
| UEFA Conference League | 33 | 61% | — | +1.8% ± 4.1 |
| K League 2 | 32 | 50% | — | +1.2% ± 1.3 |
| Bulgaria First League | 29 | 55% | — | +1.5% |
| Ukraine Premier League | 26 | 42% | — | +1.5% |
| Kazakhstan Premier League | 24 | 50% | — | +5.9% |
| Latvia Virsliga | 24 | 71% | — | +4.1% |
| Poland I Liga | 23 | 35% | — | +1.6% |
| Saudi Pro League | 22 | 50% | — | -0.0% |
| Slovak Super Liga | 21 | 57% | — | +1.9% |
| Hungary NB II | 20 | 50% | — | +4.3% |
| Paraguay Division Intermedia | 20 | 30% | — | -1.2% |
| Copa Libertadores | 19 | 32% | — | -0.3% |
| Croatia HNL | 17 | 65% | — | +0.6% |
| Czech FNL | 17 | 35% | — | +5.3% |
| Latvia 1. Liga | 17 | 65% | — | +3.9% |
| Kakkonen | 16 | 69% | — | +3.9% |
| Ykkonen | 16 | 44% | — | +4.2% |
| A-League | 15 | 27% | — | +4.1% |
| Hungary NB I | 15 | 20% | — | -0.5% |
| Slovenia PrvaLiga | 14 | 43% | — | +1.3% |
| Lithuania A Lyga | 9 | 89% | — | -1.0% |
| EFL Cup | 8 | 38% | — | +2.5% |
| DFB Pokal | 5 | 80% | — | -0.8% |
| Ukraine Persha Liga | 4 | 25% | — | +2.9% |
The other breakdowns combine both; almost every row in them is backtest. Always the full history; there are no date ranges to pick. ± is the 95% interval. A number is coloured only when its interval excludes zero and n ≥ 30; faded rows have fewer than 30 bets. With this many segments, a few will look significant by chance alone, so read them as descriptions, not as rules to bet by.
Value bets ledger — every value flag, the single outcome, settled on its own result; rows marked “Backtest” were reconstructed afterwards
| Date | Match | Value bet | Soft odds | Fair | Close | CLV | Result | Profit |
|---|---|---|---|---|---|---|---|---|
| Las Palmas — Castellón · · Segunda Division | 2 · Castellón | 2.10 | 2.01 | 2.06 | +2.1% | Won | +1.10 | |
| Sparta Rotterdam — Willem II · · Eredivisie | 1 · Sparta Rotterdam | 1.64 | 1.63 | 1.60 | +2.5% | Won | +0.64 | |
| Valencia — Athletic Club · · La Liga | 2 · Athletic Club | 2.18 | 2.11 | 2.50 | -12.6% | Lost | -1.00 | |
| Dundee — Rangers · · Scottish Premiership | 2 · Rangers | 1.37 | 1.32 | 1.40 | -2.3% | Lost | -1.00 | |
| Macara — Independiente del Valle · · Ecuador LigaPro | X · Draw | 3.25 | 3.01 | 3.78 | -14.1% | Lost | -1.00 | |
| Estac Troyes — Lens · · Ligue 1 | 2 · Lens | 1.90 | 1.89 | 1.87 | +1.9% | Won | +0.90 | |
| Lille — Stade Brestois 29 · · Ligue 1 | 1 · Lille | 1.66 | 1.62 | 2.21 | -24.7% | Lost | -1.00 | |
| Sligo Rovers — Dundalk · · Premier Division | 2 · Dundalk | 1.81 | 1.79 | 1.71 | +5.9% | Lost | -1.00 | |
| AS Roma — Genoa · · Serie A | 1 · AS Roma | 1.59 | 1.58 | 1.70 | -6.7% | Won | +0.59 | |
| Hannover 96 — FC St. Pauli · · 2. Bundesliga | 2 · FC St. Pauli | 3.20 | 3.16 | 2.97 | +7.9% | Lost | -1.00 | |
| Cracovia Krakow — Legia Warszawa · · Ekstraklasa | 2 · Legia Warszawa | 2.43 | 2.41 | 2.64 | -7.9% | Lost | -1.00 | |
| General Lamadrid — Estrella Del Sur · · Primera C | X · Draw | 2.80 | 2.77 | 2.77 | +1.2% | Won | +1.80 | |
| Central Cordoba — Centro Español · · Primera C | X · Draw | 2.88 | 2.83 | 2.83 | +1.8% | Lost | -1.00 | |
| Al Diriyah — Al Taawon · · Saudi Pro League | 1 · Al Diriyah | 1.93 | 1.86 | 1.92 | +0.4% | Lost | -1.00 | |
| RED Star FC 93 — Saint Etienne · · Ligue 2 | 1 · RED Star FC 93 | 3.30 | 3.20 | 3.48 | -5.2% | Lost | -1.00 | |
| Banfield — Argentinos JRS · · Argentina Liga Profesional | 2 · Argentinos JRS | 2.00 | 1.96 | 2.20 | -9.3% | Won | +1.00 | |
| Pisa — Cremonese · · Serie B | X · Draw | 3.40 | 3.33 | 3.46 | -1.7% | Lost | -1.00 | |
| Ried — Austria Vienna · · Austrian Bundesliga | 1 · Ried | 2.30 | 2.29 | 2.42 | -5.1% | Won | +1.30 | |
| Sporting Gijon — Albacete · · Segunda Division | 2 · Albacete | 3.35 | 3.27 | 4.18 | -19.9% | Lost | -1.00 | |
| Newcastle — Aston Villa · · Premier League | 2 · Aston Villa | 3.30 | 3.18 | 3.36 | -1.9% | Won | +2.30 | |
| Racing Montevideo — Wanderers · · Uruguay Primera Division | 1 · Racing Montevideo | 2.05 | 2.01 | 2.21 | -7.1% | Won | +1.05 | |
| Sigma Olomouc — Slovan Liberec · · Czech Liga | 2 · Slovan Liberec | 2.38 | 2.36 | 2.36 | +1.0% | Lost | -1.00 | |
| Fenerbahçe — Alanyaspor · · Süper Lig | 1 · Fenerbahçe | 1.39 | 1.37 | 1.32 | +5.5% | Won | +0.39 | |
| Viking — Fredrikstad · · Eliteserien | 1 · Viking | 1.32 | 1.31 | 1.47 | -10.3% | Won | +0.32 | |
| Bologna — Inter · · Serie A | 2 · Inter | 1.69 | 1.67 | 1.61 | +5.0% | Won | +0.69 | |
| AIK Stockholm — IFK Goteborg · · Allsvenskan | 2 · IFK Goteborg | 2.80 | 2.58 | 2.55 | +9.7% | Lost | -1.00 | |
| GKS Katowice — Pogon Szczecin · · Ekstraklasa | 1 · GKS Katowice | 2.04 | 2.01 | 2.18 | -6.6% | Lost | -1.00 | |
| Mantova — Palermo · · Serie B | 2 · Palermo | 2.30 | 2.23 | 2.26 | +1.9% | Won | +1.30 | |
| Strasbourg — Paris Saint Germain · · Ligue 1 | 2 · Paris Saint Germain | 1.46 | 1.43 | 1.48 | -1.5% | Won | +0.46 | |
| Inter Turku — AC Oulu · · Veikkausliiga | 1 · Inter Turku | 1.47 | 1.44 | 1.36 | +8.1% | Lost | -1.00 | |
| FA Šiauliai II — Garliava · · Lithuania 1 Lyga | 2 · Garliava | 2.10 | 1.99 | 1.99 | +5.5% | Won | +1.10 | |
| Würzburger Kickers — Waldhof Mannheim · · 3. Liga | 2 · Waldhof Mannheim | 2.10 | 1.93 | 1.98 | +5.8% | Lost | -1.00 | |
| Eibar — Mallorca · · Segunda Division | X · Draw | 3.40 | 3.22 | 3.20 | +6.3% | Won | +2.40 | |
| Villarreal — Elche · · La Liga | 1 · Villarreal | 1.51 | 1.50 | 1.45 | +3.9% | Lost | -1.00 | |
| Manchester City — Ipswich · · Premier League | 1 · Manchester City | 1.29 | 1.26 | 1.27 | +2.0% | Won | +0.29 | |
| Fulham — Hull City · · Premier League | 1 · Fulham | 1.73 | 1.72 | 1.68 | +3.2% | Won | +0.73 | |
| Brentford — Liverpool · · Premier League | 1 · Brentford | 2.88 | 2.85 | 2.87 | +0.2% | Lost | -1.00 | |
| Thor Akureyri — Stjarnan · · Urvalsdeild | 1 · Thor Akureyri | 3.25 | 3.04 | 2.67 | +21.9% | Won | +2.25 | |
| Kilmarnock — Motherwell · · Scottish Premiership | 2 · Motherwell | 2.12 | 2.09 | 2.41 | -12.2% | Lost | -1.00 | |
| Hibernian — Falkirk · · Scottish Premiership | 1 · Hibernian | 1.73 | 1.64 | 1.76 | -1.6% | Lost | -1.00 | |
| Salford City — Crawley Town · · League Two | 1 · Salford City | 1.38 | 1.37 | 1.43 | -3.5% | Won | +0.38 | |
| Tranmere — Barnet · · League Two | 2 · Barnet | 2.15 | 2.11 | 2.37 | -9.2% | Won | +1.15 | |
| Grimsby — Northampton · · League Two | 1 · Grimsby | 1.97 | 1.90 | 1.91 | +3.3% | Lost | -1.00 | |
| Colchester — Exeter City · · League Two | 1 · Colchester | 2.18 | 2.12 | 2.36 | -7.5% | Lost | -1.00 | |
| Accrington ST — Gillingham · · League Two | 1 · Accrington ST | 2.55 | 2.38 | 2.41 | +5.8% | Won | +1.55 | |
| Port Vale — Chesterfield · · League Two | 2 · Chesterfield | 2.80 | 2.64 | 2.46 | +13.6% | Lost | -1.00 | |
| Oldham — Cheltenham · · League Two | 1 · Oldham | 1.83 | 1.76 | 1.74 | +5.2% | Won | +0.83 | |
| Stockport County — Bromley · · League One | 1 · Stockport County | 1.30 | 1.26 | 1.31 | -1.0% | Won | +0.30 | |
| Leyton Orient — Blackpool · · League One | 2 · Blackpool | 3.15 | 3.11 | 3.22 | -2.2% | Lost | -1.00 | |
| Wycombe — Notts County · · League One | 1 · Wycombe | 2.06 | 2.00 | 1.86 | +10.9% | Won | +1.06 |
Show 25 more
Nothing here is cherry-picked. From 26 September 2026 the first value flag on each match is written, with a sealed fingerprint, by the same price refresh that shows it on the site, before kick-off; later changes of selection or price on that match are not recorded. Rows marked “Backtest” were reconstructed on 26 September 2026 by replaying today’s rule on the prices we had stored at the time; they are a backtest, not live calls. CLV — beating the closing price of a sharp bookmaker — is the metric most strongly shown to correlate with a real long-term edge; win rate and short-run profit are mostly noise until the sample is large.