Loading ticker...
Loading… @TheOddsGap

Every Play The Signal Scores, Published

Wins, losses, and the plays it rated badly. The ruleset is frozen, the log is hash chained, and every tier is here including the ones we would rather not show you. If the low tiers do not underperform the high tiers, the score is noise, and this page will say so.

Ruleset v1.0 Window opens 2026-07-25 Graded 7723 over 16 play dates Pre-declared gate met Hash chain intact, 14 links

What This Page Is Not

Nothing here is staked. Every number below is paper: the price we flagged, at the book we flagged it, graded against the real result. That is a genuine out-of-sample test of the scoring rules, and it is also the easiest kind of record to produce, because paper never gets a worse price than the one it quoted.

Real money at flat stakes is the declared next stage and it starts now, one wager at a time, placed by hand. Nothing is for sale until that reads, and it publishes either way. Math, not picks: this is where the same bet paid more, never advice on what to bet.

The Gate, As Declared And As Met

The bar was written down before the window opened, which is the only time a bar is worth anything. It lives in the code that computes this table, so the page cannot quote one number and the test another.

ConditionDeclaredMetResult
Graded plays 400 7723 Yes
Distinct play dates 14 16 Yes
Top tier's 95% interval clear of zero Entirely above 0% 6.47% to 13.39% Yes
Top tier beats the bottom tier Above 0 points 6.78 points Yes

Verdict: PASSES so far: the top tier's return is above zero with its clustered 95% interval clear of zero, and it still beats the bottom tier on plays the config never saw.

Intervals resample whole play dates rather than individual plays, because a slate's plays share games, players and books, and a per-play interval is materially too narrow. A positive point estimate whose interval straddles zero is not evidence of an edge. Daily fantasy pick'em legs are excluded from every number on this page: they carry no American price, so scoring them flat is a win-rate proxy and not a return. 6836 such legs were logged and set aside.

One difference worth naming so the arithmetic checks out. This table is the gate exactly as it was declared, and the declared version pools props and game lines inside each tier. The props table below is props only, which is the surface we actually claim, so its tier returns and the gap between them will not match this row to the decimal. Both are shown rather than reconciled into whichever reads better.

Player Props, Every Tier

Props are the surface we claim. Flat one unit per play, losses included, no filtering by market, book or league. Sub-cutoff plays ("Lean") are published for the same reason the top tier is: a score that cannot separate them is not a score.

TierGradedRecordReturn 95% intervalWin rate Win rate 95%SortinoUnits
strong 5101 3470-1631 +9.87% 6.47 to 13.39 68.03% 66.73 to 69.29 0.175 +503.62
solid 909 564-345 +2.30% -4.24 to 8.65 62.05% 58.85 to 65.14 0.037 +20.93
lean 1416 965-451 +5.70% 3.06 to 8.29 68.15% 65.68 to 70.52 0.101 +80.76
All props 7426 4999-2427 +8.15% 5.76 to 10.63 67.32% 66.24 to 68.38 0.143 +605.31

Sortino is the mean unit return divided by the downside deviation, the raw ratio with no annualization, because annualizing a bet ledger implies a holding period that does not exist. Read it as return per unit of downside and only alongside the count next to it. 539 plays are still pending and 535 settled with no usable stat feed; neither is counted in any return above.

Does A Higher Score Actually Pay More

Return by score band, on graded props. This is the chart that answers the question, and the sentence under it is written by the page from the live numbers rather than typed by us.

0-10
+5.49% n=94
10-20
+5.27% n=615
20-30
+5.31% n=690
30-40
+4.66% n=576
40-50
+0.52% n=584
50-60
+11.39% n=822
60-70
+10.80% n=905
70-80
+8.91% n=1205
80-90
+9.49% n=912
90-100
+11.32% n=1023

As of today, higher scores are outperforming lower ones. The highest populated band (90-100, n=1023) returns 11.32% and the lowest (0-10, n=94) returns 5.49%, a spread of 5.83 points, and 4 of 9 adjacent steps move in the right direction. A flat or negative spread would mean the score is noise, and this sentence is written by the page from the live numbers, so it will say that on the day it is true.

Closing Line Value, Split Into Its Two Halves

A single closing-line-value number blends two unrelated things, and the blend flatters the score. We publish the split instead, because anyone can run this decomposition on our own data and we would rather it came from us.

