Last updated: 2026-10-21. Changes are logged at the bottom of this page.

Tout Index grades free, public picks posted by sports betting and DFS accounts. We grade what was posted, when it was posted, against what happened. We don't grade people, motives, or honesty. A grade describes a record over a stated sample and nothing more.

1. Scope

  • Who: public X accounts that regularly post betting or DFS picks and either have 5,000+ followers or sell picks or subscriptions. We don't grade private individuals with small followings.

  • What: free public posts only. We don't quote, republish, or grade paywalled content.

  • Sports: any sport with an official public result (NFL, NBA, MLB, NHL, soccer, college, golf, MMA, and more). Each sport is graded separately, with an all-sports roll-up.

  • Selection rule: for every tracked account, we capture all gradable picks posted in the capture window: from 72 hours before event start until the event starts. If we sample instead (for example "one slate thread per week"), the grade says so and applies only to the sample. We don't cherry-pick.

2. How picks are captured

Each pick record includes:

  • The post URL.

  • The post timestamp (from X) and our capture timestamp, both in UTC.

  • A screenshot.

  • An archive snapshot (archive.org or archive.today) taken at capture.

  • The pick exactly as stated (market, side, line, odds, units, slate).

  • The event start or slate lock time.

A pick counts only if it was posted before the event or slate locked. Anything posted after lock is excluded, even if it's correct.

Tracking since. Every account shows a "Tracking since" date. It's the start of the first capture window we reviewed for that account. Every gradable free pick the account posted from that date on is in our log, unless the record states a sample, such as "NFL only." If an account has no reviewed window yet, the date is its earliest logged pick or the day it joined our roster, whichever is earlier. Records in Issue #1 were collected retroactively from X post timestamps back to each account's Tracking-since date. From Issue #2 on, picks are logged as they're posted.

3. What counts as a pick

Graded:

  • Betting: a specific market, side, and line or threshold. Examples: "BUF −3.5", "Over 47.5", "Nabers o58.5 rec yds", "PHI ML +120". A parlay is graded as one bet at the parlay price, in its own Parlays bucket (§4A).

  • DFS: a named player recommended ("play", "core", "lock button", "value") or faded ("fade", "avoid") for a specific slate and site. A named stack is graded both as its individual players and as a stack total.

Not graded:

  • Vague takes ("I like the Bills this week").

  • Posts that hedge both sides.

  • Retweets or quotes without endorsement.

  • Jokes or sarcasm that are clearly labeled.

  • Season-long or fantasy-redraft content.

  • Content the author explicitly labels "bold predictions". These are low-probability by design, so they go in a separate, unranked bucket.

  • Team-level DvP charts that name no players. These are informational and aren't graded unless the author names specific plays.

When a post is ambiguous, we don't grade it. We never resolve ambiguity in a way that hurts the author.

4. Betting picks: units, ROI, CLV

  • Buckets: straights and parlays are graded separately (§4A). The rules in this section apply to both unless §4A says otherwise.

  • Stake: flat 1 unit per pick is the primary measure. If the author states units, we also report a stated-units record as a secondary measure.

  • Price:

    1. The posted odds.

    2. If no odds were posted, the closing odds: the consensus close at regulated US sportsbooks for the exact market. The closing price used is cited with each graded pick.

    3. If neither is available, −110 for spreads and totals, flagged "assumed price". Picks without posted odds or a closing price are dropped if no reasonable price exists, such as obscure props.

  • Results: win, loss, push, or void, using the official result. Profit at the graded price.

  • ROI = net units ÷ units risked. Pushes and voids are returned, shown in the record, and excluded from both W-L% and the ROI denominator.

  • Break-even reference: at −110, break-even is 52.38%. A coin-flip bettor at −110 expects about −4.5% ROI, and we print that reference next to every record.

  • Closing line value (CLV): only when both the graded price and the closing price exist. We use the vig-free implied probability at close minus the vig-free implied probability at the graded price. We report the median CLV and the % of picks that beat the close. CLV is shown separately and also used as a grade modifier (§6).

4A. Two buckets: Straights and Parlays (added in v0.2)

Every account gets two separately graded records. We never blend them into one grade. A combined line may be shown for reference, but it isn't graded.

Why split them: a parlay that pays 10-to-1 swings an account's units far more than a −110 side does. One long-shot hit can make a weak record look great, and a run of near-misses can bury a good one. Grading each bucket on its own terms keeps the two from hiding each other.

