SP is the scarcest position by elite edge (+275); 1B is the deepest (+66).
"Catcher is thin" gets repeated every season and almost never measured. Measured, the picture is different: the position where an elite player beats what you can pick up for free by the widest margin is SP, and the position where he barely beats it at all is 1B.
Replacement is the average of the first three players at a position who would NOT be started in a twelve-team league, the best of what is sitting on waivers. The edge is what an elite player at that position gives you over him, and it is the only one of these numbers that changes a roster decision.
| Position | Startable | Replacement | Median starter | Elite | Elite edge |
|---|---|---|---|---|---|
| SP | 60 | 128 | 208 | 403 | +275 |
| OF | 36 | 221 | 267 | 478 | +257 |
| SS | 12 | 237 | 358 | 426 | +189 |
| 2B | 12 | 240 | 358 | 385 | +146 |
| 3B | 12 | 235 | 322 | 375 | +140 |
| C | 12 | 149 | 250 | 286 | +136 |
| RP | 24 | 87 | 119 | 155 | +68 |
| 1B | 12 | 323 | 378 | 389 | +66 |
A big edge means paying up is justified: the drop to what you would otherwise run out is steep. A small one means the position is deep and the premium is mostly reputation, at 1B the waiver player is worth 323 and the elite one 389, a difference of 66, which is not worth a high pick or a large trade.
The players carrying those edges.
| Position | Best available names |
|---|---|
| SP | [Shohei (Two-Way) Ohtani](#/player/660271), [Jacob Misiorowski](#/player/694819), [Dylan Cease](#/player/656302) |
| OF | [Yordan Alvarez](#/player/670541), [Riley Greene](#/player/682985), [Pete Crow-Armstrong](#/player/691718) |
| SS | [CJ Abrams](#/player/682928), [Elly De La Cruz](#/player/682829), [Bobby Witt Jr.](#/player/677951) |
| 2B | [Nico Hoerner](#/player/663538), [Ketel Marte](#/player/606466), [Brice Turang](#/player/668930) |
| 3B | [Junior Caminero](#/player/691406), [Miguel Vargas](#/player/678246), [Alex Bregman](#/player/608324) |
| C | [Ben Rice](#/player/700250), [Dillon Dingler](#/player/693307), [William Contreras](#/player/661388) |
| RP | [Mason Miller](#/player/695243), [Cade Smith](#/player/671922), [Louis Varland](#/player/686973) |
| 1B | [Ben Rice](#/player/700250), [Matt Olson](#/player/621566), [Alec Burleson](#/player/676475) |
Alec Burleson is the elite first baseman here, and he scores 389. The best first baseman nobody starts scores 323. That is the whole argument. Sixty-six points separate the top of the position from the guy you can add on a Tuesday, and the median starter at 378 is closer to Burleson than Burleson is to anything special. First base is not scarce. It is not even mildly scarce. It is the one spot on the roster where the difference between doing the work and not doing the work is almost nothing.
The mechanism is that first base has 102 eligible players and almost all of them hit. The position's floor is the highest on the board by a wide margin: replacement at first (323) is higher than the median starter at catcher (250), higher than replacement at every other spot including the outfield (221). When the worst startable option is that good, being elite there buys you very little. Anyone paying a premium for a first baseman is paying for a name and a counting-stat profile the free agent pool replicates.
The strongest case against me is that these are projections, and projections compress first basemen more than reality does. The model does not know which of those 102 bats is about to hit 40 home runs, and a flat-looking position on paper can be a top-heavy position in October. There is also a roster-construction wrinkle: replacement level assumes the waiver first baseman is actually there in your league, and in a competitive 12-teamer the 323-level bat may already be someone's corner infielder. If that is true, your real replacement is lower and the edge is bigger than +66. So test it. Look at your own wire right now. If nothing within shouting distance of a startable first baseman is unrostered, treat the position as ordinary rather than free. If three are sitting there, punt it entirely and never think about it again.
Where the money goes is starting pitching and the outfield, but for different reasons. Cease at 403 against a replacement of 128 is a +275 edge, the largest on the board, and that gap is built on a floor collapse rather than a ceiling. The median starter at 208 is already 80 points clear of replacement. What that means practically: the back of your rotation is where leagues are lost, not the front. Every week you run a 128-level arm out because you need innings, you are giving away more than a full first-base upgrade. I would rather own six pitchers in the 208 range than Cease and four arms scraping the floor.
The outfield is the subtler case, and the one I would actually spend on. Pete Crow-Armstrong at 478 is the highest score in the data, and the gap from the median outfield starter (267) to the top (478) is 211 points, larger than the same gap at any other position. With 297 eligible you have to start three of them, so the middle of your outfield is going to look like 267 whether you like it or not. The elite name is what breaks that. Buy one, then fill.
The decision is simple. Do not spend on first base and do not spend on relief, where an elite arm at 155 beats replacement by 68 across 388 eligible pitchers. Spend at the top of the outfield, spend on rotation depth rather than a rotation ace, and take shortstop opportunistically: replacement 237 to median 358 is a 121-point cliff, and falling off it costs more than missing on Witt.
Replacement level is what you can have for nothing. That is the correct baseline for a roster decision, a player is worth what he gives you over the alternative you would otherwise start, not what he produces in isolation.
Elite is the third-best player at the position rather than the first. The best player is usually unobtainable and using him would make every position look scarce; the third is someone a manager in a twelve-team league actually owns.
Players count at every position they qualify for, because that is how a roster uses them. Using only a primary position badly undercounts outfielders and depends on an ordering that carries no meaning.
The obvious version of this measure, how far value falls from the best player to the last startable one, mostly measures how good the best player is. Starting pitcher looks like the steepest cliff in baseball by that method, which says more about the top arm than about what you can stream.
Curated picks where the model has the highest decision conviction. Updated every render.
Run rankings to populate Market Edge.
Run rankings first.
Mark a player as drafted to get a recommendation.
Studies and awards - the research-side surfaces of the managr platform.
Live snapshot of the projection system.
Backtest, parsimony, ablation, and benchmark - one synthesized report. Output renders in Validation.
Final Value = Raw Projection × MasterConfidence × TeamContext. Each layer answers one question - no overlap.
Recency weighting: prior seasons contribute by recency (more recent = more weight) and sample size (more PA = more weight).
Shrinkage: observed rates regress toward position-specific population means by an amount inversely proportional to sample size. Catches small-sample outliers.
Quality-of-contact adjustments: xwOBA, barrel rate, and bat-tracking metrics replace luck-driven outcome stats with skill-driven ones.
PT modeling: projected PA is anchored to workload tier (full-time, regular, platoon, backup catcher) using historical role distributions.
Monte Carlo: N simulated seasons per player using projected mean + uncertainty, producing P10 / P50 / P90 distribution and bust%.
Confidence layers: four orthogonal multipliers: Roster (depth chart), Role (PT certainty), Sample (career PA), Market (consensus alignment). The Audit tab shows all four for every player.
VAR: Value Above Replacement at the player's primary position. Replacement levels are floored per position so SS scarcity doesn't artificially inflate stable middle infielders.
Tune component weights against historical seasons. Stored in session.
-
-
-
Walk-forward backtests, calibration quality, and benchmark comparisons. Run walk-forward first - most tools depend on its pair pool.
Projects every historical batter-season from prior data only. Reports RMSE, MAE, Spearman ρ, hit rates. Populates the pair pool other validators use.
Walk-forward over historical seasons. Reports RMSE, MAE, Spearman ρ, top-N hit rates.
Distribution, uncertainty, per-archetype performance, calibrated tiers, draft sim.
Load any rival projection or ADP source. Auto-detects player_name + rank / adp / projected.
Where the model finds value the market is missing.
Curated picks from current rankings.
Where the model has measurable advantage.
The safety layer. Realism, false-confidence, forensics - what to remove.
The most important governance tools. Output renders in Validation.
Per-era ablation, error clusters, bias, correlations, removals. Each tells you what to remove. Run walk-forward first.
The smallest model that retains predictive power. Every feature beats the burden of proof.
Live pipeline status and data freshness.
-
Last known status of each underlying data source.
Source status will appear once data has been refreshed.
Issues from the most recent data refresh, if any.
-
MVP, Cy Young, Rookie of the Year - historical winners with their stats, plus model-predicted current-season winners.
Predictions from the current 2026 projection model. Top candidates per award based on projected fantasy points + advanced-stat underlying. League assignment from current team.
Coaching rosters for every MLB team plus a multi-year Fantasy Points Above Average ranking of every MLB coach.
Findings article + all-time top-100 performer leaderboard from every World Baseball Classic (2006-2026).
A growing collection of fantasy baseball studies. Each card opens a detail page with the methodology, the data sources, and (where the data exists today) live computed findings.
Active player injuries, refreshed from upstream sources.
| Player | Team | Pos | Status | Explanation | Replacement |
|---|
Enter players for each side, one per line. Values use your scoring weights and injury-adjusted projections.
| Player | Pos | ProjPts | Status |
|---|
| Player | Pos | ProjPts | Status |
|---|
Every signal, formula, and data source the model uses for player evaluation - organized by product.
Configure your draft session. This stays on this device only.