Up: 2026-27 Fantasy Basketball Encyclopedia
Related: 2026-27 fantasy basketball projection methodology · 2026-27 fantasy basketball evidence and confidence policy · Using projection disagreement in fantasy basketball · Fantasy basketball replacement level · Fantasy basketball decision calibration
Scope and evidence labels
This desk was researched through 2026-07-18, America/New_York. It audits how public sources can and cannot feed the encyclopedia; it does not reproduce subscription tables or treat a vendor's marketing description as an accuracy study.
- Fact means an observed rule, page state, published method, or historical result supported by the linked source.
- Source projection/opinion means another analyst or model's forecast, preserved under that source's format and date.
- Desk inference means the encyclopedia's synthesis from the evidence. It is explicitly labelled and remains revisable.
Desk verdict
Desk inference, 2026-07-18: there is no mathematically honest universal fantasy rank. The reusable object is a dated distribution over games, minutes, and primitive basketball events. Nine-category per-game value, nine-category totals, head-to-head category win probability, rotisserie standings value, platform-specific fantasy points, dynasty value, and market ADP are different transformations of that object.
The early public 2026-27 data supply is also much thinner than the page titles can suggest. Several prominent tools still expose 2025-26 data, a last-season draft view, an inaccessible subscriber table, or a dynamic page with no extractable update stamp. These remain useful for mechanics and historical priors, but not as silent 2026-27 numerical inputs.
Public projection and ranking source audit
Page states below are facts observed on 2026-07-18 unless another date is stated. Dynamic pages may change after the cutoff.
| Source | State at cutoff | What is methodologically usable | What is not safe to infer |
|---|---|---|---|
| Hashtag Basketball user guide | Public method guide; ranking and projection pages were reachable | Per-game versus total toggle; standard, H2H floor, and minus-one views; category inclusion and multipliers; 7/14-day blends described as 50% house projection and 50% recent sample | The exact proprietary formula for percentage-category impact is not published in the guide |
| Hashtag category projections | Labelled 2025-26, updated 2026-04-13; late-season remaining-game counts were still visible | Primitive GP, MPG, makes/attempts, counting stats, total/average controls, games-played penalties, blend controls | It is not a 2026-27 projection set merely because it remained online in July |
| Hashtag points projections | Labelled 2025-26, updated 2026-04-13 | Custom points scoring and primitive-stat design | Current 2026-27 values |
| Basketball Monster | Public landing page said the site was being upgraded through July and expected to open in mid-August; the navigation exposed “Projections 26-27,” but the unauthenticated projection link returned to the landing page | Full-season versus short-term horizons, custom platform settings, z-score rankings, source-specific alternative projections, and an advertised high/low range | Subscriber projections, exact formulas, or a probability attached to the high/low range. A range without stated coverage is not a calibrated interval |
| Basketball Monster July update | Current forum update said Draft Monster was using last-season rankings and tied the normal opening to the schedule release | Direct warning against mistaking the current draft screen for 2026-27 output | Any numerical 2026-27 rank from an inaccessible table |
| RotoWire projections | Public page still titled 2025-26; full-season, rest-of-season, today, and tomorrow horizons were listed; complete sortable access was subscription-limited | Stated input families—history, projected minutes, pace, matchup, injuries/lineups, and expert review—and the importance of horizon | Exact weights, reproducibility, or 2026-27 values. The landing description is not a backtest |
| RotoWire custom-rank explainer | Published 2025-10-05 | Explicit support for the proposition that H2H, roto, and points ranks must be generated from exact league settings | A universal RotoWire rank independent of format |
| FantasyPros ECR method | Help article updated 2026-07-17 | ECR uses rank points and handles missing expert ranks without an arbitrary unranked placeholder | ECR as a statistical projection or outcome distribution |
| FantasyPros NBA overall rankings | Still titled 2025-26 | Best, worst, average, standard deviation, expert count, ECR, and ECR-versus-ADP are useful rank-metadata fields | Current 2026-27 consensus. Expert-rank spread is not player-outcome uncertainty |
| FantasyPros API documentation | API key required; documentation exposes consensus rank fields and projection primitives, but its displayed examples are historical | A schema worth emulating: season, type, GP, minutes, makes/attempts, percentages, counting stats, source count, update date, rank range and dispersion | That current NBA data are public, fresh, or complete merely because fields exist in documentation |
| ESPN early points ranks | Published 2026-04-14, before the draft and most offseason transactions | A timestamped analyst opinion for H2H points and a historical market signal | Category value, a stat projection, or a post-offseason depth-chart view |
| ESPN interactive projections | Page title referenced 2026-27, but rows and update metadata were JavaScript-dependent in the public extraction | A source lead that can be captured manually with a dated snapshot and declared league settings | A reproducible current data set or documented model from the static page alone |
| LineupExperts help | Public current help | Points are calculated with exact league settings; category value uses a context-dependent “Z-score+”; percentage value uses makes and attempts; removing a punt category changes total value | A player value independent of player universe or league context |
| LineupExperts basketball API | Preseason endpoint described as updating once or twice weekly and requiring an add-on/API key; the in-season service said basketball was inactive | Clear source/update/access metadata and primitive-field dictionaries | Current full-table access or active in-season forecasts at the cutoff |
| DraftKick | Landing page advertised projection aggregation, custom blends, exact scoring, editable stats, standings, and ADP; no visible source roster, weights, season, or update timestamp was established | Product lead and useful feature checklist | Reproducible consensus, independence of inputs, or current 2026-27 coverage |
| HoopMetrics | Displayed “Last Updated: 2026-02-15” | Per-game/totals, scheduled games versus played games, positional z-scores, and team aggregation as interface ideas | A current post-offseason baseline or documented methodology |
| Roto Intel | 2026 beta landing page advertised league sync and Monte Carlo category-win probabilities | Emerging lead for opponent- and schedule-aware evaluation | Validated probabilities, model details, backtests, or publicly auditable output |
Desk inference: a source may therefore be useful in one layer and unusable in another. A stale page can document scoring controls; a current rank can encode opinion but no stat line; a polished model can still be uncalibrated; and a paywalled source can be compared only if a lawful dated snapshot and its settings are available.
Canonical projection contract
Every imported observation should become one immutable source record before any consensus calculation.
| Field group | Required content |
|---|---|
| Provenance | Source, author/model, canonical URL, publication/update timestamp, retrieval timestamp, access state, snapshot/version ID |
| Scope | NBA season, preseason/rest-of-season/daily horizon, redraft or dynasty, per-game or total, category/points/platform format, rank population |
| Identity | Canonical player ID and name, team at source cutoff, eligible positions as sourced, roster state |
| Exposure | Expected games available, games counted where different, active-game MPG, starts or role state when supplied |
| Counting primitives | FGM, FGA, FTM, FTA, 3PM, PTS, REB, AST, STL, BLK, TO; retain any extra categories rather than discarding them |
| Distribution | Point estimate; low/high only with a defined probability or scenario; source probabilities when published; never reverse-engineer certainty from rank spread |
| Rank metadata | Rank value, expert count, missing-rank rule, best/worst/mean/dispersion, ADP separately, scoring settings separately |
| Audit | Stale flags, manually corrected fields, derived-versus-source values, unit checks, superseding record, known source lineage |
Do not overwrite an April rank with a July rank. Store both snapshots; the change itself is evidence about the information set.
Category normalization
Ordinary counting categories
For a declared comparison population \(P\), a conventional standardized contribution is
\[ z_{ic}=s_c\frac{x_{ic}-\mu_{c,P}}{\sigma_{c,P}}, \]
where \(s_c=-1\) for a category in which lower is better, normally turnovers, and \(s_c=1\) otherwise. The sign, population, horizon, and unit must all be recorded. A per-game \(z\) against 450 rosterable players cannot be compared directly with a season-total \(z\) against all players who logged a minute.
Fact: LineupExperts explicitly says its context-dependent category score can change when the report's player subset changes (help page). Desk inference: the encyclopedia should define a rosterable population from league teams, active roster slots, and a small replacement band, then publish the population with the rank.
Percentage categories
Raw FG% and FT% z-scores ignore volume. Project makes and attempts, then represent the player's effect relative to a declared baseline \(p_{0}\):
\[ d_i=A_i(p_i-p_0)=M_i-p_0A_i. \]
Standardize \(d_i\) across the declared population for a standalone rank, or—preferably for roster tools—aggregate makes and attempts first and recompute the team's ratio. LineupExperts documents this make/attempt logic. Yahoo's composite-stat help documents the importance of the underlying ratio components in platform scoring.
Desk inference: a source that supplies only FG% and FT% without attempts cannot be faithfully normalized. Mark percentage contribution missing; do not invent average volume from position.
Nine-category does not name one game
Yahoo's published standard categories are FG%, FT%, 3PTM, PTS, REB, AST, STL, BLK, and TO (default settings, checked 2026-07-18). Ottoneu's category game instead uses points, rebounds, assists, steals, blocks, FG%, FTM, 3PT%, and fewest turnovers (Ottoneu scoring rules). Both have nine dimensions; their ranks are not interchangeable.
Even with identical categories, objectives differ:
- Static sum of z-scores is a transparent descriptive baseline.
- Head-to-head categories asks for weekly category-win and matchup-win probabilities. Rosenof's G-score paper shows under a simplified simulation that uncertainty changes the optimal evaluation and that ordinary z-score is a limiting special case when future performance is known exactly.
- Adaptive drafts should reflect the roster already selected. Rosenof's H-scoring paper proposes format-, category-, position-, and roster-aware valuation and reports gains in its simulated environment.
- Rotisserie asks for expected movement in standings points near league-specific thresholds, not equal standardized distance in every category. Yahoo's rotisserie rules describe standings points as rank-based and ties as averaged.
The academic results are research evidence under stated models, not proof of production accuracy in a live 2026-27 league.
Points-league normalization
For linear scoring, apply the league's exact weights to projected event totals:
\[ FP_i=\sum_c w_c x_{ic}. \]
Yahoo's help currently lists default basketball point weights including 1 per point, 1.2 per rebound, 1.5 per assist, 3 per steal or block, and -1 per turnover (default settings, checked 2026-07-18). Ottoneu publishes materially different “Simple” and “Traditional” equations (rosters and scoring). ESPN's rules likewise define H2H points as commissioner-selected category weights accumulated over the matchup (scoring format).
Therefore a rank labelled only “points” is under-specified. Preserve every scoring weight, penalty, cap, roster rule, and lineup horizon.
Bonuses are nonlinear. A double-double bonus cannot be awarded because a player's average line crosses ten in two categories. It requires a game-level probability model. Similarly, missed-shot penalties require attempts and makes rather than FG% alone.
Sleeper's Lock-In mode is a separate decision problem: one game per player per week counts after the manager chooses to lock it, and the player is then unavailable for the rest of that week (Sleeper game-mode rules, updated 2025-10-21). Multiplying per-game output by weekly games systematically misstates that format; the relevant model is an optimal-stopping distribution over eligible games.
Per-game, totals, and playable opportunity
Keep three quantities separate:
\[ \text{active-game line}_i=M_i r_i, \]
\[ \text{season total}_i=E[G_i]\,M_i r_i, \]
\[ \text{fantasy-realizable total}_i=E[L_i]\,M_i r_i, \]
where \(L_i\) is the number of games that can actually be started under roster locks, caps, eligibility, congestion, and manager behavior. Expected availability is not the schedule maximum, and scheduled games are not automatically playable games.
The total conversion must be performed on makes, attempts, and counting primitives—not on a published z-score. When only a total and expected games are available, a derived per-game estimate is allowed if the denominator is explicit and nonzero; flag it as derived because a source may use a different games convention.
Desk inference: every encyclopedia player page should display both per-active-game and season-total views. Weekly tools should add schedule and lineup feasibility later, rather than contaminating the underlying skill projection.
Replacement level and auction value
Rank answers “who is better in the declared population?” Replacement answers “what is lost if this roster slot is filled by the best feasible alternative?” Define
\[ S_i=V_i-V_{R(s,f,h)}, \]
where \(R\) depends on roster slot or position \(s\), format \(f\), and horizon \(h\). In daily leagues, replacement is a path through waiver players and available games, not necessarily one season-long player. The full operational treatment lives in Fantasy basketball replacement level.
For auction values, allocate the spendable player budget over positive replacement surplus after preserving the league's minimum bids. Do not convert overall z-rank directly to dollars. Ottoneu's published structure—12 teams, a $400 cap, 25 roster spots, and a player pool extending beyond the NBA—illustrates why a platform-specific replacement pool can be radically deeper than a default redraft league (Ottoneu rules).
ADP is acquisition behavior, not replacement value. Keep projected production, replacement surplus, auction price, and market ADP in separate columns.
Uncertainty: what a useful range must mean
Causal components
The base forecast should decompose
\[ T_i=G_i\times M_i\times r_i \]
into at least:
- availability and games;
- active-game minutes and depth-chart state;
- usage and opportunity;
- per-minute rates and shooting efficiency;
- scoring-format transformation.
Low/base/high encyclopedia cases are causal states—such as cleared by opening night, delayed with a restriction, or displaced in the rotation—not the minimum, median, and maximum numbers scraped from vendors.
Range labels
A range must say whether it is:
- a central prediction interval with stated coverage;
- a quantile pair;
- a sensitivity band;
- a causal scenario;
- or merely a vendor “low/high” with no published probability.
Basketball Monster advertised projection ranges for 2025-26 but its public landing page did not assign a coverage probability at this cutoff (site); the encyclopedia should call those source ranges, not 80% or 90% intervals. By contrast, the historical FantasyLabs NBA glossary defines its DFS ceiling and floor so that 15% of outcomes lie above and 15% below, implying a labelled central 70% band (glossary). That page is older and DFS-specific, so it is a methodological example rather than a 2026-27 season-long input.
Between-source disagreement is not a prediction interval. It omits shared model error, can be narrow when sources copy the same assumptions, and can be wide because dates or formats differ.
Calibration and backtesting
Forecast evaluation requires frozen preseason snapshots. Final revised projections cannot be scored as though they were available on draft day.
| Target | Recommended checks | Failure revealed |
|---|---|---|
| Games played and MPG | MAE, median absolute error, bias, quantile/interval coverage | Availability or rotation miss |
| Primitive per-game rates | MAE/RMSE by stat; bias by age, role, rookie status, team change, and injury return | Skill/rate miss |
| Season primitive totals | MAE plus decomposition into games, minutes, and rate | Whether a good rank hid the wrong mechanism |
| Binary events | Brier score and reliability bins for events such as opening-night availability or rotation membership | Misstated event probabilities |
| Full distributions | CRPS, interval coverage, average interval width, and tail checks | Uncalibrated or unhelpfully broad ranges |
| Category outcomes | Predicted versus realized category-win probabilities and matchup probabilities | Transform/objective miss |
| Points outcomes | Error under each exact scoring formula | Platform translation miss |
Gneiting, Balabdaoui, and Raftery define the forecasting goal as maximizing sharpness subject to calibration (2007 paper). A narrow interval is valuable only if it achieves its stated coverage. Reliability diagrams group predicted probabilities and compare them with observed frequencies; current scikit-learn documentation also warns that Brier and log loss mix calibration with other performance properties rather than measuring calibration alone (calibration guide).
Desk inference: calibration cohorts must be time-based and out-of-sample. Report veterans, rookies, traded players, injury returners, and low-minute players separately. A model can be globally calibrated while failing badly on the exact cases fantasy managers care about.
Consensus handling
Do this
- Freeze a source snapshot and its cutoff.
- Map identities, teams, horizon, units, and format into the canonical contract.
- Retain source GP and MPG before touching rates.
- Convert makes/attempts and counting primitives to a common per-active-game basis only where denominators are known.
- Exclude or quarantine stale, mislabelled, structurally incomplete, and wrong-format rows.
- Combine each primitive component using a robust median or trimmed mean as the default.
- Preserve every source estimate and decompose disagreement into games, minutes, rate, and scoring transformation.
- Weight a source only after out-of-sample evidence, shrink learned weights toward equal weighting, and cap dominance.
- Treat sources sharing an upstream projection feed or nearly identical snapshots as a correlated family, not independent votes.
- Rebuild per-game, totals, category, points, replacement, and league-specific ranks from the consensus primitives.
Forecast-combination research supports treating simple averages as strong baselines and emphasizes that dependence, instability, and weight estimation matter; see the broad forecast-combination review and the Federal Reserve discussion of forecast averaging under instability (Clark and McCracken). These are general forecasting sources, not basketball-specific accuracy claims.
Do not do this
- Average ordinal ranks from different formats.
- Call the median of expert ranks a stat projection.
- Use best/worst expert rank as a player ceiling/floor.
- count a stale page and its republisher as two independent models.
- infer attempts from percentage alone.
- mix per-game and totals after standardization.
- reward a source for a final update that incorporated most of the realized season.
- tune source weights and report performance on the same seasons.
- convert an analyst's rank into invented GP, MPG, or category lines.
FantasyPros' ECR illustrates the distinction. Its official method is a principled ordinal consensus that avoids arbitrary treatment of unranked players. It is still a consensus of rank sheets, not a consensus of games, minutes, or stat distributions.
Recommended encyclopedia outputs
Desk inference, proposed implementation:
- Maintain one canonical low/base/high primitive model per player with an information cutoff.
- Publish a declared reference nine-category per-game rank and season-total rank, plus transparent category components and the comparison population.
- Publish a declared reference points rank only after printing the scoring equation next to it.
- Add platform translators for Yahoo, ESPN, Sleeper, Fantrax, Ottoneu, and custom rules rather than presenting one generic points number.
- Add H2H category probability and rotisserie-threshold tools as roster-level layers, not as substitutions for the primitive player model.
- Record source-specific projections beside the encyclopedia estimate; never erase dissent.
- Keep ADP, expert rank, dynasty market value, redraft projection, and replacement surplus as separate concepts.
- Generate team minutes and player projections from the same roster snapshot, with each team's representative base rotation summing to 240 regulation minutes.
Audit gates before a rank is publishable
- Season, cutoff, horizon, format, and per-game/total unit are printed.
- GP and MPG are present or explicitly unknown.
- FG% and FT% contribution retain makes and attempts.
- Turnovers have the correct direction.
- Comparison population and replacement pool are declared.
- Exact points weights and nonlinear bonuses are declared.
- Source ranks are not being used as stat lines.
- Range type and coverage are labelled.
- Stale, dynamic, paywalled, and unavailable inputs are flagged.
- Consensus sources have been checked for common lineage and date mismatch.
- Model version and frozen source snapshots can be reconstructed.
- Team role assumptions match the dated depth-chart ledger.
Community and emerging-model caution
A March 2026 creator post about Courtside Orbit described H2H-category G-scores, Monte Carlo simulation, and opponent-aware tools (Reddit thread). In comments, the creator also acknowledged that packed-day projections did not yet distinguish starters from bench and that a future variance model remained planned. This is a valuable design lead and an equally valuable warning: sophisticated simulation does not repair an incorrect playable-lineup layer. It is community self-report, not independent validation.
Gaps at the 2026-07-18 cutoff
- No complete, publicly auditable 2026-27 multi-source primitive projection table with dated snapshots and documented weights was found.
- Hashtag, RotoWire, FantasyPros NBA ranks, and several secondary tools were still visibly tied to 2025-26 or an older update.
- Basketball Monster listed a 26-27 projection area but the public table was not accessible; the site said normal opening was expected around mid-August.
- ESPN's 2026-27 interactive page was dynamic and did not expose a reproducible public methodology or stable update stamp in static extraction.
- Subscriber and API-gated sources could not be audited for completeness, formulas, or current values from their public landing pages.
- No public basketball-specific accuracy archive was found that freezes multiple vendors' preseason GP, MPG, primitive stats, and intervals before opening night.
- Public source-lineage disclosures are incomplete, so independence among vendor projections often cannot be established.
- A stable early ADP feed and final 2026-27 schedule were not yet available for market and playable-games calibration.
Open questions
- Which sources will expose lawful, timestamped 2026-27 primitive projections after the schedule release, and can their snapshots be archived for later scoring?
- What exact reference points formula should the encyclopedia adopt while keeping platform translators authoritative?
- Which historical preseason snapshots are recoverable well enough to estimate out-of-sample source weights without survivorship or revision bias?
- How should category-win distributions model covariance among pace, minutes, shooting, and teammate availability without becoming too opaque to audit?
- What rosterable population and replacement band best represent the encyclopedia's default league, and how sensitive are ranks to that choice?