Published, Combined
+3.59pp
Our entry price against the market's de-vigged fair price at close. This is the number closing-line value normally means, over 7426 graded props.
Did The Market Agree With Us
-0.02pp
How far the market's own fair price moved toward our side after we flagged it. This is the only half a confidence score can take credit for.
Did Shopping Beat The Close
+3.61pp
How much better our price already was than the market's fair price at the moment we took it. This is line shopping across twenty books, not the score.

The two halves add to the published figure exactly, with no residual, because the combined number is the closing fair minus our price and inserting the fair at flag time splits it in two. On the record as it stands, essentially all of it is the second half. The market moved -0.02 points toward our side on average, which is nothing, and our price was +3.61 points better than the market when we took it, which is everything.

Said plainly: our closing-line value is the product working, not the score predicting. That does not undo the returns in the table above, which are realized results and not a closing-price proxy, but anyone quoting our closing-line value as evidence the score is sharp is quoting the wrong number, and now they can see which one.

A stricter second reading is accruing: our entry price against the flagged book's own closing number, and against the best number available anywhere at close. That needs the whole price ladder captured at close, which nothing stored until this deploy, so it fills forward from here and is not backfilled. Reconstructing it for older plays would mean inventing closing prices we never recorded. No plays have closed under the new capture yet, so there is nothing to report and we are not going to reconstruct it from data we did not store.

Where This Record Is Weak

These are not footnotes. Anyone deciding whether to trust the record will find them, and a record that makes you hunt for them has already lost the argument it exists to win.

The middle of the ladder is not proven. Solid returns +2.30% while Lean, the tier below it, returns +5.70%. That is the wrong way round. Solid's 95% interval is -4.24 to 8.65, which includes zero, so the honest reading is that the middle tier has not demonstrated anything yet. Only the top tier clears the bar. Treat Solid as unproven, not as a weaker version of Strong. Only 4 of 9 adjacent score bands step in the right direction, so the ladder is not smooth even where the ends separate.

The top tier fires far too often. Strong is 68.7% of every graded prop. It was calibrated to be the top fifth or so of plays, and a badge that lands on two thirds of the board is not selecting much. The cause is understood and structural: the score saturates, so a large enough edge pins the scale near the top and everything above that point is indistinguishable. This is documented as v2 research, and it is deliberately not being fixed inside v1.0. Fixing a saturating score after seeing which plays won is how a record stops meaning anything.

Player prop grading for one league went dark for two weeks. Between 2026-07-22 to 2026-08-05, WNBA player props stopped receiving results while the other league graded nightly, because a scoreboard lookup was silently failing and three layers of error handling each swallowed it politely. It was found and fixed, and the affected plays were regraded from the real historical box scores rather than estimated or dropped: 401 of 424 plays in that window now carry a real result, with 23 genuinely ungradeable (players who did not appear, markets with no matching stat). Recovering a result is not rescoring: no score, tier or ruleset value was touched. A nightly data-level check now watches for the same shape of silence, and it fails on any league-day where every play is still ungraded long after the games finished, whatever the cause turns out to be next time.

Game lines are not a claim. They are logged so the record exists either way, and they are reported below on their own, never blended into the prop numbers. We do not claim an edge on game lines.

Game Lines, Logged And Unproven

Moneylines, spreads and totals. Shown for completeness with no return headline, because the sample is thin and we make no claim here.

GradedRecordUnitsReturn95% intervalCombined CLVMarket moveShopping
300 156-141-3 -27.82 -9.27% -31.52 to 10.67 +1.29pp -0.16pp +1.44pp

The Forward Test, Real Money At Flat Stakes

Stage one asks one question: does real return track paper return on the same plays. Not profit. The staked subset is declared and deterministic so it cannot be cherry picked after the fact.

Top 5 by score among Solid and Strong props flagged by 7:45 ET, ties by earliest flag then id. No discretion. Stake is $5 flat per play with no exceptions and no staking scheme. Before each play's game start. Achieved price logged against flagged price on every wager. A play that cannot be placed in time is logged as missed, and one at a book without an account is logged as inaccessible, so plays that quietly vanish cannot look like plays that never qualified. Target is 300 graded staked plays.

Success criterion, set before the first stake: Realized ROI above 0% at 300 placed plays. Hard fail if the clustered 95% interval sits entirely below zero at any point after 100 placed plays; anything between extends in 100-play blocks. Declared before the first stake, superseding the original inside-the-paper-interval test, which a power calculation showed would fail a perfect signal about 40% of the time. Publishes either way.

