This is the chalkboard page. The boards show numbers; this explains where they come from, how they were tested, and — just as often — where they are known to be wrong.

No statistics background assumed. Every term gets defined the first time it shows up, and there is a glossary at the bottom for anything you want to look back up.

1

A projection is a shape, not a number

Say the board projects a receiver for 52.4 receiving yards. He is not going to get 52.4 yards. He is going to get 0, or 9, or 31, or 118. The projection is the middle of everything that could happen to him on Sunday, and the useful question is never "is this number right" but "what does the rest of the range look like."

So the model does not guess a number and stop. It plays the game out thousands of times — every target, every carry, every red-zone snap — and keeps the whole pile of results. That pile is a distribution: not one answer, but how often each answer came up.

On the board

p50 is the median: half the simulated Sundays came in under it, half over. p90 is the 90th percentile: he beat that number in one Sunday out of ten. The Defense page's Range column is p10–p90, which is the middle 80% of outcomes — wide on purpose, because football is wide.

This is also why a prop is not a coin flip on the projection. A line at 52.5 with a projection of 52.4 is not "close to even." Whether the over is worth betting depends on how fat the right side of that pile is, and two players with the same projection can have completely different shapes — which is the entire idea behind the Nasty Board's ceiling section.

2

Reading the slate

The Slate is one row per bettable leg. Left to right:

ColumnWhat it is
PosListed position.
DepWhere he sits at his own position on the posted depth chart. 1 is the starter.
LineThe number the book posted.
ProjThe model's projection — the middle of the pile from section 1.
ModelThe model's probability that the over hits. A 0.612 means it cleared the line in 61.2% of the simulated Sundays.
MktThe market's probability that the over hits, after the vig is taken out. This is the number to compare against, not the price. See section 3.
Over / UnderAmerican odds as posted.
EdgeThe better of the two sides once the vig is gone, and which side it is on. Blank means neither side clears. See section 4.
CHARTA flag: the posted depth chart and the model disagree about who starts. Worth a look before you trust the row.

A blank cell is never a zero. It means the number does not exist for that leg — no posted under on a one-way market, no edge that clears the vig, no depth-chart entry. The sorters push blanks to the bottom whichever way you point a column, because "no bet available" must never outrank a real one.

3

The vig, and why we take it out

Take a receptions prop at −115 over, −115 under. Turn each price into the chance it implies and you get 53.5% and 53.5%. Add them up: 107%.

Those are two sides of the same event. They have to add to 100%. The extra 7 points is the house's cut — the vig — baked into both prices. It is the price of admission, and it is why a bettor who picks the right side 52% of the time still goes broke.

The move

Devigging is scaling both sides back down until they add to 100%. Here: 53.5 ÷ 107 = 50.0% a side. That is the market's honest opinion, stripped of the fee, and it is what the Mkt column holds.

This is not bookkeeping. Comparing a model number to a vigged price invents edges that are not there, and the fatter the juice the worse the illusion. Anytime touchdown is one of the most heavily juiced markets in the building: the roughly 2.4 players a team has priced sum to 2.55 implied touchdowns, when a real NFL team scores about 2.2. Score a model against those prices and it looks broken; the difference is mostly the book's cut, not the model's error.

Rule of thumb, and it generalises well beyond football: when you are grading a forecast, grade it against what actually happened. A price is not ground truth.

4

Edge — and why the biggest one is not the best one

Edge is the model's probability minus the devigged market probability, expressed as what a dollar returns over the long run. A +4.2% edge says: bet this shape a thousand times at this price and the model expects to come out 4.2 cents up on the dollar.

Now the part that costs people money. The natural instinct is to sort by edge and bet the top of the list. That instinct is measurably backwards. On longshot touchdowns, graded on two full seasons of real closing prices:

Top decile of edge

−7.5% in 2024, +116.1% in 2025. Whipsawing like that across two seasons is not a signal — it is noise with a big number attached. Meanwhile every leg where the model simply beat the price returned a steady +45.1% pooled.

Here is why, and it is the single most useful statistical idea on this page. The largest gaps between a model and a market are not where the model knows the most. They are where the model is most wrong about something — a player it thinks is starting who is not, a line that moved for a reason it cannot see. A big disagreement with a sharp market is more often a bug than an opportunity.

