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=4651)
1346 / 4651within 20% of actual (29%)
6878open bets resolving at 72h
173public brands tracked

Median magnitude error 37% (shown because we show everything) · rank accuracy = how well we order winners vs losers, the number a media decision rides on · model ev_growth_v2 · n_locked total: 11531

Evidence — 3-chart track record pack

Rolling Spearman rank accuracy as forward predictions accumulateEach point is the Spearman correlation between predicted and observed engagement ranks, computed over the trailing 30 resolved slips. n grows left to right.-1.0-0.50.0+0.5+1.020406080100nth resolved slip (n grows left to right)rolling Spearman ρ (trailing 30)+0.94Rank accuracy reaches +0.94 across 101 resolved predictionsEvery point is a pre-registered prediction; n grows left to right as slips resolve at 72 h.
Absolute percentage error distribution: hits (≤20%) vs missesHistogram of absolute percentage error for 101 resolved predictions. Green bars = within 20% (hits). Red bars = outside 20% (misses). Median absolute error = 58%.0481216205118513142111760%10%20%30%40%50%60%70%80%90%≥100%absolute % error (|predicted − actual| / actual)resolved predictionsmedian error = 58%16/101 predictions within 20% (hit rate 16%) — median error 58%within 20% (16 hits)outside 20% (85 misses — fully shown)n = 101 resolved slips; misses rendered at full height — nothing hidden.
Model vs LLM creative ranking accuracy: model picks the winner 100% of the timeWithin-account bake-off on 2 brands with prior history (with-data condition). Model arm: account-conditional velocity score. LLM arm: creative text heuristic. n=2 accounts; cold-start condition not yet tested.+0.00+0.25+0.50+0.75+1.00+0.96Model+0.51LLMmean Spearman ρ0%25%50%75%100%100%Model0%LLMpicked-best rateRank accuracy (Spearman ρ)Picked the actual best creativeModel picks the winning creative 100% of the time when account data existsWithin-account only (account level cancelled by design). With-data condition: n=2 accounts with ≥15 prior posts. Cold-start condition: not yet tested — insufficient resolved data.

Resolved — hits AND misses

