Skip to main content

Learn / Pikkit vs NuroPicks AI Picks SHAP

Pikkit tracks bets. NuroPicks generates them and shows the math.

What Pikkit actually ships, why it does not produce AI picks, and how NuroPicks closes the explainability gap with per-pick SHAP attributions at $29.99 Pro.

Plain-English answer

Pikkit is a sportsbook-sync tracker plus social layer. The app connects 30+ books (DraftKings, FanDuel, BetMGM, Caesars, ESPN BET, Fanatics, Hard Rock, BetRivers, Pinnacle, etc.), reads your placed bets, computes closing-line value and ROI per book, and surfaces a copy-betting feed where users tail other Pikkit accounts. Pikkit does NOT generate AI picks. There is no model output, no pick recommendation surface, no per-bet feature attribution. The product positioning is tracker plus community plus arbitrage scanner. NuroPicks publishes the same surface differently. NuroPicks generates picks via an XGBoost model, then ships every pick with a SHAP top-features payload (picks.shap_top JSONB) that breaks the model's edge into ranked signed contributions: rest advantage +280bp, injury +140bp against, line movement +120bp for. The values render inside Discord embeds, on the per-pick permalink at /record/[id], and in the explanation chip rows on /record. The schema is canonical (one explainer module, one TS twin), and the picks row is immutable past insertion via a Postgres trigger added in migration 0017. Closing-line value is captured automatically by a 2-minute tick that compares posted odds to the book's closing number when the game starts. The contrast is Pikkit tracks bets you choose, NuroPicks generates the bet AND shows the receipt. Pro tier matches at $29.99 per month. NuroPicks adds a Free tier (1 pick per night) and an Elite tier at $79.99 with line-move trackers and capper rev-share.

What a SHAP block looks like in a real NuroPicks embed

A NuroPicks pick embed includes a single SHAP line at the bottom of the why-edge block. The string is generated by one canonical module (src/bot/services/pick-shap-explainer.js) and reads like this on a real Lakers minus 3.5 example: plus 280 basis points rest advantage, minus 140 basis points injury report, plus 120 basis points line movement. The same values render in the chip rows on /record and on the per-pick permalink at /record/[id]. The TypeScript twin at web/src/lib/pick-shap-explainer.ts is parity-tested against the bot module so the web page and the Discord embed cannot drift. The data comes from the picks.shap_top JSONB column populated at insertion time. Migration 0017 ships the picks_immutable_guard trigger that rejects UPDATE and DELETE on the picks table, so the SHAP payload you read tonight is the exact one the bot wrote when the pick posted.

Pikkit's surface is the placed-bet history: which book, which game, what odds, computed CLV after the fact. There is no model output to attribute. The user picks the bet, Pikkit measures whether it beat the close. NuroPicks ships the model output and the receipt the model produced.

Pikkit vs SHAP, line by line

AreaPikkit (tracker)NuroPicks SHAP
AI pick generationNot a feature (tracker only)XGBoost model picks across NBA, NFL, MLB, NHL, UFC, soccer
Per-pick explanationNo model picks to explainSHAP top features in basis points, ranked by contribution
Pick storageUser-placed bets pulled from sportsbook (sync-dependent)Postgres picks table, append-only via picks_immutable_guard trigger
Closing-line valueComputed on user-placed bets after syncAuto-captured by 2-minute tick (closing-line-capture.js) on every pick
Per-pick permalinkBet-level permalinks tied to user account/record/[id] public, with SHAP block, audit trail, OG card
Public model cardNo model exists/learn/shap-betting documents the explainer end-to-end
PricingFree + paid tiers (sync-feature gated)Free + Pro $29.99 + Elite $79.99

Where to read the explainer documentation

Not financial advice. 21+ only. Bet within your bankroll. If gambling stops being fun, call 1-800-GAMBLER.

Must be 21+. Gambling problem? Call 1-800-GAMBLER. NJ/PA: 1-800-GAMBLER · MI: 1-800-270-7117 · VA: 1-888-532-3500 · CO: 1-800-522-4700 · NY: 877-846-7369 (HOPENY).

NuroPicks LLC · 30 N Gould St Ste R, Sheridan, WY 82801