Every prediction locked before the outcome. Misses shown.
Forward-resolved engagement forecasts on public brand posts — cryptographically pre-committed, then graded against what actually happened. Not a backtest.
+0.93rank accuracy (Spearman, n=116)
16 / 116within 20% of actual (14%)
113open bets resolving at 72h
26public brands tracked
Median magnitude error 59% (shown because we show everything) · rank accuracy
= how well we order winners vs losers, the number a media decision rides on ·
model ev_heuristic_v1 · n_locked total: 229
Evidence — 3-chart track record pack
Resolved — hits AND misses
| resolved | brand | platform | predicted | actual | error | verdict | slip hash |
|---|---|---|---|---|---|---|---|
| 2026-07-15 | @fentybeauty | 7,208 | 12,619 | 43% | ✗ miss — under-called — late burst | d1bd3947ca2df39f | |
| 2026-07-15 | @wendys | 202 | 594 | 66% | ✗ miss — under-called — late burst | 9597fe201e994c1d | |
| 2026-07-15 | @fentybeauty | 1,644 | 3,196 | 49% | ✗ miss — under-called — late burst | 94e457e3b853211e | |
| 2026-07-15 | @liquidiv | 87 | 233 | 63% | ✗ miss — under-called — late burst | b7846b7d0ebb26ce | |
| 2026-07-15 | @liquidiv | 654 | 2,455 | 73% | ✗ miss — under-called — late burst | a52cfe69aad0b606 | |
| 2026-07-15 | @elfcosmetics | 705 | 3,613 | 80% | ✗ miss — under-called — late burst | 816094241f28d2c3 | |
| 2026-07-15 | @rarebeauty | 9,548 | 36,852 | 74% | ✗ miss — under-called — late burst | a414751d00ee23a3 | |
| 2026-07-15 | @fentybeauty | 4,313 | 23,846 | 82% | ✗ miss — under-called — late burst | 9a533cb41f742ed1 | |
| 2026-07-15 | @wendys | 730 | 2,954 | 75% | ✗ miss — under-called — late burst | 5f6aab3d93ec2b8d | |
| 2026-07-15 | @chipotle | 8,915 | 40,071 | 78% | ✗ miss — under-called — late burst | 43b924ce13015739 | |
| 2026-07-15 | @liquidiv | 79 | 215 | 63% | ✗ miss — under-called — late burst | 994343893f541f81 | |
| 2026-07-15 | @wendys | 378 | 2,051 | 82% | ✗ miss — under-called — late burst | 5b59828d5d0fd662 | |
| 2026-07-15 | @elfcosmetics | 1,470 | 4,397 | 67% | ✗ miss — under-called — late burst | cdc66d36c18ef5f1 | |
| 2026-07-15 | @wendys | 1,886 | 5,842 | 68% | ✗ miss — under-called — late burst | a1c3f431d768e14a | |
| 2026-07-15 | @wendys | 1,648 | 2,611 | 37% | ✗ miss — under-called — late burst | cbefd953380ebcd4 | |
| 2026-07-11 | @lululemon | 847 | 2,406 | 65% | ✗ miss — under-called — late burst | 76f7f63096126954 | |
| 2026-07-11 | @aloyoga | 414 | 2,473 | 83% | ✗ miss — under-called — late burst | 7967027114110de4 | |
| 2026-07-11 | @wendys | 600 | 353 | 70% | ✗ miss — over-called — early decay | 1de5096649b00e70 | |
| 2026-07-11 | @youngla | 4,484 | 8,075 | 44% | ✗ miss — under-called — late burst | 192d2b9016487f5a | |
| 2026-07-11 | @fentybeauty | 4,253 | 16,239 | 74% | ✗ miss — under-called — late burst | 69d840aeccb1f246 | |
| 2026-07-10 | @elfcosmetics | 915 | 2,107 | 57% | ✗ miss — under-called — late burst | 723f0d24e64331bc | |
| 2026-07-10 | @wendys | 443 | 845 | 48% | ✗ miss — under-called — late burst | 3080c466fc3cb307 | |
| 2026-07-10 | @alphalete | 255 | 601 | 58% | ✗ miss — under-called — late burst | a1915e271fb5269b | |
| 2026-07-10 | @youngla | 2,801 | 5,051 | 44% | ✗ miss — under-called — late burst | 69ead31fe6224dd4 | |
| 2026-07-10 | @liquidiv | 66 | 171 | 62% | ✗ miss — under-called — late burst | 65df23fd06cce741 | |
| 2026-07-10 | @youngla | tiktok | 11,557 | 45,300 | 74% | ✗ miss — under-called — late burst | 3341990327dee17b |
| 2026-07-10 | @glossier | 577 | 1,173 | 51% | ✗ miss — under-called — late burst | a9c74b71311a2f3c | |
| 2026-07-10 | @fentybeauty | 1,307 | 3,534 | 63% | ✗ miss — under-called — late burst | 468151f9e0a7dae3 | |
| 2026-07-10 | @drinkolipop | 712 | 1,889 | 62% | ✗ miss — under-called — late burst | faac0ff51ff4b0e5 | |
| 2026-07-10 | @rarebeauty | 28,116 | 70,743 | 60% | ✗ miss — under-called — late burst | 6451e6ae990cc905 | |
| 2026-07-10 | @oreo | 463 | 1,062 | 56% | ✗ miss — under-called — late burst | 3808e81bd86ddc16 | |
| 2026-07-10 | @gatorade | 123 | 230 | 46% | ✗ miss — under-called — late burst | b0d096798c7debc9 | |
| 2026-07-10 | @gymshark | 11,497 | 44,721 | 74% | ✗ miss — under-called — late burst | 4a6a5f0b8c73527f | |
| 2026-07-10 | @gymshark | tiktok | 60,739 | 502,700 | 88% | ✗ miss — under-called — late burst | 126526f393d3ac1c |
| 2026-07-10 | @aloyoga | 602 | 2,304 | 74% | ✗ miss — under-called — late burst | 5ea5afe00bbaad59 | |
| 2026-07-10 | @fentybeauty | 4,646 | 16,585 | 72% | ✗ miss — under-called — late burst | 1a5382e4359cdec9 | |
| 2026-07-10 | @wendys | 5,621 | 8,711 | 36% | ✗ miss — under-called — late burst | 550b5ae6529343ca | |
| 2026-07-10 | @glossier | 17,722 | 33,119 | 46% | ✗ miss — under-called — late burst | 634792690bf3edd4 | |
| 2026-07-10 | @skims | tiktok | 10,003 | 87,400 | 89% | ✗ miss — under-called — late burst | 85513801f95ebe1d |
| 2026-07-10 | @rarebeauty | tiktok | 11,232 | 57,000 | 80% | ✗ miss — under-called — late burst | 1b8ab46bb85804e7 |
| 2026-07-10 | @elfcosmetics | 416 | 1,023 | 59% | ✗ miss — under-called — late burst | c970f45425d60858 | |
| 2026-07-10 | @vuoriclothing | 5,146 | 8,135 | 37% | ✗ miss — under-called — late burst | 698d2cbff5d0c900 | |
| 2026-07-10 | @milkmakeup | 213 | 616 | 65% | ✗ miss — under-called — late burst | 71c5b80b89b41552 | |
| 2026-07-10 | @gatorade | 78 | 114 | 31% | ✗ miss — under-called — late burst | 0669a8b5d9e44edc | |
| 2026-07-10 | @rhode | 13,705 | 41,768 | 67% | ✗ miss — under-called — late burst | 13d2a4cc5333b465 | |
| 2026-07-10 | @youngla | 3,552 | 17,546 | 80% | ✗ miss — under-called — late burst | 1eb8477fdb7d7b51 | |
| 2026-07-10 | @rarebeauty | tiktok | 31,574 | 99,700 | 68% | ✗ miss — under-called — late burst | 14afa21b50dae2c4 |
| 2026-07-10 | @rarebeauty | tiktok | 11,966 | 38,100 | 69% | ✗ miss — under-called — late burst | 1e2a0240a8441606 |
| 2026-07-10 | @celsiusofficial | tiktok | 769 | 32,100 | 98% | ✗ miss — under-called — late burst | f51b4dbf7e0defa4 |
| 2026-07-10 | @rarebeauty | 15,942 | 27,376 | 42% | ✗ miss — under-called — late burst | 6b529867466dc927 | |
| 2026-07-10 | @charlottetilbury | 98,680 | 144,763 | 32% | ✗ miss — under-called — late burst | 0f83e3609107fcd0 | |
| 2026-07-10 | @drinklmnt | 1,182 | 1,495 | 21% | ✗ miss — under-called — late burst | 3fc6101d5f14e281 | |
| 2026-07-10 | @youngla | 8,804 | 27,412 | 68% | ✗ miss — under-called — late burst | 3daea8d1092b3d84 | |
| 2026-07-10 | @youngla | tiktok | 45,738 | 37,300 | 23% | ✗ miss — over-called — early decay | d0e6d96c8d695fe9 |
| 2026-07-09 | @fentybeauty | 8,839 | 7,531 | 17% | ✓ within band | 352db3bdd268fe99 | |
| 2026-07-09 | @youngla | 25,356 | 21,481 | 18% | ✓ within band | 3d8a024baef32685 | |
| 2026-07-09 | @wendys | 1,256 | 1,198 | 5% | ✓ within band | 3a1eb3f27febca26 | |
| 2026-07-09 | @nike | 2,123,058 | 1,734,887 | 22% | ✗ miss — over-called — early decay | 924df41a0a5c874e | |
| 2026-07-09 | @gatorade | 1,659 | 1,362 | 22% | ✗ miss — over-called — early decay | f6be4abd0cad7c65 | |
| 2026-07-09 | @alphalete | 264 | 249 | 6% | ✓ within band | f1da4b507de6a070 | |
| 2026-07-09 | @youngla | tiktok | 28,736 | 32,300 | 11% | ✓ within band | fe05ba7465ce31e1 |
| 2026-07-09 | @vuoriclothing | 847 | 505 | 68% | ✗ miss — over-called — early decay | e72b79ec0321a7a2 | |
| 2026-07-09 | @drinkolipop | 739 | 438 | 69% | ✗ miss — over-called — early decay | 238056361ed397c9 | |
| 2026-07-09 | @liquidiv | 145 | 102 | 42% | ✗ miss — over-called — early decay | 9f3a3ecec1d4db97 | |
| 2026-07-09 | @rarebeauty | 20,968 | 69,299 | 70% | ✗ miss — under-called — late burst | cd1bb57ea4764f2e | |
| 2026-07-09 | @fentybeauty | 3,258 | 10,852 | 70% | ✗ miss — under-called — late burst | f77dea4aeb9e85f2 | |
| 2026-07-09 | @gymshark | 89,228 | 61,556 | 45% | ✗ miss — over-called — early decay | 4bc59825644968e0 | |
| 2026-07-09 | @aloyoga | 2,386 | 1,625 | 47% | ✗ miss — over-called — early decay | 20688a9982faac99 | |
| 2026-07-09 | @gymshark | tiktok | 37,338 | 75,000 | 50% | ✗ miss — under-called — late burst | 89877ac3ba722db5 |
| 2026-07-09 | @rarebeauty | tiktok | 9,032 | 55,200 | 84% | ✗ miss — under-called — late burst | cc96f01076fc86ee |
| 2026-07-09 | @chipotle | 10,215 | 29,383 | 65% | ✗ miss — under-called — late burst | 54bb0fe40e3bf4ab | |
| 2026-07-09 | @glossier | 844 | 2,150 | 61% | ✗ miss — under-called — late burst | 5e8b9b2785ffe410 | |
| 2026-07-09 | @youngla | 832 | 4,439 | 81% | ✗ miss — under-called — late burst | 5f31dce592dbb03a | |
| 2026-07-09 | @skims | tiktok | 2,625 | 32,300 | 92% | ✗ miss — under-called — late burst | d527203f454de70a |
| 2026-07-09 | @youngla | tiktok | 17,138 | 41,100 | 58% | ✗ miss — under-called — late burst | 16bd75f28af6c266 |
| 2026-07-09 | @charlottetilbury | 2,357 | 10,326 | 77% | ✗ miss — under-called — late burst | 9bfd7abcf5ac3918 | |
| 2026-07-09 | @elfcosmetics | 791 | 1,908 | 58% | ✗ miss — under-called — late burst | cc75031acc724bdf | |
| 2026-07-09 | @gatorade | 89 | 126 | 29% | ✗ miss — under-called — late burst | b26287a33dfd740c | |
| 2026-07-09 | @duolingo | 4,183 | 221,615 | 98% | ✗ miss — under-called — late burst | a1b2e8ce2cf740e5 | |
| 2026-07-09 | @rhode | 20,785 | 56,450 | 63% | ✗ miss — under-called — late burst | 65be2e7126517c89 | |
| 2026-07-09 | @rarebeauty | 9,739 | 30,856 | 68% | ✗ miss — under-called — late burst | 7806156bec7a87cb | |
| 2026-07-09 | @rarebeauty | tiktok | 6,358 | 38,200 | 83% | ✗ miss — under-called — late burst | 9aadb1f53bb67be6 |
| 2026-07-09 | @duolingo | tiktok | 53,952 | 1,900,000 | 97% | ✗ miss — under-called — late burst | 96fec442da9c631c |
| 2026-07-09 | @rarebeauty | 7,361 | 15,219 | 52% | ✗ miss — under-called — late burst | 57e11fc30b5d98c0 | |
| 2026-07-09 | @rarebeauty | tiktok | 6,051 | 24,000 | 75% | ✗ miss — under-called — late burst | da1742e0b58b1607 |
| 2026-07-09 | @milkmakeup | 488 | 1,088 | 55% | ✗ miss — under-called — late burst | 161dea8df76ea152 | |
| 2026-07-09 | @charlottetilbury | 1,395 | 2,797 | 50% | ✗ miss — under-called — late burst | e8745bd7238d8b8b | |
| 2026-07-08 | @drinkolipop | 133 | 251 | 47% | ✗ miss — under-called — late burst | 72807d2872737c43 | |
| 2026-07-08 | @celsiusofficial | 806 | 2,142 | 62% | ✗ miss — under-called — late burst | aa00369e33a5743d | |
| 2026-07-08 | @glossier | 2,155 | 4,169 | 48% | ✗ miss — under-called — late burst | ad9ae0360986a51b | |
| 2026-07-08 | @milkmakeup | 81 | 196 | 59% | ✗ miss — under-called — late burst | b387f65a9648685b | |
| 2026-07-08 | @elfcosmetics | 1,397 | 3,668 | 62% | ✗ miss — under-called — late burst | 944cbb031cea4bc8 | |
| 2026-07-08 | @gatorade | 171 | 269 | 36% | ✗ miss — under-called — late burst | 7874e8474933a916 | |
| 2026-07-08 | @savagexfenty | 466 | 830 | 44% | ✗ miss — under-called — late burst | 969c9e3378a7126d | |
| 2026-07-08 | @rhode | 23,802 | 40,908 | 42% | ✗ miss — under-called — late burst | f6dec5ee166920fe | |
| 2026-07-08 | @rarebeauty | 39,283 | 111,485 | 65% | ✗ miss — under-called — late burst | 3c1bf6928c209041 | |
| 2026-07-08 | @rarebeauty | tiktok | 13,271 | 63,100 | 79% | ✗ miss — under-called — late burst | 4c3d2b5a8b0e214d |
| 2026-07-08 | @rarebeauty | tiktok | 34,118 | 388,700 | 91% | ✗ miss — under-called — late burst | 69d92feaf114a113 |
| 2026-07-08 | @celsiusofficial | tiktok | 1,028 | 26,200 | 96% | ✗ miss — under-called — late burst | 93dadccb27f5d594 |
| 2026-07-08 | @gymshark | 7,743 | 19,380 | 60% | ✗ miss — under-called — late burst | 7c4a1e7f51b68f65 |
Open bets — locked, awaiting outcomes
| locked (UTC) | brand | platform | predicted final | status | slip hash |
|---|---|---|---|---|---|
| 2026-07-04 23:55 | @youngla | 9,028 | resolves in ~0h | dbc2ab73db15a3fd | |
| 2026-07-04 23:55 | @youngla | 26,613 | resolves in ~0h | 7465b7aa7c0bd58a | |
| 2026-07-04 23:55 | @duolingo | tiktok | 44,819 | resolves in ~0h | 101f62dec7dbb51f |
| 2026-07-05 02:12 | @youngla | 6,729 | resolves in ~0h | 703f8cc8b2367736 | |
| 2026-07-05 17:10 | @rarebeauty | 43,299 | resolves in ~0h | 34ed4ec29da2db30 | |
| 2026-07-05 21:53 | @skims | 1,732 | resolves in ~0h | 760b3825df0a7f45 | |
| 2026-07-06 01:52 | @youngla | 1,459 | resolves in ~0h | edfb22c881df24ec | |
| 2026-07-06 16:53 | @skims | 1,834 | resolves in ~0h | b57b6bdbf916649e | |
| 2026-07-07 16:52 | @skims | 3,128 | resolves in ~0h | adb4d6ff46a90f73 | |
| 2026-07-08 10:59 | @charlottetilbury | 2,325 | resolves in ~0h | dfd5a09e74371a1b | |
| 2026-07-08 14:01 | @drinklmnt | 84 | resolves in ~0h | 6388b9199ef8925f | |
| 2026-07-08 21:24 | @elfcosmetics | 5,080 | resolves in ~0h | de5c76ea47dce957 | |
| 2026-07-08 21:24 | @vuoriclothing | 1,181 | resolves in ~0h | 78cfa79139d3ca6f | |
| 2026-07-08 21:24 | @drinkolipop | 1,283 | resolves in ~0h | e1dad08da05264bb | |
| 2026-07-08 21:24 | @skims | 11,074 | resolves in ~0h | 3e186d510619b6c0 | |
| 2026-07-08 21:24 | @rhode | 65,126 | resolves in ~0h | d273cce9f4620bf5 | |
| 2026-07-08 21:24 | @rarebeauty | 59,325 | resolves in ~0h | 4dd9411f361e105f | |
| 2026-07-08 21:24 | @duolingo | 14,642 | resolves in ~0h | 0d82b6e7300292f8 | |
| 2026-07-08 21:51 | @gatorade | 1,232 | resolves in ~0h | ccf0986bd2f61bde | |
| 2026-07-08 21:51 | @savagexfenty | 395 | resolves in ~0h | d2b2ca79224afcc2 | |
| 2026-07-08 21:51 | @charlottetilbury | 1,288 | resolves in ~0h | 7e0939a23db93455 | |
| 2026-07-08 21:51 | @elfcosmetics | 1,057 | resolves in ~0h | 06480c3b86159256 | |
| 2026-07-08 21:51 | @wendys | 1,150 | resolves in ~0h | df010336de0fefdc | |
| 2026-07-08 21:51 | @gymshark | 41,563 | resolves in ~0h | 07f11ee5f920134c | |
| 2026-07-08 21:51 | @milkmakeup | 572 | resolves in ~0h | c088be09151000f7 | |
| 2026-07-08 21:51 | @liquidiv | 173 | resolves in ~0h | ad00320eeecf6781 | |
| 2026-07-08 21:51 | @celsiusofficial | 1,323 | resolves in ~0h | 7731fa70ceb82730 | |
| 2026-07-08 21:51 | @duolingo | 7,655 | resolves in ~0h | 9a8b694af547320f | |
| 2026-07-08 21:51 | @alphalete | 166 | resolves in ~0h | b82e0c334fcdf3ed | |
| 2026-07-08 21:51 | @milkmakeup | 125 | resolves in ~0h | cedf5e9bbff938ff |
How to verify we can't cheat. Each prediction is appended to a hash-chained ledger at the
moment it's made: every record carries a SHA-256 of its content plus the previous record's hash,
so nothing can be edited or backdated without breaking the chain. The ledger file is periodically
anchored to the Bitcoin blockchain via OpenTimestamps — an independent, third-party proof
that these predictions existed before their outcomes. A miss can't be deleted; that's why
you can see them above.