resolvedbrandplatformpredicted actualerrorverdictslip hash
2026-09-12@ourplacetiktok1,15868469%✗ miss — over-called — early decay2b7f6f03819536fb
2026-09-12@elfcosmeticsinstagram6,0555,21916%✓ within bandfe86fa5f1bf1a372
2026-09-12@rhodeinstagram164,442117,78140%✗ miss — over-called — early decayf045ea00d908e095
2026-09-12@themobbeautyinstagram456934%✗ miss — under-called — late burstf0948995aef05c6e
2026-09-12@summerfridaysinstagram58,838104,83144%✗ miss — under-called — late burste46d69644f9967b7
2026-09-12@savagexfentyinstagram93574825%✗ miss — over-called — early decayd71883e2451e5a49
2026-09-12@rarebeautyinstagram104,901119,14412%✓ within bandd5cd3ce43f894e1a
2026-09-12@newegginstagram192216%✓ within banda01e619c104a298c
2026-09-12@fentybeautyinstagram6,3524,28348%✗ miss — over-called — early decay02111f0cbb4b803e
2026-09-12@duolingoinstagram15,99050,60068%✗ miss — under-called — late bursta50667a01f240dcf
2026-09-12@rhodeinstagram188,858263,93628%✗ miss — under-called — late burst25ba90a9c1f8e042
2026-09-12@ipsyinstagram1741877%✓ within band83206f62d15483d5
2026-09-12@crumblinstagram12,76136,54765%✗ miss — under-called — late bursteb8a444e828dba51
2026-09-12@ghostlifestyleinstagram37733014%✓ within band3106c0d69894ed0e
2026-09-12@hudabeautyinstagram12,03410,82511%✓ within band6b13618d98a7a965
2026-09-12@younglainstagram16,08314,55510%✓ within band7e3731988eb7146c
2026-09-12@mollyjewelryusinstagram62635,51198%✗ miss — under-called — late burstdce603fa0630e9e9
2026-09-12@itjustworkswellnessinstagram3756%✗ miss — under-called — late burst1007a6682c68a800
2026-09-12@nurturelifeinstagram523356%✗ miss — over-called — early decayc7fce94b334faee5
2026-09-12@kyliecosmeticsinstagram11,83819,07338%✗ miss — under-called — late burstdcd9f93c33d17925
2026-09-12@drunkelephantinstagram39647517%✓ within band348bdc9783338d03
2026-09-12@mindymaesmarketinstagram1369247%✗ miss — over-called — early decay74b38f591449bc9a
2026-09-12@jimmychooinstagram2,2302,3063%✓ within band8b50ebb6e1f9590e
2026-09-12@charlottetilburyinstagram7,22410,98934%✗ miss — under-called — late burste29cb985afdaed70
2026-09-12@duolingoinstagram25,496224,78689%✗ miss — under-called — late burst3bf6983c1b7e251f
2026-09-12@myloralsinstagram167136%✗ miss — over-called — early decay80232c2c61a2b74f
2026-09-12@nudestixtiktok2,333807189%✗ miss — over-called — early decaycfc3ec4654b98c8b
2026-09-12@nudestixinstagram829312%✓ within band3d0ce9790d7f4013
2026-09-12@marykayustiktok1,6201,07051%✗ miss — over-called — early decay773ac3eb583894e0
2026-09-12@madewellinstagram1,1241,26011%✓ within band20b214ef99275071
2026-09-12@marykayusinstagram66153524%✗ miss — over-called — early decayabf343cad8150b6a
2026-09-12@mountaindewinstagram55941634%✗ miss — over-called — early decayd1ba591cd3376978
2026-09-12@jsukijewelryinstagram1461534%✓ within bandf99dabf98654f345
2026-09-12@japanlainstagram9741,50435%✗ miss — under-called — late burstf0014cfdccaf5400
2026-09-12@abercrombieinstagram1,07618,78094%✗ miss — under-called — late burstd27d8b201ce8e9ba
2026-09-12@nyxcosmeticsinstagram3,3734,86531%✗ miss — under-called — late burst7d4a58a388da8874
2026-09-12@stevemaddeninstagram48556214%✓ within band4a7edd05133dc143
2026-09-12@urbanoutfittersinstagram47732945%✗ miss — over-called — early decay51bb8ff963043bd2
2026-09-12@alphaleteinstagram34327823%✗ miss — over-called — early decayf059af613f68b6ad
2026-09-12@drinkolipopinstagram5,8256,1686%✓ within band5ae9901290f153f3
2026-09-12@shopmarissacollectionsinstagram493063%✗ miss — over-called — early decay6929736c3c23a535
2026-09-12@drinkolipoptiktok5,85535,90084%✗ miss — under-called — late burste76564c72ac728ff
2026-09-12@andotherstoriesinstagram59166711%✓ within band18649d42e5f9ae9c
2026-09-12@vitacocoinstagram5595384%✓ within band0442102cee80af8e
2026-09-12@jockofuelinstagram5,6865,8743%✓ within bandd62250982585ee7b
2026-09-12@innosuppsinstagram122144%✗ miss — under-called — late burst9637fe8f7758f2e6
2026-09-12@gatoradeinstagram27921132%✗ miss — over-called — early decay0f6aa5727998f4c0
2026-09-12@nyxcosmeticsinstagram5,73418,96870%✗ miss — under-called — late burst9eda3bfc1d0bdea4
2026-09-12@innisfreeusainstagram21614945%✗ miss — over-called — early decayd539d133a33c6f4a
2026-09-12@duolingoinstagram10,06012,32618%✓ within banddff103b2f1d70693
2026-09-12@skimsinstagram13,1636,426105%✗ miss — over-called — early decay540cf45dbbfa0268
2026-09-12@neweracapinstagram1,10090222%✗ miss — over-called — early decay3e0016b36d29fd0f
2026-09-12@nyxcosmeticsinstagram1,8092,14816%✓ within bandb5c46f7307fb724e
2026-09-12@skimsinstagram7,53033,23477%✗ miss — under-called — late burst8f59052964e46a3a
2026-09-12@vuoriclothinginstagram3,2513,4957%✓ within band7e8bd02cb8906767
2026-09-12@loftinstagram25429915%✓ within bandd692b19d4636c0a8
2026-09-12@maseratiinstagram19,97216,28523%✗ miss — over-called — early decay50f0e931fe1e39a2
2026-09-12@neomwellbeingtiktok780279180%✗ miss — over-called — early decayfc1f9ebdde12fe73
2026-09-12@andotherstoriesinstagram4084326%✓ within bande4e6d031d9716161
2026-09-12@longchampinstagram1,5071,24921%✗ miss — over-called — early decay5f835d508263a373
2026-09-12@neomwellbeinginstagram1247467%✗ miss — over-called — early decay04bfa0214e21eab9
2026-09-12@maseratitiktok10,1335,53683%✗ miss — over-called — early decaycb88854148b0ebe3
2026-09-12@lolasaratogainstagram1068919%✓ within band5371fac22a3e39fc
2026-09-12@maisonkitsuneinstagram3901,05763%✗ miss — under-called — late burstbbedf741d5eaad34
2026-09-12@younglatiktok5,897104,60094%✗ miss — under-called — late burste84d9dec32dab648
2026-09-12@abercrombieinstagram4,9444,9400%✓ within bandf33817d3680356b5
2026-09-12@andotherstoriestiktok20633538%✗ miss — under-called — late burstf46ade1864bec552
2026-09-12@monsterjaminstagram32624234%✗ miss — over-called — early decay40ded9ec83992a2d
2026-09-12@casetifyinstagram1,26184350%✗ miss — over-called — early decay16d969fe532e6d45
2026-09-12@josiemaraninstagram72386516%✓ within bandd5b3badd3c266427
2026-09-12@miss_jessiestiktok55630682%✗ miss — over-called — early decay7f72118b81cb0748
2026-09-12@younglainstagram5,8595,8041%✓ within bandfe6199655306b3a3
2026-09-12@mindymaesmarketinstagram1141227%✓ within band004ffd168c59f2ae
2026-09-12@lululemoninstagram9,1325,94854%✗ miss — over-called — early decay1be5e68bf84d2faa
2026-09-12@fentybeautyinstagram1,9651,60023%✗ miss — over-called — early decay29a5583619e3e1b0
2026-09-12@huupeofficialinstagram546213%✓ within band30dcd2e0e2506945
2026-09-12@stevemaddeninstagram1,0059377%✓ within banda81c546d692516c3
2026-09-11@crumblinstagram3,6343,9588%✓ within bande6acee707e4f12d4
2026-09-11@lolasaratogainstagram50491%✓ within band77025fec7bc21dc5
2026-09-11@johnscrazysocksinstagram92876%✓ within band4b7d8ac1b5af6747
2026-09-11@madewellinstagram23926610%✓ within bandd9a7db6b59c7312b
2026-09-11@wendysinstagram50441621%✗ miss — over-called — early decay572e33b0bad1bf15
2026-09-11@mayorgacoffeeinstagram9211016%✓ within band3d53e0c7ed445c7f
2026-09-11@lovingtanofficialinstagram-1578100%✗ miss — under-called — late burst40caad0b6d4333c8
2026-09-11@skincarebydrnassifinstagram71028%✗ miss — under-called — late burstd9d0cfdbbb65d910
2026-09-11@mayorgacoffeetiktok432141206%✗ miss — over-called — early decay7171b9db929dd5fb
2026-09-11@jockofueltiktok3,7861,478156%✗ miss — over-called — early decay0e6f343c0bae0e39
2026-09-11@mindymaesmarkettiktok8261,22933%✗ miss — under-called — late burst735f3dc31093d2ce
2026-09-11@humnutritioninstagram42412%✓ within band7d9eb97d2e29a256
2026-09-11@glossierinstagram2,7554,77342%✗ miss — under-called — late burst4a37f87cf8a72c2a
2026-09-11@midinmodinstagram51155%✗ miss — under-called — late burstdc42bef87b6c74fa
2026-09-11@loftinstagram1,2541,78930%✗ miss — under-called — late burst26294ae80ff959cc
2026-09-11@jockofueltiktok2,004905121%✗ miss — over-called — early decay793dbf0aef6ea075
2026-09-11@nelliesfreerangetiktok1,042472121%✗ miss — over-called — early decay502aac0b446ff21c
2026-09-11@humnutritiontiktok29315392%✗ miss — over-called — early decay2208087d28cf6cfd
2026-09-11@marykayustiktok1,4351,12827%✗ miss — over-called — early decayf3264c486dc24633
2026-09-11@midinmodtiktok6460%✗ miss — over-called — early decayf3d6ec44792114f6
2026-09-11@lofttiktok7291,23041%✗ miss — under-called — late burst0d33e0ef059d5bb0
2026-09-11@marykayusinstagram31442526%✗ miss — under-called — late burst2529d8f034b609d0
2026-09-11@liquidivinstagram1101186%✓ within band465b80a979ab0458