So edge > 0 is a gate, not a ranking. It decides whether a leg is in the pool. It does not decide which legs in the pool are better, and the board never sorts money onto the biggest number.

5

How a claim earns its spot on this board

Anything on here that says "this makes money" had to survive four things. They are worth knowing, because they are also how you should read anyone else's numbers.

One season is not evidence

The hardest lesson this project has learned, and it was learned by getting it wrong and shipping it. A rule about low-usage overs looked overwhelming on 2025: +16.7% on main lines, profitable in 17 of 18 weeks, and it survived every attack that could be made inside that season — every position, every week, and it was not survivorship either.

Then it was run on 2024. +1.0%. Profitable in 10 of 18 weeks, which is a coin flip. Not decayed — absent. The claim was retracted.

The lesson is not "test more archetypes." Every in-season attack passed. What none of them could do is what one query against a second season did immediately: 1,062 picks spread across 18 slates of the same players is nothing like the sample size it looks like, because those picks are all leaning on each other. Every profit claim here is graded on 2024 and 2025 separately.

The z-score: could luck have done this?

A z-score asks how far a result sits from "nothing is happening," measured in units of its own noise. Roughly: z of +2 is a result luck produces about 1 time in 40. z of +4 is far rarer than that. A z near 0 — the z +0.52 in the control group below — means the number you are looking at is indistinguishable from a random wobble, no matter how good its percentage looks.

One caveat that matters here: bets on the same slate are correlated, so the honest version clusters by week rather than pretending every leg is independent. Where a z is quoted on this site, that has been done.

A control group

The longshot touchdown rule makes +45.1%. Nice number. The question that makes it believable is: what does the exact same rule do where it shouldn't work? Applied to touchdown legs priced shorter than +800, it returns +0.3% (z +0.52) — nothing.

That contrast is the whole argument. If the rule made money everywhere, the finding would be "the model is good," which is a much weaker and much less likely claim. Because it makes money in exactly one place and vanishes outside it, the finding is specific: longshot touchdown prices fail to hold information the model has. Always ask a claim where it stops working. If it never stops, be suspicious.

Hold data out, and walk forward

Models are fitted on old seasons and graded on seasons they have never seen. Touchdown history is held to strictly prior years, volume models are refit per season, and everything is graded against real closing prices rather than an average or a made-up line. A rule that only works on the data that built it is not a rule, it is a memory.

6

When a market gets switched off

Some markets appear on the Slate with a struck-through tab and a completely empty Edge column. That is a market this board refuses to price a bet on.

It happens when a market is graded across two full seasons and loses money while reporting an edge — the model's confidence and the actual results pointing in opposite directions. That is worse than being useless, because it looks like a signal the whole time it is costing you.

The line, the odds and the model's own number stay on screen. Two reasons: the market keeps being measured, so it can be switched back on if it starts behaving, and hiding a market entirely is how a bad finding quietly stops getting re-checked. What is removed is the one thing that would read as a recommendation.

The suppression list ships in the same file as the projections, so the site and the pipeline physically cannot disagree about which markets are live.

Clicking a player, and the NOT PRICED tag

Clicking any player's name — on the Slate or on the Defense page — opens everything this board knows about him: every market with a projection, the posted line where a book has put one up, the simulation's own percentile range, the quarter and half legs, and the matchup he is walking into.

Most of that is not on the Slate, and the reason is structural rather than deliberate. The Slate is one row per posted line, so a market a book has not priced for a player has no row to sit in. The model still projects it. This week it has a receptions, receiving yards and targets number for all 525 players, against roughly a dozen posted receiving lines — so a targets projection has simply never had anywhere to appear.

Those markets are tagged NOT PRICED, and they carry no edge for a reason worth stating plainly: this board has never graded a bet in them. That is not the same as a suppressed market, which was graded and lost. NOT PRICED means untested — no closing-price history, so no claim can be made either way, and a number that looked like a recommendation would be one nothing stands behind. The projection is shown because it is real; the bet signal is withheld because it has not been earned.

