The Top Edge Sat Out: How 232.38 Won the Week 2 Millionaire
The portfolio's biggest edge play was not in the winning lineup, and that lineup's best scores came from receivers it held below the field.
- The top edge play, Ja'Marr Chase at +1.80 per lineup (41 of 150 lineups, against 14.1% for the field), was not in the winning lineup.
- The winning lineup's best scores came from Jaxon Smith-Njigba, 45.50 at 6.7% against the field's 10.2%, and CeeDee Lamb, 38.30 at 12.7% against 19.0%.
- That lineup alone is worth +0.78 of the +1.23 edge total; the other 149 lineups averaged 116.02, close to the field's 115.54.
- Among the 8 portfolios of 150 lineups in the top 10, the winner's edge total ranked 8th: the others ran +5.02 to +31.70.
The result
The $3M Millionaire drew 172,761 entries on Sunday, Sep 20. One lineup took first with 232.38 points and $1,000,000. It came from the elidkatz1 portfolio: 150 lineups, 30 of them in the money, $1,001,395 in all. The lineups used 164 players, 59.4% of the 276 the field used, with no core play.
Counted by lineup, its edge total, +1.23 points per lineup gained against the field, is mostly the winning lineup: that lineup alone is worth +0.78 of it, and the other 149 averaged 116.02. The portfolio's average lineup scored 116.80, against the field's 115.54. The build gave it 150 chances; one of them hit.
Pro view