Open bets — locked, awaiting outcomes

locked (UTC)brandplatformpredicted final statusslip hash
2026-07-04 23:55@younglainstagram9,028resolves in ~0hdbc2ab73db15a3fd
2026-07-04 23:55@princesspollyinstagram398resolves in ~0h27d038a8ce4a54ea
2026-07-04 23:55@princesspollyinstagram303resolves in ~0h3a6bf54835bcf1d6
2026-07-04 23:55@fashionnovainstagram606resolves in ~0h32fbc0254d09c98e
2026-07-04 23:55@fashionnovainstagram1,524resolves in ~0h74ff3837f15b9a04
2026-07-04 23:55@princesspollyinstagram338resolves in ~0hd8545283f03c90bb
2026-07-04 23:55@younglainstagram26,613resolves in ~0h7465b7aa7c0bd58a
2026-07-04 23:55@gfuelenergyinstagram112resolves in ~0hacf35ee90493782a
2026-07-04 23:55@princesspollyinstagram194resolves in ~0h051bdd09625cdb2a
2026-07-04 23:55@fashionnovainstagram567resolves in ~0h0338afb51357235c
2026-07-04 23:55@princesspollyinstagram31resolves in ~0h2d0e95377e767a2c
2026-07-04 23:55@duolingotiktok44,819resolves in ~0h101f62dec7dbb51f
2026-07-05 02:12@fashionnovainstagram346resolves in ~0h9772447a8bca0243
2026-07-05 02:12@younglainstagram6,729resolves in ~0h703f8cc8b2367736
2026-07-05 03:12@fashionnovainstagram365resolves in ~0h7b29d4d99ba256eb
2026-07-05 04:04@princesspollyinstagram265resolves in ~0h53a4e662e1135438
2026-07-05 05:16@fashionnovainstagram619resolves in ~0h65fabef12569d2bf
2026-07-05 09:09@redbullinstagram7,648resolves in ~0hc81108bf5e49c0e4
2026-07-05 13:54@fashionnovainstagram530resolves in ~0hf8be86ce806f0968
2026-07-05 13:54@glowrecipeinstagram322resolves in ~0h72b5e61c6d17f774
2026-07-05 15:21@redbullinstagram10,053resolves in ~0hc0b5eb5c227fcb74
2026-07-05 16:20@fashionnovainstagram987resolves in ~0hd751acf8b220b610
2026-07-05 17:10@fashionnovainstagram431resolves in ~0h7593d526c4046bcb
2026-07-05 17:10@glowrecipeinstagram770resolves in ~0h33bea4df285e784c
2026-07-05 17:10@rarebeautyinstagram43,299resolves in ~0h34ed4ec29da2db30
2026-07-05 20:24@fashionnovainstagram2,097resolves in ~0h32d5716c943ca608
2026-07-05 20:24@fashionnovainstagram386resolves in ~0h4c3a73df07f73467
2026-07-05 21:53@princesspollyinstagram262resolves in ~0hb72a5c1b3d525773
2026-07-05 21:53@princesspollyinstagram421resolves in ~0h9c94e5eecf48e4f4
2026-07-05 21:53@skimsinstagram1,732resolves in ~0h760b3825df0a7f45
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.