An edge appears only on the markets the Slate itself gives a tab to, and only while they are not suppressed. A leg reads identically in the panel and on the board it was opened from — same number, same side.

6b

Quarters and halves — what the period board is

The Periods board projects how much a player does in the first quarter, the first half and the second half, for every offensive player on the slate rather than only the ones a book has posted a price for. This week that is 1,967 projections against 81 posted legs — so about 96% of the page is a projection with no market behind it at all, which is the point of having the page.

One row is one player's period, with a column for each market — touchdown, receiving yards, rushing yards, passing yards — the same shape the WNBA board uses for points, rebounds and assists. The toggle above the table switches every market column between three things: the projection, the edge, and the shutout chance. Clicking a name opens the full card, which carries the lines, the prices, the percentile ranges and the eight full-game markets this board does not show. Every market is projected in all three periods.

The halves were added because of a line. The board projected the first quarter only, so a first-half receiving line of 38.5 had nothing here to compare against and looked like a wild disagreement with a 17-yard first-quarter number. It was not: a full-game 82 receiving yards implies about 18 in a quarter and about 41 in a half, so 38.5 is a half line sitting just under the model. The half shares are measured the same way the quarter's are and split the same way, by whether the team received the opening kickoff — that is worth 5.3 points of target share in the first quarter and, perhaps surprisingly, the same 5.3 across the whole first half, because the extra possession is not handed back until the second-half kickoff.

Receptions are on the board too, and they cost nothing to produce: the receiving simulator has always drawn catches and yards together from one set of targets, and the period board simply threw the catches away. Showing them means the two numbers cannot disagree about how many balls came his way.

There is no player-level quarter model, and that is a finding rather than a shortcut. The obvious idea is that teams script their opening drives, so some players ought to have a first-quarter share that differs from their full-game share. Measured across 859 player-seasons of 40+ targets, the average gap between a player's Q1 target share and his full-game share is 2.5 percentage points, and it barely repeats: the year-over-year correlation of that gap is +0.14, falling to +0.10 when the measurement is restricted to players with enough volume to measure cleanly. A real trait gets stronger when you clean up the measurement. This one gets weaker, which is the signature of noise. So a player's period share is his full-game share, and the whole model lives one level up, at the team.

The coin toss, inferred without any toss data

The single biggest thing that happens in a first quarter is decided before a snap: who gets the ball. Receiving the opening kickoff is worth about +3.6 first-quarter plays and +0.96 first-quarter points, measured over 2,227 games.

Nobody records who won the toss, and it turns out not to matter. The winner chooses, and if he defers the loser takes the ball — so if every coach deferred at the same rate, every team would receive exactly half the time no matter how strong that preference was. A team's receive rate moves off 50% only when its coach's defer rate differs from the league's. The observed receive rate therefore is the preference, and the matchup formula falls out of it: P(home receives) = 0.5 + home's rate − away's rate. A coach who takes the ball hosting a coach who defers projects to receive far more often than half, because he receives when he wins the toss and also when the other man wins it.

That is what the Recv column is: a projection from coach behaviour, not a result. It is the only real mechanism the quarter model has, and it is the thing that would make period prices beatable if they are beatable at all — a book pricing every team at 50% to receive is mispricing both sides of a Morris-versus-Reid kickoff.

Shutout, and why a 0–0 range is not a bug

A quarter is about fifteen offensive plays. The median receiver on this board is projected for under two first-quarter receiving yards, and is held to nothing in most simulations — 135 of the 711 yardage legs have a 10th-to-90th percentile range that reads 0–0 from end to end. That is a correct description of a player who catches nothing nine times out of ten and occasionally catches a long one, and it is useless on its own. Shutout is the same distribution said usefully: the probability he finishes the period with nothing.

It also explains a row that otherwise looks broken. A projection of 1.4 yards next to a range of 0–0 is not a contradiction — the average is carried entirely by the rare game where he catches one.

The edge on this board is ungraded

The period board carries a real edge, computed on the same machinery the slate uses — devigged market price, blend, break-even, edge — and it is the least-evidenced number on this site. Every other market with an edge here earned it by grading two seasons of closing prices. This one has graded none: no period line was bought before 2026-09-09, so there is no closing-price history to test against.