How each pick is classified

  • Straight: one wager that settles on one outcome. This covers:

    • spreads, totals and moneylines

    • player and team props, including alt lines ("70+ yards", "1+ reception")

    • first-TD and anytime-TD bets

    • futures and Asian lines

    • a single prediction-market contract (Kalshi, Polymarket, NoVig and similar), graded at the posted price or contract cost

  • Parlay: any wager that needs two or more outcomes to win together. This covers:

    • standard parlays, same-game parlays (SGP, SGP+) and "boosted" parlays

    • teasers, if-bets and reverses

    • round robins

    • pick'em entries with 2+ picks (PrizePicks, Underdog, Sleeper and similar)

    • multi-market prediction-market "combos"

  • A parlay is graded as one bet at the full ticket price. Its legs aren't graded one by one, and a leg that hit earns no partial credit.

  • The same player or game can show up in both buckets. For example, an author can post a straight and a parlay that includes it. Each pick is graded in its own bucket.

  • Pricing parlays: we use the posted ticket price or multiplier. If none was posted but every leg's price was, we compute the price from the legs. We never assume a parlay price, so a parlay with no recoverable price isn't graded.

  • Boosts: we grade the posted (boosted) price and label it "boosted" in the log, with the unboosted price shown when it's visible.

  • Voided legs (injury, "early exit" and similar): we grade at the price the book actually settled. If that isn't visible, we use the price recomputed from the remaining legs.

  • Round robins count as one entry that risks 1 unit, split evenly across its combinations.

  • Pick'em "flex" or insured entries are graded at the payout table shown on the slip. If no table is visible, they aren't graded.

  • Sports: straights are graded per sport, with an all-sports roll-up. Parlays are graded all-sports only, because many tickets mix sports.

The Total line (added in v0.3). Under the two buckets, every account also shows a Total: every graded pick combined at a flat 1 unit, with W-L, units, ROI and n. Expected wins are shown too, for context. Straights and Parlays stay the primary grades. The Total is a record only and never gets a letter grade, whatever the parlay share. A combined grade would be dominated by the parlays: a few long-shot tickets move units far more than dozens of straights. It would also blend two scales with different no-edge baselines (about −4.5% for −110 straights, about −9% to −21% or worse for 2–5 leg parlays). Grading the Total only "when parlays are a small share" would put an arbitrary cliff in the rules, where one extra ticket flips an account between graded and ungraded. So the Total is there to answer "what if I'd tailed everything?" and the bucket grades say how good each kind of pick is.

How parlays are measured

  1. Flat-unit ROI at the graded price. This is the primary measure, because it's what someone tailing every ticket would actually have earned.

  2. Expected wins vs actual wins. Expected wins are the hits the prices imply, the sum of 1 ÷ decimal price across the tickets. Because book prices include the vig, this is also the break-even win count: hit exactly that many at those prices and you net about 0 units. We print both counts, for example "2 actual vs 2.1 expected", plus the ratio of actual to expected.

  3. No-edge reference. Vig compounds with every leg. With fair coin-flip legs priced at −110, a no-edge bettor's expected ROI is about −9% on 2 legs, −13% on 3, −17% on 4 and −21% on 5. Same-game parlays are often priced worse than that, because books adjust for correlation. We print the reference for the account's typical leg count next to its record.

  4. One-ticket flag. If one winning ticket accounts for more than the bucket's entire net profit, the record is labeled (one-ticket record).

We show expected wins for straights too, so long-shot singles like first-TD bets get the same context.

5. DFS picks: scored against salary

DFS calls aren't bets, so we grade them on value over salary (VOS) against a public baseline:

  1. Actuals: DK (or FD) fantasy points computed from official public stats (NFL: nflverse, CC BY 4.0), using the site's published scoring. Stats are re-checked 7 days later for corrections.

  2. Salary-implied expectation: on each slate, we fit each position's actual points against salary across every player who played. The fitted value at a player's salary is that player's expected points.

  3. VOS = actual points minus salary-implied points.

  4. Hit rule: a "play" call hits if VOS > 0. A "fade" call hits if VOS < 0.

  5. Base rate: we also report the share of all same-position players in the same salary band (±$500) who cleared their expectation. The lift is the author's hit rate minus that base rate. We report it because a list of heavy favorites can "hit" often without telling anyone much. For example, TD-scorer calls on 64–84% favorites should be compared with those probabilities.

  6. Inactives:

    • If the player was ruled out after the post and the author didn't update before lock, the call is void.

    • If the player was already ruled out at post time, it's graded as a miss at 0 points.

  7. Ownership calls ("X will be chalk", "<5% owned") are graded only when actual contest ownership is publicly available. Otherwise they're excluded.

  8. We don't grade anyone against paid third-party projections (SaberSim, RotoWire, etc.). Baselines come from public data only.

6. Minimum samples and letter grades

Track

Shown as "Not enough"

Listed as "Provisional"

Eligible for a letter grade

Betting: Straights (per sport or all sports)

under 50 graded picks

50 graded picks

100 graded picks across 4+ weeks

Betting: Parlays (all sports)

under 50 tickets, or under 8 expected wins

50 tickets and 8+ expected wins

150 tickets across 6+ weeks and 25+ expected wins

DFS

under 30 calls

30 graded calls across 3+ slates