The edge and the lineup
The edge list and the winning lineup mostly point to different players. Ja'Marr Chase led the edge list at +1.80 per lineup: 41 of 150 lineups, 27.3% against the field’s 14.1%, for 26.50 points. He was not in the winning lineup. Dalton Schultz came next at +1.44, 31.3% against 22.4%, and he was in the winning lineup.
The lineup's best scores came from the other side of the ledger. Jaxon Smith-Njigba scored 45.50; the portfolio held him at 6.7%, against the field's 10.2%. CeeDee Lamb scored 38.30 at 12.7%, against 19.0%. Both sat below the field in the portfolio.
That reads like a portfolio whose biggest player gains and whose ceiling ran through different players: the biggest gains sat above the field, and both of the winning lineup's best scores came from players it held below the field. The tape cannot say which part was a read and which was variance.
The chalk
The chalk was all at RB. The portfolio held Bijan Robinson in 49 of 150 lineups, 32.7% against the field's 47.3%. He scored 11.10, below the field's 12.84 per roster spot, so the underweight was worth +0.25 per lineup.
Derrick Henry's score went the other way. The portfolio was again under the field, 29.3% against 37.5%, and he scored 17.70: that cost -0.40. Christian McCaffrey sat at 24.7%, near the field's 22.9%, and his 22.60 added +0.18. The chalk edges nearly cancel; the winning lineup carried 1 chalk player, Christian McCaffrey.
The build
136 lineups, 90.7%, paired the QB with at least one teammate, across 23 QB teams. The most common, DAL, showed up in only 8.0%. A bring-back appeared in 37.3%. No QB team took more than a small slice of the lineups.
The winning lineup was a QB + 2 SF build: Brock Purdy, owned by 9.5% of the field, with Christian McCaffrey and George Kittle. That QB sat in 8.7% of the portfolio. Its lowest-owned seat was Tre Tucker at 0.7%, for 25.90. The lineup table below shows the rest.
The rest of the top
The edge leader, best finish 6th, ran 13 lineups for +37.75, a different portfolio size. Against the other portfolios of 150 lineups, the winner still ranked 8th of 8: they ran +5.02 to +31.70. Its other lineups sat close to the field's average; the title came from one lineup's ceiling.
On the chalk, 8 of the top 10 sat under the field on Derrick Henry, 6 on Bijan Robinson, and 1 on Christian McCaffrey.
The lesson
The biggest edge gains came where exposure sat above the field, yet the winning lineup's best scores came from receivers the portfolio held below it. Next week, compare where your edge comes from with where your ceiling lineups come from; this week they were different players.
The winning lineup
232.38 points with $0 of the $50,000 cap left. Stack: QB + 2 SF.
Field own = share of all 172,761 lineups. Winner exp. = share of the winning portfolio's 150 lineups.
| Slot | Player | Team | Salary | Field own | Winner exp. | Pts |
|---|---|---|---|---|---|---|
| QB | Brock Purdy | SF | $6,200 | 9.5% | 8.7% | 28.48 |
| RB | Christian McCaffrey | SF | $8,000 | 22.9% | 24.7% | 22.60 |
| RB | J.K. Dobbins | DEN | $5,000 | 2.5% | 5.3% | 3.60 |
| WR | Jaxon Smith-Njigba | SEA | $8,100 | 10.2% | 6.7% | 45.50 |
| WR | CeeDee Lamb | DAL | $7,300 | 19.0% | 12.7% | 38.30 |
| WR | Tre Tucker | LV | $4,500 | 0.7% | 2.0% | 25.90 |
| TE | Dalton Schultz | HOU | $3,200 | 22.4% | 31.3% | 29.00 |
| FLEX | George Kittle | SF | $4,600 | 4.5% | 8.0% | 18.00 |
| DST | Patriots | NE | $3,100 | 5.3% | 2.0% | 21.00 |
The top 10 portfolios
Each user in the first 10 rows of the standings, by best rank. Numbers only.
Edge total = points per lineup gained against the field. Mean chalk exp. = average exposure to Bijan Robinson, Derrick Henry and Christian McCaffrey, 0% counted.
| Best rank | Entries | Players used | Edge total | Mean chalk exp. |
|---|---|---|---|---|
| 1st | 150 | 164 | +1.23 | 28.9% |
| 2nd | 150 | 118 | +12.55 | 32.0% |
| 3rd | 150 | 135 | +5.02 | 32.2% |
| 4th | 150 | 119 | +5.95 | 35.1% |
| 5th | 150 | 114 | +13.46 | 27.8% |
| 6th | 13 | 34 | +37.75 | 18.0% |
| 6th | 150 | 87 | +6.20 | 35.3% |
| 8th | 150 | 150 | +6.14 | 31.6% |
| 9th | 3 | 26 | +16.99 | 22.2% |
| 10th | 150 | 66 | +31.70 | 46.9% |
Open the tape
Every lineup of the winning portfolio, each player's exposure and edge against the field, and the rest of the top 10 are in Contest Analysis.
Reproduce it
The core facts come from two calls: the standings (the field block: pool size, the players the field used, the field's average lineup, the chalk) and the winner's lineups (players used, exposure, edge and the edge total). The winning lineup table comes from the contest download, and the top-10 table from each top-10 user's lineups. Every call is listed under Receipts. The calls need a Pro API key.
const BASE = 'https://api.stat-api.com/api/v1/dfs/contests/7644474';
const headers = { Authorization: 'Bearer <YOUR_API_KEY>' }; // a Pro key
type Standings = { standings: Array<{ rank: number; username: string; points: number }> };
type UserLineups = {
user: { entries: number; players_used: number; avg_points: number; edge_total: number };
exposure: Array<{ name: string | null; lineups: number; exposure_pct: number; field_pct: number | null; edge: number | null }>;
};
const get = async <T>(path: string): Promise<T> => {
const res = await fetch(`${BASE}${path}`, { headers });
if (!res.ok) throw new Error(`${res.status} ${await res.text()}`);
return (await res.json()) as T;
};
const top = await get<Standings>('/standings?limit=10');
const winner = top.standings[0].username;
const tape = await get<UserLineups>(`/users/${encodeURIComponent(winner)}/lineups`);
console.log(winner, tape.user.entries, tape.user.players_used, tape.user.edge_total);
for (const p of [...tape.exposure].sort((a, b) => (b.edge ?? 0) - (a.edge ?? 0)).slice(0, 3))
console.log(p.name, p.lineups, p.exposure_pct, p.field_pct, p.edge);
Endpoints behind this post
GET /api/v1/dfs/contests/7644474/standings?limit=10The standings and the field block: pool size, the field's average lineup, the chalk (Pro)GET /api/v1/dfs/contests/7644474/users/elidkatz1/lineupsEvery lineup of one user, with players used, exposure and edge (Pro)GET /api/v1/dfs/contests/7644474/download?format=jsonEvery lineup of the contest and the player pool with field ownership (Pro)Built automatically from the contest data. Every number links to its API call.
GET https://api.stat-api.com/api/v1/dfs/slates/seasons?sport=nfl2026-09-27T21:18:08ZGET https://api.stat-api.com/api/v1/dfs/slates?operator_id=1&date=2026-09-202026-09-27T21:18:08ZGET https://api.stat-api.com/api/v1/dfs/contests?slate_id=2908712026-09-27T21:18:11ZGET https://api.stat-api.com/api/v1/dfs/contests/7644474/download?format=json&enrich=dfs.player_stats2026-09-27T21:18:17ZGET https://api.stat-api.com/api/v1/dfs/slates/2908712026-09-27T21:18:17ZGET https://api.stat-api.com/api/v1/dfs/slate_settings/1302026-09-27T21:18:17ZGET https://api.stat-api.com/api/v1/dfs/contests/7644474/standings?limit=102026-09-27T21:18:17ZGET https://api.stat-api.com/api/v1/dfs/contests/7644474/users/elidkatz1/lineups2026-09-27T21:18:17ZGET https://api.stat-api.com/api/v1/dfs/contests/7644474/users/Hebrewcheetah/lineups2026-09-27T21:18:17ZGET https://api.stat-api.com/api/v1/dfs/contests/7644474/users/BobbyFi/lineups2026-09-27T21:18:17ZGET https://api.stat-api.com/api/v1/dfs/contests/7644474/users/xmalachi/lineups2026-09-27T21:18:17ZGET https://api.stat-api.com/api/v1/dfs/contests/7644474/users/CactusJack2/lineups2026-09-27T21:18:17ZGET https://api.stat-api.com/api/v1/dfs/contests/7644474/users/BrandonTigers/lineups2026-09-27T21:18:17ZGET https://api.stat-api.com/api/v1/dfs/contests/7644474/users/ikeyser21/lineups2026-09-27T21:18:18ZGET https://api.stat-api.com/api/v1/dfs/contests/7644474/users/driverseati/lineups2026-09-27T21:18:18ZGET https://api.stat-api.com/api/v1/dfs/contests/7644474/users/tennis69/lineups2026-09-27T21:18:18ZGET https://api.stat-api.com/api/v1/dfs/contests/7644474/users/mrgoodseats/lineups2026-09-27T21:18:18Z