These legs were suppressed until 2026-09-15 for exactly that reason, on a pre-registered condition — one full season of bought closing prices, positive in both halves — and that condition has not been met. The suppression was lifted because the numbers are wanted for use this season, not because the evidence arrived. The honest version of that decision is to publish the edge and say plainly what is behind it, which is what the caveat line at the top of the board does. Stake it smaller than the slate until it has a record.

It remains a different category from a suppressed market: PASS_YDS was graded and lost, which is a finding. This is untested, which is an absence of one. The two have opposite prospects, and neither is the same as a market that has been shown to work.

Devigging a one-sided market

This is the part that makes the edge above mean anything. Books quote a price to score in a period and no price not to. With only one side there is nothing to devig against, so the quoted price still carries the bookmaker's margin — on the current slate the 27 quoted first-quarter prices in a game sum to 1.52 implied scorers against a fitted 1.21 that period actually produces. That is a 26% overround sitting inside the number.

What that margin distorts is not only the price. The size of the overround is the market's hold, and the hold is what decides how much the blend trusts the market against the model. Left in place, a one-sided leg looks like a market with no hold at all — the sharpest kind — so the blend leans almost entirely on a price that is 26% too high. Taken out, the same leg correctly declares itself one of the thinnest markets on the site, and the model gets the weight instead.

The effect runs in both directions at once, which is why it is worth doing properly rather than approximately. Running the real pricing chain both ways on the current slate: the best genuine edge is +4.1% devigged and only +1.7% left raw — the raw version buries it, by trusting a market it should not — while the raw version simultaneously calls 28 legs a bet against 25, three of them flipping from losing to winning purely on the inflated price. It understates the good legs and manufactures marginal ones, and neither failure looks like an error.

So the quoted prices across a game are scaled until they sum to the number of distinct scorers that period really produces at this game total, fitted on 2,227 games the same way the full-game anytime-touchdown market is devigged: 0.0262 × total − 0.194 for the first quarter, 0.0696 × total − 0.821 for the first half. A game with fewer than fifteen quoted players gets no factor and therefore no edge — an overround measured off a handful of prices is invented rather than measured.

Worth knowing what the two groups of period markets cost, because they are not close. The touchdown markets are deep and expensive — the posted yes-prices imply about 1.37 first-quarter scorers a game against a realised 1.014, a 35% overround, and they are one-sided so they can only be beaten by selection. The yardage markets are cheap and nearly absent: a 6.3% two-sided hold, but only a few dozen legs across a twelve-day window. One is unaffordable and the other is unbuyable, and which turns out to matter depends on a season of closing prices neither has yet.

7

Week 1, and other cold starts

In week 1 nobody has played. There is no in-season usage data, so the volume model runs on last year plus the depth chart, and the touchdown model concentrates scoring more sharply to compensate.

The honest consequence: the longshot touchdown section turns itself off in week 1. Graded on the weeks it was built for (2–18) it returns +45.1%. Applied to week 1 in both seasons it returns −35.3% (2024 −50.5%, 2025 −21.8%, n=204). It comes back on once players have games.

That is not a patch, it is what the theory predicted. The rule works by ranking players inside a price bucket, and ranking is precisely the part that has nothing to stand on before anyone has touched the ball.

The CHART flag

Marks a leg where the posted depth chart and the model disagree about who starts. In week 1 of 2026 the chart was right and the model was wrong every single time. Treat the flag as a warning, not a curiosity.

8

The Nasty Board, section by section

The Nasty Board hunts for the spots where the market is structurally worst — and most of what it prints is about what not to bet. Each section carries its own verdict tag, and those tags are the point. Here is what each one was graded on.

A · Do not bet — high-usage overs

Overs on the busiest players — top quartile of projected usage — lose in both seasons. Main lines: −9.8% in 2024, −17.0% in 2025, profitable in 5 of 18 weeks and then 4 of 18. It is the only cut in this file that did the same thing twice, and the only reason it is trusted.

