Every gap. Every pick. Losses included.
Each time Kalshi sold a team at least 1.5 points below the sportsbooks' fair price, we logged it with the price at that moment, then graded it after the game. Profit assumes $100 on every one at that price, Kalshi's fee included. Tracking since October 21, 2026.
This is the number professional bettors judge by. If the price you buy at keeps ending up below the price right before the game (the “close”), the market moved your way: you got the better number. It shows real edge much sooner than wins and losses, which take hundreds of bets to settle. Over 50% means we're beating the market.
Leading indicators so far
All signals ↓Ranked by return per $100 among signals with at least 5 graded bets. With samples this small, a leader can change week to week; we show it because we're tracking it, not because it's proven.
“Wins vs prediction”: actual wins, against how many the sportsbooks' fair odds expected and how many Kalshi's price implied. If our gaps are real, actual wins land closer to the fair-odds number than to Kalshi's.
Is the fair price accurate?
Every graded gap, grouped by the chance our fair price gave the team. If the fair price is right, those teams win about that often and the green dots sit on the dashed line. The blue squares are the same teams at Kalshi's price: the further they sit from the line, the more Kalshi had it wrong.
So far our fair price has been closer to what happened than Kalshi's price on these 62 bets. That's the whole edge: when the two disagree, the fair price has been the one to trust.
| Fair price said | Kalshi said | Won | Bets |
|---|---|---|---|
| 18% | 15% | 27% | 11 |
| 35% | 30% | 33% | 6 |
| 45% | 36% | 60% | 5 |
| 57% | 52% | 50% | 4 |
| 63% | 57% | 80% | 10 |
| 91% | 88% | 85% | 26 |
Average miss (Brier score, lower is better): fair price 0.173 · Kalshi 0.176. Bands with fewer than 3 bets are in the table but not the chart.
When gaps show up
The hours (Eastern) when each sport's gaps were at their biggest. Check the board, or keep alerts on, in the green window.
Most open 8 AM–11 AM ET (31% of them).
Most open 8 AM–11 AM ET (27% of them).
Most open 11 AM–2 PM ET (38% of them).
Most open 9 PM–12 AM ET (20% of them).
By gap size
- 1.5–3 pts47 graded · 32–15 · expected 30.8 wins+$1457
- 3–5 pts7 graded · 5–2 · expected 4.1 wins+$284
- 5+ pts8 graded · 3–5 · expected 3.6 wins−$172
By sport
Pick of the Day
Every published pick counts, including days with no real edge. We show what buying the traps would have done too, so you can judge them yourself.
Does following the signals work?
Every whale trade, sharp buy and capper pick from the last 60 days, graded as if you'd bet $100 on the same team at the same price. One bet per team per game. Kalshi fees included. Losses included.
| If you followed… | Bets | Record | $100 a bet | Return | Beat the close |
|---|---|---|---|---|---|
| Every price gap (1.5+ pts) Kalshi cheaper than the sportsbooks' fair price, at the price when we spotted it | 62 | 40–22 | +$1,569 | +25.3% | 55% of 62 |
| Stacked: gap + smart money A price gap on a team that 2+ top traders or a Kalshi whale also backed | 6 | 6–0 | +$298 | +49.7% | 67% of 6 |
| Gap + steam move Pinnacle moved toward the team and Kalshi lagged, at the price when we saw it | 2 | 0–2 | −$200 | −100.0% | 0% of 2 |
| Gap + tired opponent The other team played yesterday (back-to-back), this one didn't | 6 | 5–1 | +$92 | +15.3% | 67% of 6 |
| Gap + crowd on the other side Kalshi bettors pushed the other team up 3¢+ while the sharp line didn't move | 13 | 10–3 | +$954 | +73.4% | 38% of 13 |
| Gap on a Pinnacle line The fair price came from Pinnacle, the sharpest sportsbook | 2 | 1–1 | −$92 | −46.0% | 50% of 2 |
| Gap on another sportsbook's line Pinnacle hadn't posted, so the fair price came from DraftKings or another book | 8 | 7–1 | +$679 | +84.9% | 50% of 8 |
| Gap + reverse line move Most Kalshi money was on the other team, but the sportsbook line moved toward this one | 4 | 3–1 | −$73 | −18.3% | 50% of 4 |
| Gap + sportsbooks agree 5+ sportsbooks within 2 points of each other on the fair price | 6 | 5–1 | −$62 | −10.3% | 50% of 6 |
| Gap + buyers stacked 70%+ of the money waiting near the price on Kalshi's order book was buying this team | 1 | 0–1 | −$100 | −100.0% | 0% of 1 |
| Spot Score 70+ (Strong) Gaps scoring 70 or more when we first saw them, at that price | 12 | 7–5 | +$22 | +1.8% | 58% of 12 |
| Spot Score 50–69 (Good) Gaps scoring 50 to 69 when we first saw them, at that price | 22 | 15–7 | +$92 | +4.2% | 23% of 22 |
| Spot Score under 50 (Lean) Gaps scoring under 50 when we first saw them, at that price | 35 | 26–9 | +$461 | +13.2% | 57% of 35 |
| Kalshi whale trades ($2,500+) Back the team the first big trade backed, at its price | 80 | 48–32 | +$283 | +3.5% | 29% of 80 |
| Big whales ($10K+) Same, only single trades of $10,000 or more | 27 | 14–13 | −$300 | −11.1% | 30% of 27 |
| Sharp buys Back the team a top Polymarket sports trader bought, at their price | 106 | 60–46 | −$49 | −0.5% | 70% of 106 |
| 3+ sharps agree Only when three different top traders bought the same team | 9 | 4–5 | −$150 | −16.7% | 56% of 9 |
| Player props, same line as the book Kalshi's number matches the sportsbook's line, so the fair price is the book's own (2+ pt gaps, price when first seen) | 82 | 35–47 | −$1,161 | −14.2% | — |
| Every capper pick All picks posted on Spot Angle, at the price when posted | 985 | 534–446–5 | +$643 | +0.7% | 42% of 699 |
Beat the close is the best early sign of a real edge: if a signal keeps getting prices cheaper than Kalshi's last price before the game, it's usually early to the right side, and over hundreds of bets that shows up as profit. Above 50% is good; win-loss records take far longer to mean anything.
A signal can be worth checking even when its record is negative: it tells you where the money is, not that the price is good. Our price gaps (above) are the part that measures value.
Latest graded gaps
Every gap is logged automatically when it appears on the board (1.5+ points), even if no alert went out. Alerts only fire for Pro members, at their own minimum gap (3 points by default) and teams.
- California Golden Bears11/04 · vs Radford Highlanders · 92¢ vs fair 94% · +1.8+$8
- Loyola Marymount Lions11/04 · vs Queens University Royals · 74¢ vs fair 78% · +2.6−$100
- Saint Joseph's Hawks11/04 · vs Longwood Lancers · 82¢ vs fair 85% · +2.1+$19
- Club Brugge11/04 · vs PSV Eindhoven · 29¢ vs fair 34% · +4.0+$223
- Butler Bulldogs11/04 · vs Fairleigh Dickinson Knights · 98¢ vs fair 100% · +1.6+$1
- South Carolina Gamecocks11/03 · vs Stetson Hatters · 95¢ vs fair 98% · +2.4+$4
- UNLV Rebels11/03 · vs Northern Arizona Lumberjacks · 96¢ vs fair 98% · +1.7+$3
- North Florida Ospreys11/03 · vs California Baptist Lancers · 15¢ vs fair 18% · +2.2+$525
- California Baptist Lancers11/03 · vs North Florida Ospreys · 79¢ vs fair 82% · +1.8−$100
- Arkansas-Pine Bluff Golden Lions11/03 · vs Arkansas Razorbacks · 1¢ vs fair 7% · +6.3−$100
- Boston College Eagles11/03 · vs Wagner Seahawks · 95¢ vs fair 98% · +2.3+$4
- Rhode Island Rams11/03 · vs Holy Cross Crusaders · 95¢ vs fair 97% · +2.0+$4
- McNeese Cowboys11/02 · vs UAB Blazers · 59¢ vs fair 63% · +1.9+$64
- Radford Highlanders11/02 · vs San Francisco Dons · 11¢ vs fair 17% · +5.1−$100
- San Francisco Dons11/02 · vs Radford Highlanders · 85¢ vs fair 88% · +2.3+$16
- Siena Saints11/02 · vs Bryant Bulldogs · 61¢ vs fair 65% · +1.9−$100
- Atlanta Hawks11/02 · vs Indiana Pacers · 76¢ vs fair 80% · +2.4+$28
- South Florida Bulls11/02 · vs Charleston Southern Buccaneers · 96¢ vs fair 98% · +1.8+$3
- Marquette Golden Eagles11/02 · vs Mercyhurst Lakers · 98¢ vs fair 100% · +1.7+$1
- Long Island University Sharks11/02 · vs Florida Atlantic Owls · 13¢ vs fair 16% · +2.4−$100
- Syracuse Orange11/02 · vs New Haven Chargers · 98¢ vs fair 100% · +1.6+$1
- Oregon Ducks11/02 · vs Montana Grizzlies · 94¢ vs fair 97% · +2.3+$5
- UT Martin Skyhawks11/02 · vs Tulane Green Wave · 23¢ vs fair 26% · +1.7−$100
- App State Mountaineers11/02 · vs Merrimack Warriors · 40¢ vs fair 61% · +19.4−$100
- George Washington Revolutionaries11/02 · vs Navy Midshipmen · 94¢ vs fair 96% · +1.9+$5
- Colorado Buffaloes11/02 · vs Abilene Christian Wildcats · 95¢ vs fair 97% · +2.0+$4
- Arthur Gea11/01 · vs Jan-Lennard Struff · 53¢ vs fair 58% · +3.0−$100
- Mattia Bellucci11/01 · vs Thiago Agustin Tirante · 62¢ vs fair 66% · +1.9+$56
- Miomir Kecmanovic11/01 · vs Juan Manuel Cerundolo · 43¢ vs fair 46% · +1.6−$100
- Rafael Espinoza10/31 · vs Ricardo Blandon · 92¢ vs fair 96% · +3.4+$8
- Thiago Agustin Tirante10/31 · vs Zachary Svajda · 29¢ vs fair 49% · +18.9+$223
- Houston Rockets10/31 · vs Oklahoma City Thunder · 57¢ vs fair 61% · +2.3+$69
- Benjamin Bonzi10/31 · vs Tallon Griekspoor · 34¢ vs fair 37% · +1.7+$178
- Sebastian Baez10/31 · vs Damir Dzumhur · 39¢ vs fair 43% · +2.8+$144
- San Antonio Spurs10/31 · vs Minnesota Timberwolves · 84¢ vs fair 87% · +1.6+$18
- Daniel Altmaier10/31 · vs Alex Molcan · 30¢ vs fair 45% · +13.1−$100
- David Picasso10/31 · vs Carl Jammes Martin · 79¢ vs fair 82% · +1.6−$100
- Edmonton Oilers10/31 · vs New York Islanders · 51¢ vs fair 54% · +1.6+$89
- Jaime Munguia10/31 · vs Nikita Zon · 85¢ vs fair 92% · +5.8+$16
- Memphis Grizzlies10/31 · vs Sacramento Kings · 79¢ vs fair 82% · +1.6+$23
Every Pick of the Day
Each day's pick, at the Kalshi price when we published it, graded after the game. $100 a pick, fee included.
- Feyenoord Rotterdam11/03 · vs Internazionale · 26¢−$100
- Miami Hurricanes11/02 · vs Florida Gators · 32¢−$100
- Luca Van Assche11/01 · vs Mariano Navone · 59¢+$64
- Utah State Aggies10/31 · vs Colorado State Rams · 71¢+$37
- Detroit Pistons10/30 · vs Brooklyn Nets · 73¢+$33
- New Orleans Pelicans10/29 · vs Sacramento Kings · 67¢+$45
- Los Angeles Lakers10/28 · vs LA Clippers · 63¢+$54
- Tampa Bay Rays10/27 · vs Milwaukee Brewers · 44¢+$117
- Minnesota Timberwolves10/26 · vs Cleveland Cavaliers · 39¢−$100
- Venezia10/25 · vs Genoa · 26¢−$100
- Utah Utes10/24 · vs Houston Cougars · 69¢+$41
- Borussia Mönchengladbach10/23 · vs VfB Stuttgart · 13¢+$614
- Kennesaw State Owls10/22 · vs Liberty Flames · 22¢−$100
- Polina Kudermetova10/21 · vs Elena Rybakina · 13¢−$100
- San Jose Sharks10/20 · vs Montreal Canadiens · 34¢+$178
Get these gaps while they're open
Pro alerts you the moment a team drops below fair on any exchange. 7-day free trial.
Gaps are logged automatically by our scanner, not chosen afterward. Past results don't guarantee future ones. Not advice. 21+.