What 300 plays can and cannot prove, stated up front so the criterion cannot be graded on a curve later: at 300 flat-stake plays, realized return carries about 8.5 points of its own noise either way. If the true edge matches the paper record (+10%), the floor passes about 99 times in 100. If the edge is actually zero, it passes about half the time. If the edge is negative, it almost never passes. Telling +10% apart from +5% would take roughly 1,400 plays. This test is a smoke alarm for a dead or imaginary edge, not a thermometer for its exact size, and it is the strongest claim 300 plays can honestly support.

The criterion above replaced the originally declared test (real return landing inside the paper record's interval) on August 11, 2026, before any stake was placed. The original test was withdrawn because the same power arithmetic showed it would fail a genuinely good signal about 40% of the time: the paper interval is narrow because it comes from thousands of plays, and 300 real plays are noisier than that band by construction. Changing a criterion after staking begins would be unacceptable; changing it before, in public, with the arithmetic shown, is the correction working as intended.

No stakes recorded yet. This section fills in as wagers are placed by hand, one at a time. Every bet is placed by a person; nothing here places a wager automatically, ever.

Provenance

What produced these numbers, and how you can check that it has not been quietly changed since. Full explainer and a script you can run: how to verify this record.

The scoring rules are sealed as v1.0. The seal is bound to a fingerprint of every value that can move a score: the tunable thresholds, the daily caps, the switches that decide which venues price a market, the price and de-vig code, and the list of books allowed to produce a flagged play. A tripwire re-checks that fingerprint on every boot and once per scan. If any of it moves, a new entry is written, the label stops being applied, and the change appears in the table below. The label follows the fingerprint, so it cannot be carried onto a changed ruleset by anyone editing a file.

The live configuration still matches the seal, and 46 plays carry the v1.0 stamp so far. Plays flagged before the seal are deliberately left unstamped. They were scored by the same numbers, but they predate the label, and the entries below are what proves which configuration produced them.

Ruleset history

RecordedStateVersionBuildWhat moved
2026-07-26 19:08:00 Superseded - 937f24857 First entry, or a change outside the watched values
2026-07-29 02:00:49 Superseded - 8f649f364 price_code_hash: None -> c0cc311430a2712f
2026-07-30 23:41:33 Superseded - 6ed07dff5 price_code_hash: c0cc311430a2712f -> fe5538a61eefdab8
2026-08-05 14:49:27 Superseded - eaafda490 KALSHI_CONSENSUS_MIN_BOOKS: absent -> 3; KALSHI_CONSENSUS_STRONG_DEVIATION_PP: absent -> 9.0; KALSHI_MIN_VOLUME: absent -> 4000; MIN_EXCHANGE_FILL_USD: absent -> 100.0; NOVIG_ENABLED: absent -> True; PM_CONSENSUS_MAX_DEVIATION_PP: absent -> 12.0; PROPHETX_ENABLED: absent -> True; SIGNAL_DAILY_CAP_DFS: absent -> 600; SIGNAL_PLATFORM_AWARE: absent -> True; SIGNAL_REGRADE_LOOKBACK_DAYS: absent -> 21; price_code_hash: fe5538a61eefdab8 -> 9bacbb2ce3d86b80
2026-08-07 23:39:27 Superseded - 2471d9f7f POLYMARKET_US_ENABLED: absent -> True
2026-08-10 00:47:23 Active v1.0 617038da6 _SIGNAL_EXCLUDE_BOOKS: absent -> ['betonlineag', 'bovada', 'fliff', 'kalshi', 'lowvig', 'mybookieag', 'pinnacle', 'polymarket', 'polymarket_us']

Some entries record the tripwire widening its own coverage rather than the ruleset changing: when a value that could always have moved a score starts being watched for the first time, it reads as "absent" before and a real value after, which is a change in what we monitor and not in what we compute.

Hash chain

Every settled play date is serialized in a fixed, published format, hashed, and chained to the previous day's hash. The chain is mirrored to a public location outside our database, so the timestamps are not ours to rewrite. Change one graded result after the fact and that day's hash moves, every link after it fails to reproduce, and the break names the exact date. A chain cannot prevent an edit. It makes an edit impossible to hide, which is the claim we are actually making.

Chain starts 2026-07-25, 14 links, current tip 91510ec97bf65c00ab9b534ccd2e7ed95cc6b615b15aca319ee15dc3db1fab16, status intact.

Every Play

Download Full Dataset (CSV) Every row below, in the exact field order the hash chain verifies.

Newest first, 10273 plays in the window. Pending plays appear the moment they are flagged, which is what makes the timestamps mean anything. Nothing is filtered, retired or restated.

Flagged (ET)MatchupPlayBook EntryEntry fairClosing fair CLVScoreTierResultUnits
Jul 25, 6:00 AM ET Cleveland Guardians @ Tampa Bay Rays Patrick Bailey Under 0.5 Home Runs ProphetX -755 92.64% 94.59% +6.29 79.7 strong win +0.132
Jul 25, 6:00 AM ET Cleveland Guardians @ Tampa Bay Rays Patrick Bailey Under 0.5 Hits ProphetX +129 46.63% 49.16% +5.49 30.5 solid win +1.290
Jul 25, 6:00 AM ET Cleveland Guardians @ Tampa Bay Rays Patrick Bailey Under 0.5 Hits + Runs + RBIs ProphetX +157 41.76% 44.02% +5.11 52.4 strong win +1.570
Jul 25, 6:00 AM ET San Diego Padres @ Miami Marlins Otto Lopez Under 0.5 Stolen Bases ProphetX -505 87.12% 86.36% +2.89 67.1 strong loss -1.000
Jul 25, 6:00 AM ET San Diego Padres @ Miami Marlins Otto Lopez Under 0.5 Home Runs ProphetX -633 90.94% 92.25% +5.89 84.2 strong win +0.158
Jul 25, 6:00 AM ET San Diego Padres @ Miami Marlins Otto Lopez Under 1.5 Hits ProphetX -169 66.33% 66.56% +3.73 64.3 strong win +0.592
Jul 25, 6:00 AM ET San Diego Padres @ Miami Marlins Otto Lopez Under 1.5 Hits + Runs + RBIs ProphetX +159 41.10% 42.60% +3.99 45.8 strong loss -1.000
Jul 25, 6:00 AM ET Los Angeles Angels @ San Francisco Giants Oswald Peraza Under 0.5 RBIs ProphetX -230 75.14% 73.98% +4.28 100.0 strong win +0.435
Jul 25, 6:00 AM ET Los Angeles Angels @ San Francisco Giants Oswald Peraza Under 0.5 Home Runs ProphetX -653 91.72% 90.24% +3.52 91.8 strong win +0.153
Jul 25, 6:00 AM ET Los Angeles Angels @ San Francisco Giants Oswald Peraza Under 0.5 Hits ProphetX +147 42.49% 42.17% +1.68 20.6 lean win +1.470
Jul 25, 6:00 AM ET Los Angeles Angels @ San Francisco Giants Oswald Peraza Under 1.5 Hits + Runs + RBIs ProphetX -124 58.10% 58.36% +3.00 50.4 strong win +0.806
Jul 25, 6:00 AM ET Arizona Diamondbacks @ Washington Nationals Nolan Arenado Under 0.5 RBIs ProphetX -186 67.46% 70.06% +5.03 24.9 lean win +0.538
Jul 25, 6:00 AM ET Arizona Diamondbacks @ Washington Nationals Nolan Arenado Under 0.5 Home Runs ProphetX -531 88.94% 88.62% +4.47 88.0 strong win +0.188
Jul 25, 6:00 AM ET Arizona Diamondbacks @ Washington Nationals Nolan Arenado Under 1.5 Hits + Runs + RBIs ProphetX -100 51.17% 54.94% +4.94 21.6 lean win +1.000
Jul 25, 6:00 AM ET Chicago Cubs @ Pittsburgh Pirates Nico Hoerner Over 0.5 Hits Novig -182 65.72% 68.01% +3.47 12.1 lean win +0.549
Jul 25, 6:00 AM ET Cleveland Guardians @ Tampa Bay Rays Nick Martinez Over 17.5 Outs Novig +104 51.55% 50.73% +1.71 46.5 strong win +1.040
Jul 25, 6:00 AM ET Kansas City Royals @ Detroit Tigers Nick Loftin Under 0.5 RBIs ProphetX -301 76.80% 78.20% +3.14 17.8 lean loss -1.000
Jul 25, 6:00 AM ET Kansas City Royals @ Detroit Tigers Nick Loftin Under 1.5 Hits + Runs + RBIs ProphetX -122 59.38% 60.14% +5.19 81.3 strong loss -1.000
Jul 25, 6:00 AM ET Chicago Cubs @ Pittsburgh Pirates Nick Gonzales Under 1.5 Hits + Runs + RBIs ProphetX +123 48.67% 49.61% +4.77 39.3 solid win +1.230
Jul 25, 6:00 AM ET Chicago Cubs @ Pittsburgh Pirates Nick Gonzales Under 0.5 Doubles BetMGM -450 83.12% 84.26% +2.44 8.0 lean win +0.222
Jul 25, 6:00 AM ET Toronto Blue Jays @ Boston Red Sox Nathan Lukes Under 0.5 RBIs ProphetX -265 76.53% 77.65% +5.05 40.4 solid win +0.377
Jul 25, 6:00 AM ET Arizona Diamondbacks @ Washington Nationals Nasim Nunez Over 0.5 Total Bases ProphetX -107 54.08% 56.36% +4.67 43.8 solid loss -1.000
Jul 25, 6:00 AM ET Arizona Diamondbacks @ Washington Nationals Nasim Nunez Under 0.5 RBIs ProphetX -306 77.19% 76.47% +1.10 18.8 lean win +0.327
Jul 25, 6:00 AM ET Arizona Diamondbacks @ Washington Nationals Nasim Nunez Under 0.5 Hits ProphetX +127 46.38% 43.71% -0.34 23.9 lean win +1.270
Jul 25, 6:00 AM ET Arizona Diamondbacks @ Washington Nationals Mitch Bratt Over 3.5 Strikeouts BetMGM -105 54.51% 49.32% -1.90 60.5 strong loss -1.000
Jul 25, 6:00 AM ET Los Angeles Angels @ San Francisco Giants Mike Trout Under 0.5 RBIs ProphetX -176 68.32% 67.92% +4.15 83.6 strong win +0.568
Jul 25, 6:00 AM ET Los Angeles Angels @ San Francisco Giants Mike Trout Under 0.5 Home Runs ProphetX -403 83.35% 84.03% +3.91 59.4 strong win +0.248
Jul 25, 6:00 AM ET Los Angeles Angels @ San Francisco Giants Mike Trout Under 0.5 Hits BetParx +180 37.41% 38.14% +2.43 31.2 solid loss -1.000
Jul 25, 6:00 AM ET Los Angeles Angels @ San Francisco Giants Mike Trout Under 1.5 Hits + Runs + RBIs ProphetX +123 49.48% 50.00% +5.16 85.3 strong loss -1.000
Jul 25, 6:00 AM ET Kansas City Royals @ Detroit Tigers Michael Wacha Over 5.5 Strikeouts ProphetX +151 41.29% 41.22% +1.38 14.9 lean loss -1.000
Jul 25, 6:00 AM ET Kansas City Royals @ Detroit Tigers Michael Massey Under 0.5 RBIs ProphetX -204 72.60% 74.68% +7.57 100.0 strong loss -1.000
Jul 25, 6:00 AM ET Kansas City Royals @ Detroit Tigers Michael Massey Under 0.5 Home Runs ProphetX -444 89.31% 90.34% +8.72 97.0 strong win +0.225
Jul 25, 6:00 AM ET Kansas City Royals @ Detroit Tigers Michael Massey Under 1.5 Hits + Runs + RBIs ProphetX -107 56.33% 59.66% +7.97 85.2 strong win +0.935
Jul 25, 6:00 AM ET Chicago Cubs @ Pittsburgh Pirates Michael Busch Under 0.5 Hits ProphetX +161 39.92% 37.63% -0.68 29.5 lean loss -1.000
Jul 25, 6:00 AM ET Toronto Blue Jays @ Boston Red Sox Masataka Yoshida Under 1.5 Total Bases ProphetX -149 63.30% 64.75% +4.91 63.7 strong win +0.671
Jul 25, 6:00 AM ET Toronto Blue Jays @ Boston Red Sox Masataka Yoshida Under 0.5 Home Runs ProphetX -908 94.77% 94.32% +4.24 86.3 strong win +0.110
Jul 25, 6:00 AM ET Toronto Blue Jays @ Boston Red Sox Masataka Yoshida Under 1.5 Hits + Runs + RBIs ProphetX +107 53.49% 55.50% +7.19 95.3 strong win +1.070
Jul 25, 6:00 AM ET Toronto Blue Jays @ Boston Red Sox Masataka Yoshida Under 0.5 Doubles BetMGM -500 84.87% 84.65% +1.32 9.4 lean win +0.200
Jul 25, 6:00 AM ET Chicago Cubs @ Pittsburgh Pirates Marcell Ozuna Over 0.5 Hits ProphetX -113 56.91% 57.02% +3.97 70.8 strong loss -1.000
Jul 25, 6:00 AM ET San Diego Padres @ Miami Marlins Manny Machado Under 1.5 Total Bases ProphetX -133 62.18% 62.18% +5.10 93.7 strong loss -1.000
Jul 25, 6:00 AM ET San Diego Padres @ Miami Marlins Manny Machado Under 0.5 RBIs ProphetX -180 67.10% 67.93% +3.64 51.7 strong win +0.556
Jul 25, 6:00 AM ET San Diego Padres @ Miami Marlins Manny Machado Under 0.5 Home Runs ProphetX -454 85.68% 85.63% +3.68 68.6 strong win +0.220
Jul 25, 6:00 AM ET San Diego Padres @ Miami Marlins Manny Machado Under 1.5 Hits + Runs + RBIs ProphetX +103 54.95% 54.35% +5.09 100.0 strong loss -1.000
Jul 25, 6:00 AM ET San Diego Padres @ Miami Marlins Luis Campusano Under 0.5 Total Bases ProphetX +131 46.63% 43.70% +0.41 61.4 strong clv only -
Jul 25, 6:00 AM ET San Diego Padres @ Miami Marlins Luis Campusano Under 0.5 Singles BetMGM -160 63.86% 57.95% -3.59 42.7 solid clv only -
Jul 25, 6:00 AM ET San Diego Padres @ Miami Marlins Luis Campusano Under 0.5 RBIs ProphetX -291 76.53% 74.33% -0.09 21.7 lean clv only -
Jul 25, 6:00 AM ET San Diego Padres @ Miami Marlins Luis Campusano Under 0.5 Home Runs ProphetX -633 91.54% 91.14% +4.78 95.3 strong clv only -
Jul 25, 6:00 AM ET San Diego Padres @ Miami Marlins Luis Campusano Under 0.5 Hits ProphetX +123 47.76% 42.94% -1.90 30.0 solid clv only -
Jul 25, 6:00 AM ET San Diego Padres @ Miami Marlins Luis Campusano Under 0.5 Hits + Runs + RBIs ProphetX +149 42.81% 42.07% +1.91 48.6 strong clv only -
Jul 25, 6:00 AM ET Los Angeles Angels @ San Francisco Giants Luis Arraez Under 0.5 RBIs ProphetX -250 73.23% 72.86% +1.43 18.5 lean loss -1.000
Jul 25, 6:00 AM ET Los Angeles Angels @ San Francisco Giants Luis Arraez Over 1.5 Hits + Runs + RBIs FanDuel -145 60.41% 60.05% +0.87 12.6 lean win +0.690
Jul 25, 6:00 AM ET Los Angeles Angels @ San Francisco Giants Luis Arraez Under 0.5 Doubles BetMGM -350 79.92% 79.77% +1.99 39.4 solid win +0.286
Jul 25, 6:00 AM ET Los Angeles Angels @ San Francisco Giants Logan O'Hoppe Under 0.5 RBIs ProphetX -214 73.20% 73.30% +5.15 92.7 strong win +0.467
Jul 25, 6:00 AM ET Los Angeles Angels @ San Francisco Giants Logan O'Hoppe Under 0.5 Home Runs ProphetX -561 88.96% 90.25% +5.38 75.2 strong win +0.178
Jul 25, 6:00 AM ET Los Angeles Angels @ San Francisco Giants Logan O'Hoppe Under 0.5 Hits ProphetX +145 43.44% 43.03% +2.21 48.2 strong loss -1.000
Jul 25, 6:00 AM ET Los Angeles Angels @ San Francisco Giants Logan O'Hoppe Under 1.5 Hits + Runs + RBIs ProphetX -124 58.01% 58.27% +2.91 48.7 strong loss -1.000
Jul 25, 6:00 AM ET San Diego Padres @ Miami Marlins Liam Hicks Over 0.5 Total Bases ProphetX -133 59.73% 62.91% +5.83 48.6 strong loss -1.000
Jul 25, 6:00 AM ET San Diego Padres @ Miami Marlins Liam Hicks Under 0.5 RBIs ProphetX -224 73.19% 71.47% +2.33 74.5 strong win +0.446
Jul 25, 6:00 AM ET San Diego Padres @ Miami Marlins Leo Jimenez Under 0.5 RBIs ProphetX -224 74.81% 73.74% +4.60 100.0 strong clv only -
Jul 25, 6:00 AM ET San Diego Padres @ Miami Marlins Leo Jimenez Under 0.5 Home Runs ProphetX -806 94.13% 91.91% +2.95 95.0 strong clv only -
Jul 25, 6:00 AM ET San Diego Padres @ Miami Marlins Leo Jimenez Under 0.5 Doubles BetMGM -625 87.28% 86.60% +0.39 6.6 lean clv only -
Jul 25, 6:00 AM ET Kansas City Royals @ Detroit Tigers Lane Thomas Under 1.5 Total Bases ProphetX -147 62.14% 63.43% +3.92 48.2 strong win +0.680
Jul 25, 6:00 AM ET Kansas City Royals @ Detroit Tigers Lane Thomas Under 0.5 RBIs ProphetX -204 73.15% 74.91% +7.80 100.0 strong win +0.490
Jul 25, 6:00 AM ET Kansas City Royals @ Detroit Tigers Lane Thomas Under 0.5 Home Runs ProphetX -561 89.84% 89.08% +4.21 91.4 strong win +0.178
Jul 25, 6:00 AM ET Kansas City Royals @ Detroit Tigers Lane Thomas Under 1.5 Hits + Runs + RBIs ProphetX +101 54.56% 55.54% +5.79 88.3 strong win +1.010
Jul 25, 6:00 AM ET San Diego Padres @ Miami Marlins Kyle Stowers Under 0.5 RBIs ProphetX -178 66.75% 66.61% +2.58 49.9 strong loss -1.000
Jul 25, 6:00 AM ET San Diego Padres @ Miami Marlins Kyle Stowers Under 0.5 Home Runs ProphetX -454 86.79% 82.99% +1.04 88.9 strong win +0.220
Jul 25, 6:00 AM ET San Diego Padres @ Miami Marlins Kyle Stowers Under 0.5 Hits ProphetX +190 37.34% 34.14% -0.34 52.4 strong loss -1.000
Jul 25, 6:00 AM ET New York Yankees @ Philadelphia Phillies Kyle Schwarber Under 1.5 Total Bases ProphetX -117 57.89% 55.11% +1.19 73.1 strong loss -1.000
Jul 25, 6:00 AM ET New York Yankees @ Philadelphia Phillies Kyle Schwarber Under 0.5 RBIs ProphetX -153 62.14% 59.34% -1.13 17.1 lean win +0.654
Jul 25, 6:00 AM ET New York Yankees @ Philadelphia Phillies Kyle Schwarber Under 0.5 Home Runs ProphetX -250 74.98% 71.97% +0.54 65.2 strong win +0.400
Jul 25, 6:00 AM ET Cleveland Guardians @ Tampa Bay Rays Kyle Manzardo Under 0.5 Total Bases ProphetX +131 46.51% 50.00% +6.71 59.1 strong win +1.310
Jul 25, 6:00 AM ET Cleveland Guardians @ Tampa Bay Rays Kyle Manzardo Under 0.5 RBIs ProphetX -265 74.81% 76.24% +3.64 22.7 lean win +0.377
Jul 25, 6:00 AM ET Cleveland Guardians @ Tampa Bay Rays Kyle Manzardo Under 0.5 Home Runs ProphetX -485 86.87% 89.40% +6.49 40.8 solid win +0.206
Jul 25, 6:00 AM ET Cleveland Guardians @ Tampa Bay Rays Kyle Manzardo Under 0.5 Hits + Runs + RBIs ProphetX +147 43.07% 45.69% +5.20 47.4 strong win +1.470
Jul 25, 6:00 AM ET Cleveland Guardians @ Tampa Bay Rays Kyle Manzardo Under 0.5 Doubles BetMGM -625 87.63% 87.61% +1.40 14.7 lean win +0.160
Jul 25, 6:00 AM ET Kansas City Royals @ Detroit Tigers Kevin McGonigle Under 0.5 RBIs ProphetX -204 70.60% 69.96% +2.85 64.2 strong win +0.490
Jul 25, 6:00 AM ET Kansas City Royals @ Detroit Tigers Kevin McGonigle Under 0.5 Home Runs ProphetX -561 89.35% 89.11% +4.24 46.0 solid win +0.178
Jul 25, 6:00 AM ET Kansas City Royals @ Detroit Tigers Kevin McGonigle Under 0.5 Doubles BetMGM -375 81.61% 81.78% +2.83 49.0 strong win +0.267
Jul 25, 6:00 AM ET Arizona Diamondbacks @ Washington Nationals Ketel Marte Under 1.5 Total Bases ProphetX +106 50.78% 53.62% +5.08 23.0 lean win +1.060
Jul 25, 6:00 AM ET Arizona Diamondbacks @ Washington Nationals Ketel Marte Under 0.5 RBIs ProphetX -145 62.25% 59.00% -0.18 56.4 strong win +0.690
Jul 25, 6:00 AM ET Arizona Diamondbacks @ Washington Nationals Ketel Marte Under 0.5 Home Runs ProphetX -301 80.61% 79.28% +4.22 100.0 strong win +0.332
Jul 25, 6:00 AM ET Arizona Diamondbacks @ Washington Nationals Ketel Marte Under 1.5 Hits ProphetX -182 67.46% 70.00% +5.46 30.0 solid win +0.549
Jul 25, 6:00 AM ET Kansas City Royals @ Detroit Tigers Kerry Carpenter Under 1.5 Total Bases ProphetX -133 61.25% 61.91% +4.83 76.6 strong win +0.752
Jul 25, 6:00 AM ET Kansas City Royals @ Detroit Tigers Kerry Carpenter Under 0.5 RBIs ProphetX -186 66.61% 64.08% -0.95 16.2 lean win +0.538
Jul 25, 6:00 AM ET Kansas City Royals @ Detroit Tigers Kerry Carpenter Under 0.5 Home Runs ProphetX -408 85.19% 85.29% +4.98 89.6 strong win +0.245
Jul 25, 6:00 AM ET Kansas City Royals @ Detroit Tigers Kerry Carpenter Over 1.5 Hits + Runs + RBIs ProphetX +133 46.51% 48.32% +5.40 66.0 strong loss -1.000
Jul 25, 6:00 AM ET Toronto Blue Jays @ Boston Red Sox Kazuma Okamoto Over 0.5 Total Bases ProphetX -137 60.40% 60.40% +2.59 47.6 strong win +0.730
Jul 25, 6:00 AM ET Toronto Blue Jays @ Boston Red Sox Kazuma Okamoto Under 0.5 RBIs ProphetX -190 68.53% 70.01% +4.49 31.0 solid win +0.526
Jul 25, 6:00 AM ET Toronto Blue Jays @ Boston Red Sox Kazuma Okamoto Under 0.5 Home Runs ProphetX -423 85.38% 85.73% +4.85 82.7 strong win +0.236
Jul 25, 6:00 AM ET Toronto Blue Jays @ Boston Red Sox Kazuma Okamoto Under 1.5 Hits + Runs + RBIs ProphetX -119 55.40% 55.98% +1.64 10.9 lean loss -1.000
Jul 25, 6:00 AM ET Cleveland Guardians @ Tampa Bay Rays Junior Caminero Under 1.5 Total Bases ProphetX -105 54.55% 56.65% +5.43 61.1 strong loss -1.000
Jul 25, 6:00 AM ET Cleveland Guardians @ Tampa Bay Rays Junior Caminero Under 0.5 RBIs ProphetX -117 60.30% 63.68% +9.76 100.0 strong loss -1.000
Jul 25, 6:00 AM ET Cleveland Guardians @ Tampa Bay Rays Junior Caminero Under 0.5 Home Runs ProphetX -250 76.11% 80.07% +8.64 86.0 strong win +0.400
Jul 25, 6:00 AM ET Cleveland Guardians @ Tampa Bay Rays Junior Caminero Under 1.5 Hits + Runs + RBIs ProphetX +124 46.63% 48.88% +4.24 20.5 lean loss -1.000
Jul 25, 6:00 AM ET Los Angeles Angels @ San Francisco Giants Jung Hoo Lee Under 0.5 RBIs ProphetX -204 70.48% 70.25% +3.14 62.0 strong loss -1.000
Jul 25, 6:00 AM ET Los Angeles Angels @ San Francisco Giants Jung Hoo Lee Under 0.5 Doubles BetMGM -400 82.75% 83.00% +3.00 50.6 strong loss -1.000
Jul 25, 6:00 AM ET Kansas City Royals @ Detroit Tigers Josh Rojas Under 0.5 RBIs ProphetX -276 76.17% 76.17% +2.77 50.9 strong clv only -
Jul 25, 6:00 AM ET Kansas City Royals @ Detroit Tigers Josh Rojas Under 0.5 Hits ProphetX +131 45.27% 44.55% +1.26 36.4 solid clv only -
Jul 25, 6:00 AM ET Kansas City Royals @ Detroit Tigers Josh Rojas Under 0.5 Hits + Runs + RBIs ProphetX +167 39.13% 39.13% +1.68 30.8 solid clv only -
First Previous Page 100 of 103 Next Last

What Would Make This A v2

Only a structural change: a new league, a new data source, or a change in an exchange's fee model. Performance can never trigger a new version. A bad stretch does not get to become a retune, and the v1.0 record stays published permanently either way. The record accrues toward 90 days from the seal and at least 5000 graded plays in the flagged tiers, whichever comes later, across every player prop league active in that window.

The daily +EV pick ledger is a different page and a different thing: TOG Daily Record is the single featured pick each day, this page is every play the signal scored. The math behind the score is at /methodology.