Now the part that keeps you honest: the mirror does not follow. Top-quartile unders returned +6.6% in 2025 and −3.5% in 2024. So this is a filter, not a bet — a list of overs the model likes that you should decline, not a list of unders to buy. Losing one side of a market does not mean the other side wins; the vig sits in the middle of both, and section A respects that.

B · Ceiling plays — priceable, profit untested

These are spike candidates, ranked by p90 ÷ p50 — the one-in-ten Sunday divided by the typical one. A ratio of 5 means his ceiling is five times his median: a deep threat with four targets, not a possession receiver with eight.

Read the column headings carefully, because they are the point. That p50 and p90 are his total receiving or rushing yards for the game, not his longest play. The long column beside them is the real longest projection. The board is still ranked on the total-yardage ratio, deliberately: neither number has ever been graded, and reordering the page on an untested projection instead of an untested proxy would not be progress. Grade both when there are lines to grade them against.

There is a real longest-play model in the pipeline, and it is worth knowing what it does and does not say. It costs almost nothing to build: the simulator already draws every target and every carry individually before adding them up, so the longest play is just the biggest of the draws it already made. Tested on the max mechanism alone — feeding it each player's real target count, so the volume model cannot flatter it — it came out well calibrated over 3,825 player-weeks.

The levels come out right by volume. Projected longest reception against what actually happened, over every player-game from 2023–25: 11.0 against 10.7 at one or two targets, 15.0 against 16.1 at three or four, 20.0 against 20.1 at five or six, 23.2 against 23.4 at seven to nine. Four buckets on the nose. The fifth is the problem, and it is the one that matters most.

Is one receiver really different from another?

The model separates two players on the same number of targets — a deep threat gets a longer projected longest than a possession receiver. That is a claim, so it is tested the way the defence page tests its own: split each player's games in half at random, strip out the volume effect, and see whether the two halves agree about him.

0.613, which is 0.760 corrected to full career length. Stronger than the sack model's 0.549 and far stronger than interceptions at 0.254, though below tackling at 0.868. What it is really measuring is yards per catch, which splits at 0.705 — being a deep threat is a durable trait, and it is most of what separates two players here.

The size matches too. Real receivers spread about 3.8 yards apart on this measure once volume is accounted for, and the board spreads them about 3.1. It differentiates slightly less than the data justifies, which is the safe direction to be wrong in.

Where it runs hot

At 10+ targets that model projects a longest catch of 29.8 yards against a real 27.6, and the finished board still lands 24.0 against 27.5 there. The simulator treats a receiver's targets as independent draws, so twelve of them get twelve independent shots at a big play — while twelve real targets are correlated, and a receiver seeing that volume is often the one the defence has taken away, drawing short looks all day. Volume receivers are the players it overstates most, and they are exactly where the market is most liquid.

On 8 September 2026 those markets were confirmed to exist and were added: longest reception, longest rush and longest completion, two-sided at three to six books, about ten receivers priced a game. The board now carries a real longest projection, corrected for the bias above by a factor fitted on four seasons and checked on a fifth it had never seen.

None of it has been graded, and the bet signal is switched off. Not one longest line was bought before that date, so there is no closing-price history to test any of this against — no edge column, no recommendation, on any of the three. The projection is published and the market's own price beside it; what is withheld is the number that would read as advice.

Written down in advance

What it takes to switch on: one full season of bought closing prices, graded the same way everything else here is graded, positive in both halves of that season, and clearing the same control test the longshot touchdown rule had to clear. Pre-registering that is the point — a condition agreed after seeing a good run of results is not a condition.

C · Favorite unders — not supported

The story is a good one: big favourite builds a lead, sits the starters, the passing game evaporates, unders cash. Tested on real closing prices by the player's own team spread:

Team spreadReturnnz
Favourite 10++2.0%927+0.63
Favourite 4–9.5−3.5%3,170−2.08
Favourite 0.5–3+0.7%2,266+0.36
Underdog+1.7%5,879+1.33

No gradient. If the game-script story were true, the numbers would climb as the favourite gets bigger — and they do not climb at all. The bucket the story predicts most strongly is the losing one. So section C is a watch list only. Do not bet off it. It stays printed because a signal you hide is a signal nobody re-checks, and it is labelled every week so that nobody has to remember this page to stay out of trouble.