75 graded calls across 5+ slates

The Total line (all picks combined) has no minimum and no letter grade (§4A). Each bucket is judged on its own. An account can be "Provisional" in Straights and "Not enough" in Parlays. Below the provisional floor, a bucket appears only in the tracking list, with raw counts, the label "Not enough (n/50)" and no rank.

Why the parlay floors are higher. Results are noisier the longer the price. At −110, one bet's result varies by about ±1 unit around its expectation. A +900 ticket varies by about ±3 units, and a +2000 ticket by about ±4.5. As a result, 100 parlays at +900 tell you roughly as much as 10 straights. The expected-wins floor scales the requirement to the prices: an account that only bets +2000 tickets needs about 525 of them to reach 25 expected wins, while one betting +300 tickets needs about 100. A record built on 1 or 2 hits isn't a record yet.

Straights grade (flat-unit ROI):

Grade

ROI

A

≥ +5.0%

B

+1.0% to +4.9%

C

−4.0% to +0.9% (roughly break-even after vig)

D

−10.0% to −4.1%

F

< −10.0%

Parlays grade (flat-unit ROI, with bands widened for parlay vig and variance):

Grade

ROI

What it means

A

≥ +10.0%

Beat the prices by a clear margin

B

0.0% to +9.9%

Profitable after the compounded vig

C

−20.0% to −0.1%

The no-edge zone for typical 3–5 leg tickets

D

−40.0% to −20.1%

Worse than a no-edge parlay bettor

F

< −40.0%

Far worse than the prices implied

Every parlay grade is printed with expected vs actual wins.

  • CLV modifier (straights only): add "+" if at least 55% of priced picks beat the close and median CLV is positive. Add "−" if at most 45% beat the close. Parlays get no CLV modifier, because closing prices for multi-leg tickets aren't reliably available.

  • Confidence: we show a 95% interval for ROI. For parlays it's ROI ± 1.96 × √(Σ(decimal price − 1)) ÷ n, the spread you'd expect at break-even. If the interval spans more than two grade bands, the grade carries the label (low confidence). Expect most parlay grades to carry that label for a long time.

DFS grade (mean VOS per call and lift over base rate):

Grade

Mean VOS per call

Lift over base rate

A

≥ +3.0 pts

≥ +10 pp

B

≥ +1.0 pts

≥ +4 pp

C

−1.0 to +0.9 pts

(any)

D

≤ −1.0 pts

—

F

≤ −3.0 pts

≤ −10 pp

These thresholds are v0.3. Any change is versioned, and past grades are recomputed and shown under the new rules.

7. Deletions, edits, pushes, corrections

  • Deleted posts: a pick we archived before deletion still counts, marked "deleted after posting" with the archive link. If we didn't archive it before it was deleted, we exclude it and don't mention it.

  • Edited posts: we grade the version that existed at lock, using X edit history.

  • Pushes and voids: see §4. They're always shown and never counted as wins or losses.

  • Stat corrections: grades use official stats as of 7 days after the event. Any later official corrections are applied and logged.

  • Our errors: corrections appear in the next issue and in the public log below, with the date, the original grade, the new grade, and the reason.

  • Right of reply: any graded account can contact Tout Index by replying to any issue or messaging @ToutIndex on X. We respond within 7 days. If we were wrong, we correct it. If the author disagrees on a judgment call (for example "that was a joke"), we publish their note next to the grade.

8. Language and fairness rules (editorial)

  • We state records as facts with links: "6 of 12 graded calls hit (50%)". We don't use words like "fraud", "scam", or "liar", or make claims about intent.

  • Opinions are labeled as opinions and kept separate from grades.

  • We don't promise or imply future results. We don't use "lock", "guaranteed", "risk-free", or "can't-miss" in our own voice.

  • Conflicts: we disclose any sponsorship, affiliate, or personal relationship with a graded account, and sponsors can't change grades. The editor's own picks, if any are published, are graded under these same rules in the same table.

9. Data sources and licenses

  • NFL stats: nflverse (CC BY 4.0). Charting data: FTN Data via nflverse (CC BY-SA 4.0). Every derived figure credits them.

  • Odds and closing lines: the posted odds, or the closing price cited with each pick.

  • Other sports: official league results.

  • DFS salaries: as published by the DFS site for that slate.

Change log

  • v0.3 (2026-10-21): adds the ungraded Total line (all picks combined, 1u flat) under each account's Straights and Parlays records (§4A), and defines "Tracking since" (§2).

  • v0.2 (2026-10-21): every account gets two separately graded buckets, Straights and Parlays (§4A). Adds classification rules, expected-vs-actual wins for parlays, a parlay grade scale, and higher parlay minimum samples (§6). No combined grade.

  • v0.1 (2026-10-21): first draft.

21+ only. Gambling problem? Call 1-800-GAMBLER. Tout Index is informational and is not betting advice. Past results don't predict future results.