D · Longshot touchdowns — replicates, weeks 2+

Start with the bad news, because it is most of the story. Betting longshot touchdowns blindly loses. Across 12,276 legs of real closing prices, anytime-TD overs returned −12.77% in 2024 and −9.45% in 2025, and the deep longshots were the worst of it: −30.9% in the +800–1600 bucket, −27.0% at +1600 and up. This is the classic favourite–longshot bias — people overpay for lottery tickets, so lottery tickets are overpriced — and it is against you.

What survives is selection inside the bucket. Not "bet longshots," but "given that a bucket of longshots is systematically overpriced, can the model tell which ones are not?" Taking every +800-or-better leg where the model's probability beats the price, weeks 2–18:

n = 2,283  ·  pooled +45.1%  ·  2024 +33.9%  ·  2025 +55.8%  ·  z +3.87

Positive in both seasons, and it sharpens as the price lengthens: +400 floor returns +28.3%, +800 returns +45.1%, +1200 returns +64.2%. The control group (section 5) is what makes it credible.

And the fade half is the steadier half. Longshot legs where the model is below the price hit 2.01% against a 6.12% breakeven — −77.0%, and −75.7% / −78.4% in the two seasons separately. Being able to say which lottery tickets are worthless is a more reliable skill than saying which are live.

Retracted, and left visible

An earlier version of this board carried a fifth finding — overs on low-usage players — labelled CONFIRMED. It did not replicate and it is gone. It is written up in nasty.py rather than deleted, because a project that quietly erases its wrong answers learns nothing and asks you to trust it more than it has earned.

9

Anytime touchdown: four corrections

Anytime TD is the market with the most work behind it. Four corrections sit between the raw calculation and the number on the board. Each looks like an arbitrary fudge on its own, and removing any one of them puts fake edges back on the page.

1 · Level — scale to what the team will actually score

The original calculation was opportunities × touchdown rate × red-zone leverage, with the rate fixed per player. Which means the only way the game could affect a player's touchdown chance was through play count — and play count barely moves. A team runs about the same number of snaps whether it is projected for 18 points or 27. What changes is touchdowns per opportunity, and that was frozen.

The tell was ugly: the 8 lowest-total teams on a slate projected 4.13 expected scorers, and the 8 highest projected 4.12. Identical across a 7.7-point spread in implied scoring — and both roughly double what a real offence scores. Every apparent edge that week clustered in the two lowest-scoring offences on the slate.

Worth recognising on sight

Nineteen apparently independent plays were one missing normalisation seen sideways. When your edges pile up in one corner of the slate, that is usually one bug, not nineteen opportunities.

The fix: fit team touchdowns against the implied team total over every team-game on record, and re-fit it at runtime so it cannot go stale.

2 · Concentration — real offences are top-heavy

Scaling alone made things worse where it mattered. The raw numbers spread scoring across about twice as many players as really score, so squeezing a team down to its true total taxed the goal-line back to pay for a fourth receiver who was never going to score anyway.

So the within-team distribution is sharpened first — fitted to four seasons of real per-team touchdown shares, not assumed — and the sharpening is applied to shares, not to levels. Raising a level to a power rescales it and undoes the levelling; raising shares to a power only redistributes them, and the team total stays exact. After both corrections the team totals line up on the nose, and 19 fake edges became 5.

3 · Calibration — say 20% only when it happens 20% of the time

Calibration is the discipline of a forecast meaning what it says. Take every leg where the model said 20%: about 20 in 100 should score. The raw model was too cold at the bottom and too hot at the top — its confidence spread roughly 2.3 times too wide — so it is corrected by shrinking everything toward the base rate. That is the whole of it.

Two things worth carrying out of this one. First, the original diagnosis was made against book prices and was wrong, for the reason in section 3: most of the apparent error was the book's vig. Second, building the grading harness surfaced two live bugs that had been producing correct output by luck, because the live path happened to take a shape that hid them. A backtest is also a bug detector — it exercises shapes the daily run never touches.

4 · Participation — only 13 players actually dress

The calibration map alone made things worse again, and the reason is population, not fit. The map was learned from player-weeks that actually happened: about 11.7 skill players a team. A slate built off a roster carries 28.4. Because the map shrinks everything toward the base rate, it lifted the sixteen players who will not even dress off the floor, and the team's expected scorers ballooned.

Cutting to the top 13 by expected touchdowns puts the probability mass back on players who will be on the field. The general lesson: a model fitted on one population and applied to a different one will be wrong in a way that has nothing to do with how good the model is.

10

The Defense page

No lines here. Nothing on that page is priced against a book — there is no edge column because there is nothing to have an edge against. The projection is the output.

Tkl is tackles + assists, which is how the market settles it. INT is the probability of at least one interception, not a count, because that is the only form anyone bets.

Solo and Ast are a split, not a second model

Solo + assisted equals combined tackles exactly, on all 140,747 player-weeks from 2018–25, so the two columns sum back to Tkl by construction and cannot drift away from the projection everything else was measured on. The split is a real personal trait, and it separates position groups hard: defensive backs make 70% of their tackles unassisted, linemen 51%. A player with no history sits exactly on his group's share.

Sacks are opportunity first

There is a real personal signal in pass-rush — but most of what separates two edge rushers is still how many pass plays they are on the field for. Against the honest rival (his group's rate × his own pass-rush snaps) the model wins all four walk-forward seasons. Projected team totals come out at 2.1 sacks per team per game against a real 2.3, which is the check that matters.

Interceptions are barely a skill, and the model says so

Split a defensive back's career in half and correlate his interception rate across the two halves and you get 0.254. For tackles the same test gives 0.868. Tackling is a skill; most of what looks like a ball-hawk rate is noise.

So knowing which defensive back is on the field is worth almost nothing over simply knowing how many pass plays he will see. Read that column as opportunity first and player a distant second: the whole spread from top to bottom is about 10 points of probability, and most of it is coverage snaps.

Greyed-out cells in the Sack and INT columns are players with too little history for the personal term to say anything — the number shown is their position group's, not theirs. The NEW flag means the same thing for the whole row.

10b

The Lookahead page — next week, with no prices

The Slate is the week being bet. Lookahead is the week after it: the same players, the same model, the same simulation — and no market at all.

There is no Line column, no odds, no edge, and no Priced-only filter, and that is not because the lines have not arrived yet. It is by construction. The file this site saves sportsbook lines into is keyed on the player and the market and carries no week, so pointing next week's projections at it would not come back empty — it would come back with this week's lines attached to next week's numbers, and show an edge against a price nobody is offering. The pipeline refuses to open that file when it builds this page.

What it is for

Seeing where the workload is going before the market has an opinion: who just moved up a depth chart, who draws a defence that has been giving up targets, whose carries are about to be someone else's. When the line for that player does open, you already know what you think.

Three things are weaker here than on the Slate, and all three are on the page rather than in a footnote.

No injury report. A week out, there is not one published. Every projection assumes the player is available, including the ones who will be ruled out on Friday.

Sometimes no game line. Touchdown numbers are levelled to the points a team's game implies — a team projected for 27 scores more touchdowns than one projected for 17. A week ahead the schedule often carries no spread or total at all, and those teams are levelled to an average game instead, which the page names explicitly. Volume and yardage do not depend on it; the TD% column for a named team is a placeholder.

A bye week is simply absent. The page is one week, not one game per team, so a team idle that week has no rows — not zeroed rows.

Player names are not clickable here. The player panel is built from the current week's board, and on this page that would be answering a different week than the row you clicked.

11

What this board is known to get wrong

Every model has a list like this. A model whose owner cannot produce one is a model nobody has checked.

Defensive snaps are too flat at the top

Measured against 2025, 8.6 defenders per team play 40+ snaps in a real game. This board projects 4.4. Team totals are right — 58.9 projected tackles per team against 59.7 actual — so the error is distribution, not level: every-down starters are understated and rotational players overstated. Trust the ordering more than the magnitude. Part of the fix is in; the rest is not done.

Pass-rush exposure uses the league pass rate

An unplayed week has no real pass rate, so projected snaps are multiplied by the league average. A defence facing a pass-heavy offence is therefore understated, and one facing a run-heavy offence overstated, by roughly the spread of team pass rates.

Sometimes the volume is a fallback, and the tab says so

Everything downstream of a projection — the yards, the percentile range, the probability, the edge — rests on one number: how many chances the player gets. Targets for a receiver, carries for a back. Those counts come from a model that has to earn its place: it is refit walk-forward and only saved if it beats the naive baselines in every fold. A model that fails is not shipped.

When none is saved, the board falls back to the baseline itself — the average of the player's own recent games. That is a real projection and an honest one; it is simply weaker, and it is weakest in the first weeks of a season, because "recent games" might mean one game. In week 2, a fallback carry count is last week's carry count exactly.

A market in that state gets a dashed tab and a note at the foot of the board naming it. It is not suppressed — the price, the projection and the edge are all still there — but an edge on a fallback market is mostly a claim that last week repeats. Treat a big one with suspicion, especially on a running back in week 2.

The board cannot see injuries

This is the largest hole on the page, and it is worth understanding precisely because it is not a modelling error — it is a missing input the model has no way to ask for.

Injury reports come from the same public feed as everything else here, and that feed does not publish the current season until well into it. So for the opening weeks the board has no idea who is inactive, on PUP or on injured reserve. It projects snaps, tackles and sack probabilities for every player on the roster, including ones who will not dress.

What that looks like

On the 2026 week 1 board, an edge rusher placed on reserve/PUP at the August cutdown — a minimum four-game absence — carried a full workload of projected snaps and the second-highest sack probability on his team. His two replacements sat on the same board at zero. Nothing was broken. The model answered a question about a player who will not be on the field, and could not know that.

The amber line at the top of every board says so while it is true, and it disappears on its own once the feed catches up. There is no fix beyond that: inventing an availability guess would be a second model nobody has tested, sitting in front of every number on the site. Check a real injury report before acting on any row — that is not boilerplate here, it is the specific thing this board is missing.

Season-level variation dominates everything

The blunt context for every number on this site: the model made money in 2025 and lost it in 2024. Naive all-unders went +2.41% then −1.81%; all-overs +0.52% then −2.83%; positive-edge legs +3.00% then −0.34%. Which season you happened to bet mattered more than any archetype in the file. That is the reason for the two-season rule, and the reason nothing here is presented as a machine that prints money.

12

Glossary

DistributionThe whole pile of possible outcomes and how often each one comes up — not a single guess.
p50 / p90Median and 90th percentile. p50: half of simulated games land below. p90: he beats it one game in ten.
VigThe house's cut, baked into both sides of a price so they add to more than 100%.
DevigScaling both sides back down to 100% to recover the market's honest opinion.
EdgeModel probability minus devigged market probability, as a long-run return. A gate, not a ranking.
BreakevenHow often a price has to win just to break even. +1500 needs 6.25%.
z-scoreHow far a result sits from "nothing is happening," in units of its own noise. ±2 is about a 1-in-40 fluke; near 0 is indistinguishable from luck.
nHow many legs a result is built on. A big percentage on a small n is a rumour.
CalibrationWhether a forecast means what it says: of everything called 20%, about 20% should happen.
Split-half correlationSplit a career in half, measure the rate in each half, correlate across players. Near 1 is skill; near 0 is noise. Halving the sample understates it, so it is often reported corrected to full length (Spearman-Brown).
Log-lossA score for probability forecasts that punishes being confident and wrong hardest. Lower is better.
Walk-forwardFit on the past, grade on a season the model has never seen, then step forward and repeat.
HoldoutData deliberately kept out of the fit so it can be used as an honest exam.
Closing priceThe last price before kickoff — the market's best number, and the only fair thing to grade against.
Favourite–longshot biasLong prices are systematically overbet and therefore systematically overpriced.
Cold startNo in-season data yet, so the model leans on last year and the depth chart.

Projections only. Nothing on this site is advice, and prices move. Everything here is published so it can be argued with — the losing seasons, the retracted finding and the known errors are on the page for the same reason the winning numbers are.

Updated Sat Oct 31, 2:01 PM ET · Next Sun Nov 1, 9:00 AM ET
GARBEDGE TIME
Reference
?  How It Works