The Legend
Every number on this site, defined in plain language. The methodology page explains how the signals are built and validated; this page explains what they mean when you meet one.
No baseball jargon left behind
The FVR signals
The numbers we compute ourselves. These are the product.
- EV95
95th-percentile exit velocity (mph) — how hard he hits it at his best
A hitter's 95th-percentile exit velocity, in mph — how hard he hits the ball when he really connects. We use the 95th percentile instead of the average because top-of-range contact is the skill and mishits dilute the average. It is the most stable metric in our engine (year-over-year r = 0.88), which means it travels forward in time better than any batting average. In our current MLB sample the lightest regulars sit near 98–100 and the loudest near 112.
- EV95 — last season
The same hitter's EV95 in the previous season, for the men who qualified in both
His EV95 last year, printed beside his EV95 this year. It is the only column on the Baseline that says anything about prediction — a leaderboard of the loudest bats shows that the metric finds the men you would have named, which is a different claim entirely. Two seasons on one row is the claim: if the number travels, it is a skill; if it scatters, it was a mood. Both seasons must clear 100 balls in play to appear here, because a fragment of a season beside a whole one would answer the question dishonestly. Across every pair we have, the correlation is r = 0.88.
- Hold
Change in EV95 against last season, in mph — a difference, not a speed
This season's EV95 minus last season's, in mph. Positive means he is hitting the ball harder than he did a year ago. Read it as a difference and never as a speed: +1.4 is a gain of a mph and a half, not a hitter, and it cannot be compared with the EV95 column beside it. Most men land near zero, and that is the point of the column — the noise in it is what a real change has to beat. A large hold is worth a look in either direction, but it is a season in progress, not a verdict.
- The shape of the season
The weekly trailing EV95 line — the top of his range over time, not his average, so it can fall while his contact improves
The sparkline on a player page: his EV95 recomputed each week over a trailing window of balls in play, so the season has a shape instead of one number. Read it as the TOP of his range and never as the middle, because that is where a line like this misleads. A falling line does not mean he is hitting the ball worse. His hardest contact can come down in the same weeks his typical contact goes up — they are different questions, and only one of them is on the chart. We have watched it happen through the best month of a hitter's professional life: the trailing line fell 2.7 mph while his mean exit velocity over the same windows reached a season high. So "higher EV95 is better" is true, and "a falling EV95 line means he got worse" is a different claim that is not. The boards rank on the full-season figure, never on the trailing one.
- OWED / SQUARE / PAID
Whether his results have kept up with his contact, run behind it, or run ahead of it
The Baseline's one-word read on where a hitter's line sits against the contact behind it, taken straight off his park-adjusted luck gap. OWED — his contact has outrun his results, and the box score owes him. SQUARE — the line and the bat agree. PAID — his results have outrun his contact, and he has been paid for balls that were not struck well enough to keep paying. The cut is ±0.030 of contact value, about six-tenths of a standard deviation of the league, and it is a fixed line rather than a share of the field — a share would guarantee the same number of lucky hitters every night whether or not the league had any. It is a description, not a call: a call gets filed to the Ledger with a metric, a threshold and a window.
- Park effect
How much contact value a park turns the same batted ball into, against what the launch physics expected
Take every ball put in play at a park, ask the launch-speed / launch-angle grid what that ball is worth league-wide, and average the difference. Positive: this park converts the same contact into more than the physics expected. Negative: it eats it. The batted-ball quality arriving at every park is close to league average — what differs is what the park does with it. The scale is value per ball in play on the wOBA weights — an out 0, a single 0.9, a double 1.25, a triple 1.6, a home run 2. It is NOT runs. It carries no favor on its own: a park that inflates contact is good news for the hitter and bad news for the pitcher, so we do not rank anyone on it. It is REGRESSED toward zero on a 2,000-ball prior, because a single park-season is only about 3,900 balls in play and the raw average of that many is mostly noise — which is why the count is always printed beside it. It is the same number the engine subtracts to park-adjust every hitter's luck gap; there is one definition, not a public one and a private one.
- Luck gap (park-adjusted)
Results on contact minus what the launch physics support, park-adjusted
Actual results on contact minus what the launch physics say those batted balls should have produced, adjusted for park. Positive: results running ahead of the contact quality underneath them — fade shape. Negative: contact getting underpaid — breakout shape. The gap is mostly transient. It tends to close, in both directions, which is exactly what makes it a signal. The scale: value per ball in play on the wOBA weights — an out 0, a single 0.9, a double 1.25, a triple 1.6, a home run 2. So a gap of 0.042 is 0.042 of wOBA-on-contact. It is NOT 0.042 runs, and our own One Chart called it runs until 2026-07-14.
- Overlay score
Higher means the bat is real and the numbers haven't caught up yet
It combines contact quality (how hard he hits it) with the luck gap (how little he has been paid for it) into one number, scaled so that higher means more room to catch up. On our pre-registered out-of-sample holdout, the top quintile of this score outgained the bottom by +1.15 annualized WAR. Two boundaries, and we mean both. It ranks who is likely to OUT-PERFORM his current value — not who is best; the best players in baseball are already paid for their contact and score low here. And it is a rank, not a prediction: it does not say he is due, because "due" claims a thing will happen and claims it will happen soon, and we do not say that without filing a call — a metric, a threshold, a deadline, and a public verdict. The gap tends to close. It does not owe him anything.
- Deserved (xVal)
What his contact was worth — the value his batted balls earned, per ball in play
What a hitter's contact DESERVED. Take every ball he put in play, ask what a ball struck that hard, at that angle, in that park is worth on average, and average the answers. It is the line he earned, before a single fielder, bounce or gust had a say in whether he got it. The scale is value on contact, where an out 0, a single 0.9, a double 1.25, a triple 1.6, a home run 2 — so it is not runs and it is not batting average; a .450 here means his average ball in play was worth about half a double. Set it against GOT and the difference is the luck gap.
- Got (aVal)
What his contact actually produced, per ball in play — on the same scale as Deserved
What a hitter's contact actually PRODUCED — the same average, over the same balls, using what really happened to each one instead of what it was worth. Deliberately on the identical scale as DESERVED, because the only reason both are printed is so you can subtract one from the other: that difference is the luck gap, defined below, and it is the quantity every board on this site ranks. Above his deserved line he has been paid more than he struck for; below it, less.
- xVal (MLB grid)
A Triple-A hitter's contact graded on the major-league value grid
For AAA hitters: their batted balls graded on the MLB value grid — as if each ball in play had been struck in a big-league park. It projects contact quality across the promotion. Honest boundary: our signals are holdout-validated at the MLB level; the AAA application is the frontier. It is a TRANSLATION, not the thing: it does not share a scale with a major-leaguer's DESERVED and the engine refuses to difference the two.
- Stuff-lite
Our pitch-quality grade — stability-validated, not outcome-validated. Stuff is not command.
Our pitch-quality grade, built from physical pitch characteristics and calibrated on MLB pitches. It is stability-validated (year-over-year r = 0.87) but not yet outcome-validated, which is why pitchers are watchlist rows, never calls. And stuff is not command.
- RA9
Runs allowed per nine — ALL runs, not just earned. Higher is worse, and it is not ERA.
Runs allowed per nine innings — every run that scores while he is on the mound, earned or not. It is the engine's run scale, and it is deliberately NOT ERA: ERA forgives the runs an official scorer rules unearned, and we don't, because a run is a run to the team trying to win. For the same innings a pitcher's RA9 sits at or above his ERA, so do not read the two as one number. It is one of the inverted metrics — higher is worse, however English reads it — and it is what an arm call is judged on: the runs he actually gives up across the window.
- FIP
Fielding-independent pitching — what his strikeouts, walks and homers alone say he earned, on our RA9 scale.
Fielding-Independent Pitching — what a pitcher's own strikeouts, walks, and home runs say he earned, stripped of the seven fielders who handle everything hit into play. The idea, called DIPS, is that a pitcher controls those three true outcomes far more than what happens once a ball is put in play, so they carry more information about his next runs than his runs themselves do. We lift our FIP onto the RA9 scale with a season constant (about +3.5) applied before any comparison, so a 4.48 FIP reads straight against a 4.48 RA9 — do not set it against a FanGraphs FIP, which sits on the lower ERA scale and shows a different number. Higher is worse. Our study H-ARMGAP found it carries real information about a pitcher's next runs beyond his ERA, but out of sample it came in co-equal to ERA, not ahead of it — which is why we file arm calls and rank no pitcher board.
- Arm luck gap
RA9 minus FIP — how far his runs have run below (lucky) or above (unlucky) his own components.
A pitcher's RA9 minus his FIP — the mirror of the hitter's luck gap, with the sign flipped because runs are the inverted kind of number. NEGATIVE means his runs have run BELOW his fielding-independent line: he has prevented more than his strikeouts, walks, and homers alone predict, because the sequencing, the strand rate, and the defense behind him have broken his way. That is the lucky, fade-shaped case, and the engine expects the runs to climb back toward the components. POSITIVE is the reverse — runs above the arm, unlucky, a buy shape. We only read the gap as luck when his FIP sits mid-pack; when his runs AND his components are both extreme it is mechanics rather than luck, and the engine sets it aside. It is the whole reason we can file a fade on a pitcher in the best run-prevention season of his life.
- RE24 (run expectancy)
Run expectancy across the 24 base-out states — the run accounting under every number we print
The run accounting underneath everything we print. Before each plate appearance an inning already has a value: the runs an average team scores from that base-and-out state to the end of the half. Bases empty with nobody out is worth about half a run; bases loaded with nobody out, about 2.3. There are twenty-four such states — three out-counts times eight arrangements of runners — which is where the 24 comes from. RE24 credits a batter with the change he causes, plus any runs that actually scored on the play. A single that lifts the inning from 0.50 to 1.10 pays him +0.60. A strikeout that drops it from 0.50 to 0.27 charges him −0.23. That is the whole idea, and it is why RE24 sees what a batting average cannot: the same strikeout costs about 0.9 runs with two in scoring position and one out, and about 0.16 with the bases empty. Same line in the box score, six times the damage. We compute it ourselves from public play-by-play, rebuilding the run-expectancy table from each league's own season so that MLB and AAA never share a baseline; our 2024 values correlate at 0.975 with FanGraphs'. A single game's RE24 is what we call night value. It works the same on the mound, from the other side of the ball: a pitcher is scored by the swings in expectancy the batting team causes, so a run he keeps off the board is a run he's worth. We flip the sign so a good start reads positive — a hitter's value and a pitcher's live on one runs scale.
- Night value
What his night was worth in runs (RE24). Negative is normal.
What a player's night was worth in runs, by our own RE24 accounting. Every plate appearance moves the inning's run expectancy — the runs an average team scores from that base-and-out state to the end of the half — and the player is credited the difference, plus any runs that scored on the play. Raise it and you're paid; make an out and you're charged. A pitcher's night value is run prevention on the same scale: the runs he kept off the board versus an average start — same currency as a hitter's, opposite side of the ball. Negative is normal. An out always costs expectancy, so an 0-for-4 is negative before anyone asks how it looked, and roughly half of any night's lines sit below zero — zero is an average night, not a bad one. What varies is the situation: a strikeout with two in scoring position and one out costs about 0.9 runs; the same strikeout with the bases empty costs about 0.16. Same out in the box score, six times the damage. (A sacrifice fly is a small negative too: it scores a run but burns an out and leaves the inning worth less than it found it.) That gap is the whole reason the Overnight ranks by this instead of by hits. The run-expectancy table is rebuilt from each league's own season, so MLB and AAA never share a baseline.
- Count run value
What a called ball or strike is worth — and it depends on the count. The engine behind an umpire's run favor on a Blue Note.
A called ball or strike is not worth the same everywhere — its value depends on the count. A called strike on 3-2 ends the at-bat in a strikeout; the same strike on 0-0 barely moves the needle. So we built a table of what a plate appearance is worth from each of the twelve ball-strike counts (0-0 through 3-2), with a walk waiting on the fourth ball and an out on the third strike, averaged over roughly seven million pitches since 2015. The table has the shape every fan already feels in their gut: 3-0 is the hitter's count and worth the most, 0-2 the pitcher's and worth the least. When an umpire misses a call, we price the miss by the gap between the count his call produced and the count the correct call would have — so a missed strike three, a strikeout erased and a batter handed life, is worth far more than a missed ball on 3-0. That gap, summed and signed to the team it helped, is the run favor printed on every Blue Note. It is the same linear-weight run accounting as RE24, read down the count instead of across the bases — and, like everything here, we compute it ourselves from public play-by-play. Nobody handed it to us.
- Balls in play (BIP)
Sample size — how many batted balls the signals are measured on
Sample size: how many batted balls a hitter's signals are measured on this season. More is more trustworthy; under 100 we flag the row ourselves — see the dagger below.
- Pitches
Sample size for the stuff grade — tracked pitches
Sample size for the stuff grade: how many tracked pitches the grade is computed from. Unlike a results stat, this one settles fast — stuff is measured from the physical shape of a pitch, not from what hitters did to it, so a few hundred pitches is already a grade rather than a rumor. That is why no thin-sample dagger hangs on it.
- Thin sample (†)
The row hasn't earned its numbers: under 20 IP, 100 balls in play, or 20 games
A dagger on a sample means the row hasn't earned its numbers: under 20 innings, under 100 balls in play, or under 20 games. The line beside it is a rumor, not a reading — an ERA over fourteen innings will tell you almost anything you want to hear. We could quietly rank those rows and let you assume they were solid. We flag them instead, and leave them on the board, because hiding a thin row is the same lie as trusting it.
- On track / behind pace
Where an open call is now, against where the model expected it by now — a progress reading, not a forecast
A call says a number will move by a threshold before a date. This is how far it has actually moved, against how far the model expected it to have moved BY NOW. The expectation is measured in BALLS IN PLAY, not in days, and that is the whole trick: the threshold itself was set by assuming a season-to-date average can only move as far as the new evidence dilutes it. So a hitter who has not batted is not behind — he is waiting, and we say so. Grading him against a calendar would judge him for days in which he never swung. Under 25 balls in play we print no grade at all: we simulated 1,162 calls under this rule across our six training seasons, and below that sample the reading disagrees with the eventual verdict a third to nearly half the time (33% at 10–24 balls, 42% under 10) — a coin flip with a color. IT IS NOT A PREDICTION. Even above the floor it disagrees with the final result about a quarter of the time. It tells you where he is, not how it ends. The verdict is the verdict, and it lands on the window's last day whatever this says.
- Last 14 days
His line over the trailing two weeks, with the date it runs through
The player's line over the trailing two weeks, straight from MLB's public data. The window prints the date it runs THROUGH, because fourteen days ending we-won't-say-when is a duration and not a window — and a duration can never look stale. If the nightly enrichment step fails it warns rather than dying, so the line can be a run or two behind; the through-date is how you can tell, and it is why we print it. Absent when a player hasn't appeared in the window.
Context numbers
Numbers we borrow, with the source named.
- Park factor
How a ballpark changes an outcome, against a league average of 100 — and there is never just one of them
An index for how often something happens in a park against how often it happens league-wide, where 100 is average, 120 is twenty percent more and 85 is fifteen percent less. THERE IS NO SUCH THING AS ONE PARK FACTOR, and printing a single number is the reason we show a whole row. Coors Field this season is 119 for runs and 111 for home runs and 237 for TRIPLES — the thin air is a small part of it and the enormous outfield is most of it, and a reader handed 'Coors: 119' would have been told the least interesting thing about the building. THE WINDOW IS PART OF THE NUMBER. A single season and a three-year rolling view are different measurements of the same park and disagree by about three points typically; both are printed, each labeled with the years it covers. A park without three seasons of history has no rolling figure at all and we print that absence rather than filling it with 100 — the park that happens to affect is Sutter Health Park, which is the most extreme park in baseball. AND ONE SEASON IS NOISY. Across 2022–2026 a park's own single-season contact index moves by a median of three points with the walls standing still; Globe Life Field ran 103, 107, 95, 90 and 98. Each park page prints its own band so a single figure is never read as more precise than it is. Our own park effect, printed underneath, is a DIFFERENT quantity on a different scale — value on contact per ball in play, the amount we subtract from every luck gap measured there — and it cannot be added to or subtracted from any index. The two can even point opposite ways, because the index counts all offense while ours is only the residual against what the batted balls deserved.
- The percentile strip
Where he stands among qualified hitters — and the pool is named, counted and dated.
Four of his contact numbers, each drawn as a place among every qualified major-league hitter rather than as a raw figure. The pool is the same one the boards are selected out of: hitters with at least 100 balls in play this season. Its size is printed on the module, because a percentile without a denominator is a rank pretending to be a measurement. RIGHT IS ALWAYS BETTER, on every row, and that is why one row is drawn flipped: the luck gap is a number where higher is worse (his results have outrun his contact), so a hitter with the lowest gap in the league sits at the right-hand end. The printed value falls while the dot moves right, and the module says FLIPPED on that row rather than letting the geometry quietly argue with the number. The direction is not decided by this page — it is read out of the engine's own metric registry, the same declaration every board colors its arrows from. We print 1 to 99 and never 0 or 100: the very hardest hitter in the league is at the top of the men measured so far, which is not the same as a ceiling.
- The ghost marker
The hollow dot — where he stood 30 days ago, against the league as it was then.
The solid dot is today. The hollow dot is the same number thirty days ago, and the line between them is the move. It is a real rebuild of that evening, not today's answer with his recent games removed: the value grid, the park adjustments and the qualifying field are all recomputed from the balls that had actually been hit by then. That distinction is worth up to five percentile points on the luck-gap row, because the grid and the park factors were different numbers a month ago. SOME HITTERS HAVE NO HOLLOW DOT, and that is information rather than a gap: it means he had not reached 100 balls in play a month ago, so there is no earlier place to mark. The module says so in words. A zero would have claimed he sat at the bottom of the league, which is a different fact entirely. The earlier field is also smaller for the same reason, so both counts are printed — his place then was a place among fewer men.
- wOBA (the value scale)
The scale our contact numbers are in — not runs. A single is 0.9, a homer 2.0, an out 0.
The scale the luck gap and the overlay are measured in, and the reason a gap of 0.042 is not 0.042 runs. Weighted On-Base Average pays each outcome what it is actually worth to an offense, instead of pretending a single and a home run are the same event (batting average) or that a home run is four singles (slugging). Our contact numbers use the wOBA weights: an out 0, a single 0.9, a double 1.25, a triple 1.6, a home run 2. So 'value on contact' is per ball in play, on that scale. IT IS NOT RUNS, and we printed it as runs on our own One Chart until 2026-07-14 — a run value would put a single near 0.47 and a homer near 1.40, which is a different number entirely. The number was right and the word beside it was wrong, which is the only kind of error that gets past everybody.
- Correlation (r)
How well this year predicts next year. 1.0 = perfectly; 0 = not at all.
The letter r, printed all over this site, and the number that decides which of our signals you should trust. It measures how tightly two things move together, from 1.0 (when one goes up the other always does) through 0 (knowing one tells you nothing about the other) to −1.0 (they move exactly opposite). It is the whole argument in one letter. A hitter's hard-contact number this year predicts his next year at r = 0.88 — close to a fingerprint. His luck gap predicts his next year at r = 0.27 — close to nothing. That is why we bet on the first and against the second, and it is the single fact the engine rests on. It is not a percentage and it is not a probability. It says how much of the pattern travels, not how often we are right.
- WPA (win probability added)
The win-scale sibling of RE24 — how much each play swung the team's chance of winning. Our own calc.
Win Probability Added — the win-scale sibling of RE24. Where RE24 credits a batter the RUNS his play added to the inning, WPA credits him the WIN PROBABILITY it added to the game — and the same plate appearance is worth far more in a tie in the ninth than up eight in the second, because only the late-and-close one actually moves who wins. It is leverage made into a number. We compute it ourselves from public play-by-play, the same pipeline as our run expectancy; cross-checked against FanGraphs for 2024 qualified batters it correlates at 0.905. It is context, not a signal the boards rank on: a season's WPA says who has already helped win games, not who is mispriced going forward. That is the whole distinction the site is built on — this is a result, and the boards trade in what the result hasn't caught up to yet.
- Win expectancy
The share of games that have been won from exactly this situation — always stated for the HOME team
Given the inning, the half, the outs, who is on which base and the score, win expectancy is the share of real games that ended in a win from exactly that situation. Ours is empirical, not modeled: we count what happened across every season in our lake and read the answer off the pile, with a coarser inning/score table standing in where a situation is too rare to trust on its own. Extra innings since 2020 are kept separate, because a tenth inning that starts with a runner already on second is not the same game state as one that doesn't. IT IS ALWAYS THE HOME TEAM'S NUMBER. 0.62 means the home side wins 62% of the time from here — so the very same 0.62 is bad news for the visitors, and a road hitter having a wonderful night drives it DOWN. It describes a GAME, never a player, and nobody is ranked on it.
- Leverage index
How much the game can still swing on this one pitch. The average moment is 1.00
How much is riding on this moment. We take every play that has ever left a given situation, measure how far it moved win expectancy on average, and scale the whole thing so the typical moment in a typical game comes out at 1.00. Two out in the ninth of a one-run game runs high; up eight in the second runs near zero. IT IS A WEIGHT, NOT A GRADE. A high number is not a compliment and a low one is not a criticism — it is the size of the stage, not the quality of the performance, and it says nothing about the man standing on it. It is the multiplier underneath every clutch statistic on this site, which is why we print it rather than quietly folding it in.
- Game Excitement Index
How much the win probability moved, all night, added up — and scaled to a nine-inning game
Add up every swing in win expectancy across a whole ballgame — each one counted regardless of which way it went — and you have the Game Excitement Index. A game that was 4-0 after two and stayed there barely moves; a game that changed hands four times moves constantly, and the number is the total distance traveled. It is scaled to nine innings, because otherwise it would quietly be a ranking of how LONG games were: a thirteen-inning game accumulates more of everything simply by lasting longer. A game shortened below seven innings gets no index at all rather than a scaled-up one, because multiplying a game we only half-saw is how you manufacture excitement out of rain. IT DESCRIBES A GAME, NEVER A PLAYER. A wild night was not a good night for anyone in particular — the losing pitcher was in it too — so nobody is ranked on it and it is not colored like a signal. Across the 2026 season the middle of the distribution sits near 2.6; a quiet game runs under 1.5, a memorable one over 4.1.
- Comeback Factor
One divided by the winner's worst moment — how close the team that won came to losing
Find the lowest the eventual WINNER's win probability ever got, and take one divided by it. A team that bottomed out at a 1-in-8 chance and won anyway scores 8. A team that led wire to wire still bottoms out somewhere near where it started, so it scores about 2 — which is the number's way of saying there was no comeback, not that there was a small one. WE CAP IT, AND WE SAY SO. The arithmetic runs to enormous figures — one 2026 game computes to 263 — but the low end of a win-expectancy table is built on a few dozen observed games, and at those odds a single extra game in the pile moves the answer by hundreds. A cell reading zero means nobody came back from there in about fifty tries; it does not mean nobody can. So past the point the reciprocal stops measuring anything we print a plus sign instead of a decimal point, and when we rank comebacks we rank them on how low the winner actually got — never on this number, whose ordering at the top is an artifact of the division rather than a fact about the games.
- Biggest swing
The single play that moved the game's outcome furthest, and what was riding on it
Of every plate appearance in the game, the one that moved win expectancy the furthest. It is not the loudest play or the longest ball — a two-run single with two out in the ninth of a one-run game outweighs a three-run homer in a blowout, because only one of them changed who was going to win. The leverage printed beside it is how much was riding on that moment before it happened — see WPA and leverage index, both on this page.
- Hardest ball of the game
The top exit velocity a hitter produced in one game — his best swing, not his typical one
The fastest a ball came off his bat in a single game, in miles per hour. One number, from one swing: the night's best, not its average. IT IS NOT EV95. Our EV95 is a whole SEASON's 95th percentile — where a hitter lives when he really connects, across hundreds of batted balls. This is one game's single hardest ball. Both are printed in miles per hour and they are not the same quantity, so the engine refuses to subtract one from the other: a man whose season EV95 is 104 and who hit 107 tonight has not gained three miles an hour of anything. When we forecast this number in advance, it is graded against the actual hardest ball of that same game — like against like, in the metric's own unit.
- The Drift
Who moved on the boards since last night, and which way
What changed on the boards overnight — who climbed, who fell, who arrived, who dropped off. The boards are rebuilt every night from that night's games, so a rank is a photograph, not a verdict, and the Drift is the movement between two photographs. READ THE DIRECTION AGAINST THE BOARD, NOT AGAINST YOUR INSTINCT. A climb on the Breakout board means the engine likes him more. A climb on the Fade board means it likes him LESS — he is further into the territory we bet against. We printed a Fever Report that got this exactly backwards (No. 004, and the correction rides above it forever), which is why the color on every arrow follows the engine's read rather than the arrow's direction.
- The Index
Tracked, not flagged — the four Index wings
Tracked, not flagged. Four wings, all data-defined and refreshed nightly: the top 25 qualified bats by season WAR (MLB's calculation), the top 10 pitchers by the same — tracked ungraded, because our arm signals aren't outcome-validated yet — the consensus top 25 prospects (FanGraphs Board, snapshotted weekly), each shown next to what our engine grades, and the milestone chasers, who join while the chase is hot and drop out when it cools (their pages say so, and the countdown is on the Chase). Every Index page carries a computed explanation of why no board flagged him. A flag means the engine found a mispricing; the Index means we're watching. The distinction is the product.
- The Wire
What X is saying about him this week. Chatter, not signal.
Short summaries of what X is saying about a player — on the field and on cardboard — over the trailing week. Built by searching X posts date-scoped to that window (summarized by Grok, xAI); when there are fewer than a handful of relevant posts, the track reads quiet rather than inventing a take, and a summary is never allowed to draw on anything older than the window. Every strip carries its as-of date. Tones: ▲ hot, △ warm, ▼ cold, ▬ quiet. It is chatter, not signal — the boards do not read it and it does not move a call.
- WAR (season · MLB calc)
Wins Above Replacement — MLB's own calculation, not ours
Wins Above Replacement — a player's total value versus a replacement-level fill-in, denominated in wins. Rough guide: 2 is a solid regular, 4 an All-Star case, 6+ an MVP conversation. Not ours: the season WAR on player pages is MLB's own calculation, pulled from the same public API as everything else and refreshed nightly. When a ledger call cites WAR it uses FanGraphs' version and says so — the flavors differ by a few tenths, which is why we always name the source.
- OPS
On-base plus slugging — the league's own line, not an FVR signal
On-base plus slugging — the back-of-the-card summary of what a hitter has actually produced. Rough guide: .700 is light, .800 is a good regular, .900+ is a middle-of-the-order bat. Not ours: it is MLB's own line, and it is not an input to any FVR signal. It sits on the boards because every board ranks a gap between what a hitter's contact deserves and what he has gotten — and OPS is the half of that gap the market can already see. On the breakout board, a fat EV95 beside a thin OPS is the entire thesis in one row.
- Sprint speed
Feet per second on his best runs — Statcast's, not ours. Printed on the Fade board; never ranked on.
How fast a man runs, in feet per second, on his best competitive runs — Statcast's measurement, not ours. It sits on the Fade board because it explains that board: our expectation model grades a batted ball on how it was struck, and it cannot see legs, so a fast man beats it every year (the correlation between sprint speed and our luck gap has run about +0.3 in each of seven seasons). His gap is fat partly because he can run. You should be able to see that. What we do NOT do is rank on it: we built the corrected board — the luck gap with speed subtracted out — tested it, and it picked WORSE fade candidates than the plain gap did, in both test years. So the number is printed and the engine keeps its hands off it. Rough scale: 27.3 ft/s is average, 30+ is elite, under 26 is a catcher. Both receipts are on the methodology page, the one that worked and the one that didn't.
- ERA
Earned run average — the league's own line, not an FVR signal
Earned run average — runs allowed per nine innings. Not ours, and deliberately printed next to the stuff grade on the AAA arms board: stuff is not command, so a high grade beside a fat ERA is exactly the thing our pitcher signals cannot see. We show it rather than hide it. Treat both with the sample beside them — an ERA over twenty innings is a rumor.
Ledger terms
The vocabulary of being on the record.
- Call
A falsifiable prediction: metric, threshold, window, timestamp
A falsifiable prediction: filed with a metric, a threshold, a window, and a timestamp. Nothing about a call is edited after filing.
- Metric
The quantity a call is judged on
The quantity a call is judged on. Currently three kinds: results on contact vs baseline, WAR added from filing (FanGraphs WAR accumulated after the filing timestamp), and MLB debut by window end. “Results on contact” is his actual value on contact — what the bat really produced — measured against where it stood at the filing timestamp. It is NOT park-adjusted, and this page said it was until 2026-07-14. The boards RANK on the park-adjusted gap, so that a ballpark never decides who gets flagged; a call RESOLVES on what actually happened to him. Those are different jobs and we should have said so.
- Threshold
The number the metric must clear for the call to be a HIT
The number the metric must clear for the call to be a HIT.
- Baseline
Where the metric stood at the moment of filing
Where the metric stood at the moment of filing — the starting line the threshold is measured from.
- Window
The date the call resolves. No extensions.
The date the call resolves. No extensions, no exceptions.
- Resolves by computation
The engine computes the metric and stamps HIT or MISS
When the window closes, the engine computes the metric and stamps HIT or MISS. Nobody argues, and nobody grades their own homework.
- HIT · MISS · OPEN
Resolved for us; resolved against us; window still open
Resolved in our favor; resolved against us; window still open. The record on every page counts all three, because a hit rate with the misses removed is marketing, not measurement.
- Correction
Errors are appended in public; the original filing stands
If we discover an error mid-window, the correction is appended in public and noted on the call. The original filing stays as filed.
Call archetypes
The direction of a call — which way we are betting the number moves. A different question from whether it hit.
- Breakout
A bet his results RISE — contact quality running ahead of results
A call that the player improves: his contact quality is running ahead of his results (an underpaid, negative luck gap), so we bet the results catch up. A bet UP.
- Fade
A bet his results FALL — results running ahead of contact quality
A call that the player regresses: his results are running ahead of the contact underneath them (an overpaid, positive luck gap), so we bet the results come back down. A bet DOWN. On a pitcher, an ERA sitting under a near-normal FIP is the same shape. A fade is not bad news about us — it is the engine easing off the player.
- Buy-low
An undervalued player we bet the market re-rates upward
Breakout-shaped, framed by the market: a player the field is underrating, where we bet the consensus catches up. A bet UP on perception as much as on production.
- Pre-consensus
We rank him ahead of where the consensus (e.g. FanGraphs) has him
A call filed AHEAD of the consensus — we rank a prospect above where the public boards (FanGraphs, the industry lists) have him, and bet the field moves toward us. The claim is about being early, and it is timestamped so the catch-up is checkable.
One pitch, as thrown
The second layer under a scorecard mark. A hand-scorer could record what happened; nobody could record the pitch that did it. None of these numbers is good or bad — a pitch has two men in it, and 98.6 mph is good news for exactly one of them.
- Velo
How hard the pitch left the hand, in mph — not how fast it arrived
The pitch's speed in miles per hour as it leaves the pitcher's hand. Worth knowing: this is release speed, not arrival speed. The same pitch that leaves at 92.2 crosses the plate around 85.7 — air does that over sixty feet. When you hear a number on a broadcast it is almost always the release speed, so that is the one we print, and we never mix the two.
- Spin
Revolutions per minute — spin is what makes a pitch move
How fast the ball is spinning, in revolutions per minute. Spin is the engine of movement: a four-seam fastball at 2,400 rpm holds its line against gravity, and a splitter at 543 rpm is barely spinning at all, which is exactly why it falls off the table. High spin is not automatically better — it is a different pitch, doing a different job.
- Break (IVB)
Inches the pitch missed a no-spin path by — not how far it rose
Induced vertical break, in inches. Read this one carefully, because the English fools people: a fastball listed at +17.8 did NOT rise 17.8 inches. Every pitch falls. This measures the gap between where the ball actually crossed the plate and where the very same pitch would have crossed with no spin at all — so +17.8 means it fell about eighteen inches less than gravity alone would have taken it, which is why a good four-seamer looks like it hops. A splitter at −4.2 did the opposite: it fell further than a spinless ball would have.
- Where it crossed
The pitch plotted against this batter's own strike zone, from the catcher's view
Where the ball crossed the front of home plate, drawn from the catcher's point of view — so the right of the picture is the right-handed batter's outside corner. The box is THIS batter's strike zone and nobody else's: the zone runs from his knees to the midpoint of his torso, so it is a different height for every hitter, and the feed measures it per batter. The dot is the middle of the ball. One honest limit, and it is worth stating plainly: this picture does not reproduce an ABS ruling. We draw where the ball crossed the FRONT of the plate against the zone the official feed recorded; the automated system judges by its own zone and its own measurement point. A challenged pitch can sit outside this box and still be confirmed a strike — one on our own All-Star card does exactly that. We draw what we can see and say what we cannot.
- Flight time
How long the hitter had to decide — in fractions of a second
How long the ball took to reach the plate, in seconds. This is the number that turns a velocity into a feeling: a 98.6 mph fastball gives a hitter about 0.38 of a second from release to the plate — and he has to start his swing well before it gets there. An 88 mph splitter buys him 0.43. That gap, five hundredths of a second, is the entire reason a changeup works. The feed times every pitch; nobody prints it.
- The pitch dots
In the zone plot: filled = strike, hollow = ball, teal = he hit it, and the dashes = a challenge
Each dot is one pitch, numbered in the order it was thrown, and the dashed line is the sequence — how the pitcher worked him. The color is the OUTCOME, and it takes nobody's side (a pitch has two men in it): a hollow dot is a ball, a solid rust dot is a strike he did not put in play, a pale rust dot is a foul, and a teal dot is the one he hit. A dashed ring means that pitch was challenged. The box is this batter's own strike zone.
- Off the bat
Exit velocity, launch angle and distance on the ball he hit
What happened at contact, measured. EXIT VELOCITY is how hard the ball left the bat in mph — the single most repeatable thing a hitter does, and the foundation of our whole engine (see EV95). LAUNCH ANGLE is the vertical angle it left at, in degrees: roughly 10 to 30 degrees is the window where balls become extra-base hits, below zero is a grounder, and above 50 is a pop-up. DISTANCE is how far it traveled. We do not carry the feed's `hardness` field, which is a stringer's one-word opinion rather than a measurement — a 95 mph homer and an 89 mph groundout are both filed as “medium”.
- ABS challenge
2026's robot-zone challenge — the batter, pitcher or catcher asks the machine to check a ball-strike call
New in 2026, and no scorecard in the game's history has a mark for it, because the notation was fixed a century before the idea existed. The batter, the pitcher or the catcher — nobody else, and only in the moment — can tap their helmet or cap and ask the Automated Ball-Strike system to review the pitch. Each club gets a limited number, and it keeps the ones it wins. OVERTURNED means the machine disagreed with the umpire and the challenger won. CONFIRMED means the call on the field stood and the challenger lost the challenge. We invented the mark on our card, and we reconcile our count of them against the game's own challenge ledger — if the two disagree, the card refuses to print rather than quietly lose one.
- Challenge success
Of the challenges a club spent, the share the machine sided with — shown with its count, always
Challenges won divided by challenges spent (won plus lost). A won challenge is one the ABS machine overturned; a lost one burned a challenge the club doesn't get back. We always print the record beside the percent — a club that has gone 3-for-4 and one that has gone 30-for-40 wear the same percent and are not the same fact. This is a fact about umpire calls and a club's judgment of them; it is not a rating of the club's roster, and our engine ranks nobody on it.
- Challenges in hand
What a club still held when the game ended
Challenges a club still held at the final out. An unspent challenge simply expired — the rules don't bank it to tomorrow. We print it as a fact of how the game was played, not as thrift or waste: a club that never needed to challenge and one that didn't dare look identical in this column.
- Automatic ball / strike
The pitch clock moved the count with no pitch thrown
The count changed and nobody threw anything. Under the pitch timer a pitcher who is late is charged an automatic ball, and a batter who is not ready is charged an automatic strike. We show these in the sequence rather than skipping them, because a reader who sees the first pitch of an at-bat arrive on a 1-0 count deserves to know where the ball came from.
- Umpire grade
His accuracy on taken pitches, measured against the rulebook zone
Of the pitches the batter did NOT swing at, the share the home-plate umpire called correctly against the rulebook zone — scored off the same pitch locations our reconciled cards carry, so every grade has a game and every game has a card. Printed as a letter with the percent beside it, because a letter alone hides how tightly the league bunches. IT TRAVELS WITH AN INTERVAL — '93.9% ± 0.8' — and the ± is the 95% figure, not a standard error; the two differ by a factor of about two, which is the whole difference between 'measurably tighter than the league' and 'not measurably anything'. At a full season behind the plate that interval is roughly ±0.8 points against a league spanning about four, so the ends of the board separate and next-door neighbors on it do not. It is POOLED — his correct calls over his graded takes — not an average of his per-game rates, which would weigh a short blowout the same as a long extra-inning night and would have no denominator to put an interval on. And it is a rate plus a CONVENTION: ours grades every taken pitch against the rulebook zone as the feed reports it, while UmpScorecards counts a call wrong only when the pitch was at least 90% likely to be a strike. Two sites can print the same percentage about the same man and not mean the same thing.
- Overturn rate
How often the robots overruled him — on the pitches players chose to challenge, which is not the same as how often he was right
Of the calls a player challenged, the share the Automated Ball-Strike System reversed. THE FRAME IS THE WHOLE NUMBER, and it is a selection: players challenge the calls they already believe were wrong, so this is accuracy on a deliberately adverse subset and is NOT comparable to the umpire grade printed beside it. An umpire whose zone is predictable gets challenged rarely and well; one whose zone surprises people gets challenged often and badly. Both facts land in this one number. It is also thin. We print it wherever we have it, always beside its own denominator, but we do not RANK umpires on it below thirty challenges — at nine the interval is roughly ±27 points, which is most of the possible range. ESPN prints CB Bucknor at 77.8% on nine of them with no caveat at all.
- Run favor
The net runs an umpire's missed calls moved toward one side
Each missed call carries a run value, signed by which side it helped. Summed over a game, that is the run favor — near zero means his misses cut both ways, not that he made none. A fact about one night's calls, never an accusation of intent.
- Avg swing
The average runs his misses moved a game, in either direction
The unsigned cousin of run favor: how much an umpire's missed calls moved games on average, regardless of who they helped. Favor answers WHICH WAY; swing answers HOW MUCH.
- The Season Card
Every at-bat a man was part of this season — batted or threw — rendered as one scorecard whose rows are games
One player's season, kept the way a game is kept: the same marks, the same boxes, one row per game instead of one row per inning. Every box is a real plate appearance lifted from a reconciled game card — nothing here is recomputed, and tapping a box opens the very at-bat on the game's own card, pitches and all. Pitchers get the same page read the other way: every batter they faced, attributed by who actually threw each pitch. It begins where our cards begin — the page states its own coverage — and a Triple-A row is badged and never summed with a major-league one.
- The split at-bat
A plate appearance that changed pitchers mid-count — it appears on both arms' cards, dashed, charged to one
A plate appearance the pitcher did not have to himself: the at-bat changed hands mid-count, so two men threw to one batter. It appears on BOTH pitchers' cards in a dashed box — that is not double-counting, it is the fact, and no paper scorecard has ever been able to show both halves. Attribution follows who actually threw each pitch, never the feed's charge-the-man-who-left convention, which names the wrong pitcher exactly when it matters. The batter's own card shows the plate appearance once, naming both arms.
- Located ball in play
A batted ball the stringer recorded coordinates for — located and in-play are different counts, and both print
A ball in play whose landing point the official stringer recorded, in one shared coordinate frame across every park — the only reason a season's worth of dots is honest to draw on one diamond. Not every ball in play gets located, so any surface drawing dots states both numbers — located, and in play — rather than letting a chart of 41 quietly stand in for 44. Exit-velocity figures carry their own denominator the same way: not every located ball has a reading.
The card terms
The hobby’s vocabulary, for readers three months into collecting. No card jargon left behind either.
- Raw
An ungraded card — no professional grade, no slab
An ungraded card, straight out of the pack or the binder — no professional grade, no protective slab. Raw prices run well under graded prices for the same card because the buyer is taking the condition risk themselves.
- PSA / BGS
The two big grading companies — they score a card 1–10 and slab it
The two big professional grading companies. You mail them a card; they inspect the corners, edges, surface, and centering, score it 1–10, and seal it in a labeled plastic slab. A graded card trades on the label, which is why the same card can be worth a few dollars raw and a hundred slabbed.
- PSA 10 / BGS 10
The top of the grading scale — Gem Mint
The top of the scale — PSA calls a 10 Gem Mint; a BGS 10 (Pristine) is rarer still because Beckett grades four subcategories and all of them have to hit. That scarcity is why a BGS 10 usually prices above a PSA 10 of the same card, and why the jump from a 9 to a 10 is the steepest step in the hobby.
- Flagship (as we use it)
The one card of his we price nightly — the most liquid, not the priciest
The single card of a player we price nightly — chosen as the most liquid card of his we can verify, so the trend line tracks one real market instead of an average of thin ones. It is not necessarily his most valuable card; a Bowman 1st autograph will usually out-price it. It is the card whose price actually moves with news.
- The rookie slot (as we use it)
The highest-volume card from his earliest card year
The second card in a player's rack: the highest-volume card from his earliest card year — for modern players that lands on the hobby's benchmark (a first Bowman or rookie-year Chrome). When a prospect's only real card is both his flagship and his rookie, the rack collapses to one and says so.
- Parallel / numbered
The same card in a scarcer variant — often serial-numbered
The same card printed in scarcer variants — different colors, foils, or refractors, often serial-numbered (a card marked /99 has ninety-nine copies). Scarcer parallel, higher price, thinner market. Names in brackets in our flagship line — [Black], [Refractor] — are parallels.
Reading a stat line
The standard abbreviations on player pages and boards. Each row has its own anchor, so a header that says WHIP can send you to the line that says what WHIP is.
| Abbr. | Meaning |
|---|---|
| G | Games played. |
| AB | At-bats (walks and sacrifices don't count). |
| R | Runs scored. |
| H | Hits. |
| AVG | Batting average — hits per at-bat. |
| OPS | On-base plus slugging: the quickest one-number hitter summary. Rough guide: .700 fringe, .800 good, .900 star. |
| HR | Home runs. |
| RBI | Runs batted in. |
| SB | Stolen bases. |
| BB | Walks (bases on balls). |
| B/T | Bats / throws (L, R, or S for switch). |
| IP | Innings pitched — the decimal is thirds of an inning, so 71.2 means 71⅔. |
| W–L | Wins and losses credited to the pitcher. |
| W | Wins credited to the pitcher. |
| SV | Saves — games finished protecting a narrow lead. |
| ERA | Earned run average — earned runs allowed per nine innings. |
| ER | Earned runs — runs charged to the pitcher that scored without the defense handing them over on an error or passed ball. |
| SO | Strikeouts. |
| WHIP | Walks plus hits per inning pitched — baserunners allowed. Under 1.10 is excellent; 1.40+ is trouble. |
| CSW% | CSW% — called strikes plus swinging strikes, divided by total pitches. The one thing a pitcher does that no fielder touches: he steals the plate, or he misses the bat. Our own study (H-ARM) found it repeats year to year far better than ERA does, and carries real information about next-year ERA beyond ERA itself — but, unlike EV95 for hitters, it did not out-predict ERA out of sample. So we print it as process context and never rank on it. Foul tips excluded. |
| Lvl | Level: MLB, then the minor-league ladder — AAA, AA, A+ (High-A), A (Single-A). |
| MLB CAREER | The bold row at the bottom of a player's table: career totals, majors only. |
| Total | A season split across two teams, combined — shown alongside each stint. |
The money
The terms on the Business Page. A salary is a market fact, like a card price: it says what a club decided last winter, never what our engine sees in a player. Only MP/MW is a judgment, and it is one of the inverted ones — higher is worse.
| Term | Meaning |
|---|---|
| Cash payroll | The 40-man year-end Labor Relations payroll: the money that actually leaves the building this season. It is not the number the luxury tax is assessed on, and the two are far apart for a club with deferrals — the Mets are about $17M apart on them. We print both and never subtract one from the other, because they are two answers to the same question under two different rulebooks. Figures are read off each club's own Cot's sheet. |
| CBT payroll | The 40-man Competitive Balance Tax payroll: the average annual value of every contract, plus benefits, plus the club's share of the pre-arbitration bonus pool. This is the number measured against the tax threshold, and it is the reason a club can defer money without escaping the tax. An AAV is a rate and a salary is a payment; a deferral makes them disagree on purpose. |
| Room (vs the line) | How far a club sits under the competitive-balance tax threshold, which for 2026 is $244M. The sign is the whole fact: negative means the club is OVER and owes a surcharge on the excess. Cot's writes the over-the-line case in accounting parentheses — ($124,559,411) — and a reader who drops them turns the largest tax bill in baseball into the largest amount of room in baseball. We derive this figure from the club's own two numbers rather than reading the cell, and we mark any club whose sheet disagrees with its own arithmetic. It carries no verdict: room is good news for a front office and bad news for a fan. |
| Pythagorean win pct | Expected winning percentage from runs alone: RS^1.83 / (RS^1.83 + RA^1.83), the exponent Baseball-Reference uses. It is to a club's record what a hitter's luck gap is to his line — roughly what the record tends to become. We use it rather than actual wins wherever a club is being priced, so that a front office is not billed for a one-run record it did not buy. |
| Marginal wins | (Pythagorean win pct − .300) × 162. A roster of minimum-salary players is worth roughly a .300 club, so wins below that line were not bought and a club must not be charged for them. Read it as a season RATE and not as a win total: it projects the club's current pace across a full schedule so that it can sit under a full-season payroll, which means that in August it is not the club's record and cannot be compared to one. |
| MP/MW | Marginal payroll divided by marginal wins: (cash payroll − 26 × the league minimum) ÷ ((pythagorean win pct − .300) × 162). It is the one judgment the payroll board makes, and it is one of the inverted numbers — a HIGHER cost per marginal win is a WORSE front office, the same direction as ERA. The common version of this statistic is payroll divided by wins, which charges a club for about $20M of minimum salaries it could not avoid and for about 49 wins a minimum roster gets for free; both baselines are netted out here and both are declared constants. The numerator is cash, not the tax figure, because the question is what a club spent and a tax basis is not a payment. |
| Payroll Grade | A letter over the club's rank on MP/MW, and nothing else goes into it: no WAR, and no adding up what individual players are worth. A is the lowest cost per marginal win, which is worth saying plainly because the metric underneath runs the other way — on MP/MW a bigger number is a worse front office, so the best grade sits on the smallest figure. The bands are published rather than discovered: the top tenth of ranked clubs get an A, the next fifth a B, the middle two fifths a C, then a D and an F on the same shape going down. In a thirty-club league that is three A's and three F's, by construction — a grade most people get is not a grade. Straight quintiles, which is what the Card Pulse uses for a heat board nobody mistakes for a verdict, would hand out six. Every change to those bands, or to what the grade is computed from, is recorded with its date and its reason on the payroll board, and the standard for making one is that it improves accuracy against held-out data or corrects a documented bias. A club with no MP/MW gets no grade rather than a bad one. |
| The Signal Gap | The one number on this site that puts our measurement and the market side by side. Inside a single service cohort — pre-arbitration, arbitration, or under contract — we rank every qualified hitter two ways: by what our engine sees in his contact, and by what he is paid. The Signal Gap is the first rank minus the second, in percentile points. Positive means we read him higher than his salary does and the market has not caught up; negative means he is being paid for a season he is not having. It contains no WAR at all, which is the point: it sidesteps a statistic whose own error bar is unpublished and whose three versions disagree by two or three wins on the same pitcher. Read it as a difference of two RANKS, never of two dollars, and never across cohorts — a pre-arbitration win costs roughly a tenth of a free-agent win, so one cost axis across three regimes would be a service-time ranking with a dollar sign on it. And read it on two clocks: what we see is measured off last night's batted balls, and what he is paid was decided last winter and cannot move until the next one. That distance is not a flaw in the number. It is the number. |
| Implied salary | Take the men in one service cohort, sort them by salary, and ask what that sorted list pays at the rank our engine gives him. That figure is his implied salary. It is an order statistic — the cohort's own real salaries, read at a position, interpolated between the two that straddle it — and not a curve fitted to them, which matters at the ends: a fitted line will happily produce a salary no club in that cohort actually pays, and this cannot. It is a modeled number and nobody is paid it, so we never rank it beside a real salary or add it into a payroll; its one job is to be subtracted from what he is actually paid. Two things to read carefully. It is NOT a claim about what a player should earn — it is what his cohort pays at that rank, which is a fact about the cohort. And at the very top or bottom of a cohort it is pinned to that cohort's largest or smallest salary by construction, so those rows are marked: the number there is the extreme of the range, not an estimate that happened to land on it. |
| Pay residual | The Signal Gap answers in ranks; this answers the same question in dollars. It is his implied salary — what his service cohort pays at the rank our engine gives him — minus the cash he is actually paid. Positive means the cohort pays more than that at his rank and he is a bargain against it; negative means it pays less and he is an albatross. It is a distance between two facts about one cohort, so it is read strictly inside that cohort and never across three of them: a pre-arbitration win costs roughly a tenth of a free-agent win, and one dollar axis over all three regimes is a service-time ranking wearing a dollar sign. It is not spendable money and never sums into a payroll. And it is on two clocks, like everything else here — our read is measured off last night's batted balls, the salaries were decided last winter. |
| Engine rank (percentile) | His percentile within his own service cohort on the engine's frozen overlay: hard contact, weighed against a luck gap that runs the other way. 0 is the bottom of the cohort and 100 the top. It is computed over the Baseline — every qualified hitter in the league, the unselected population our boards are drawn FROM — rather than over the men the boards happened to pick, because a percentile over a selected group answers a different question than the one it appears to. The formula is the one registered before the confirmatory test and it has not been refitted; this board applies it to a wider population, which is not a new study. |
| Pay rank (percentile) | His cash salary's percentile within his own service cohort. Like every salary on this site it is a market fact and not our read: being paid more says what a club decided last winter, not what we see now. We do NOT compute it for pre-arbitration players, and the reason matters — a pre-arb salary is set by rule rather than by a market, the figures published for it are the source's own estimates, and they are prorated by how long the player has been on the roster. Across that cohort a salary correlates 0.43 with games played. Ranking it would rank playing time with a dollar sign on it, which is exactly the mistake that makes every other cost-efficiency leaderboard in baseball a service-time list in disguise. |
| Tax hit | What a single player costs his club against the competitive balance tax: the average annual value of his contract, not the cash he is paid this season. The two come apart on purpose. A deal that defers money lowers the cash and leaves the tax hit where it was, which is why a big signing makes the news twice with two different numbers. We print both and never subtract one from the other. |
| Guaranteed | The total guaranteed value of the deal, across all of its seasons. It is on a scale of its own and must never be read beside a one-season salary, which is the oldest trick in a payroll headline: $210 million over six years and $35 million this year are the same contract, and only one of them is what the club pays in 2026. |
| AAV | Average annual value: the total guarantee divided by the number of years. It is the fairest single number for comparing two deals of different lengths, and it is ours rather than the source's — Cot's prints the total and the term, and we do the division. It is NOT the same as the tax hit, which the source does print: the tax figure is an average under the CBA's own rulebook, with its own definitions for options, incentives and deferrals, and the two disagree for exactly those reasons. |
| Tax AAV | The average annual value of a contract as the competitive balance tax computes it, stated by MLB Spreadsheets rather than worked out by us. It is NOT the guarantee divided by the years, which is what we print as AAV off Cot's, and the gap between the two is the whole point of having it: money a club promises to pay decades from now is worth less than money paid now, so the CBA discounts it. Shohei Ohtani's contract is $700 million over ten years — $70 million a year by division — and $46.1 million a year against the tax, because most of it is deferred to 2034 and beyond. The second figure is the one a front office actually carries. We print both and never subtract one from the other; on the contracts with nothing deferred they are the same number, which is exactly why the difference is easy to miss. |
| What the sheet prices each season at | A single season's base salary as MLB Spreadsheets states it. Two things about it are easy to get wrong and neither is arithmetic. First, it is NOT the cash figure Cot's prints for the same man and the same season: a prorated signing bonus lands in one and not the other, so the two disagree on most players without either being wrong, and we never subtract them. Second, the sheet prices seasons BEYOND the guaranteed contract — club options, and its own projections of arbitration awards — and it does not mark which is which. A commitment and a forecast appear in the same column in the same typeface. Where a season has no agreed figure at all it carries a code instead (Minimum, Arb 1 through Arb 4), which we print as a code, because a zero would say the club owes him nothing and a blank would say the contract ends there. |
| Deferred money | Money a player earns in one season and is paid in another, usually long after the contract has ended. It is the most misunderstood number in baseball contracts, and the confusion is a timing one rather than an arithmetic one: the club is charged for deferred money in the season the player EARNS it, and writes the check in the season it comes DUE. So a deferral does not reduce what a club owes; it moves when the money leaves. What it does reduce is the contract's tax AAV, because the CBA present-values a promise to pay in 2034 — which is why Shohei Ohtani's $700 million counts as $46.1 million a year against the tax. Figures here are MLB Spreadsheets' Deferred sheet, which carries its own date and is not the same date as the payroll pages. |
| Paid in this season | One year of a deferral's payout schedule. The year heading means WHEN THE MONEY IS PAID, and that is a different fact from the year headings on a salary grid, which mean when it was earned. Ohtani's 2034 column is $68 million of money earned between 2024 and 2033; his 2034 salary is nothing at all, because the contract is over by then. The two numbers sit under the same four digits and are never added together. Schedules on this sheet run out to 2051. |
| Still to be paid | Deferred money whose payment date is still in the future. It matters because a deferral total on its own mixes checks already written with checks still owed, and on this sheet the difference runs to tens of millions. We split it three ways — paid before this season, due this season, due after it — and the middle bucket stands on its own on purpose: the source states a year and never a date, so mid-season we cannot say whether this year's payment has been made, and folding it into either side would be a claim the source does not make. |
| A club's deferred money | The sum of every deferral on this sheet owed by one club. Two things about it are worth stating plainly. It is keyed to the club ON THE CONTRACT — the one that signed the deal and owes the money — and not to where the player is today: the Giants owe Blake Snell $32 million out of a deal he has left, and it is the Giants' obligation, not the Dodgers'. And it is not a payroll figure and is never compared with one: it spans every season a club has deferred into, out to 2051, while a payroll is one year. |
| His class | The source's own label for what kind of deal this is, and it is a SECOND reading of the same fact the regime chip above it carries off Cot's. Pre-Arb: under club control, near the minimum. Arb: arbitration-eligible, this year's figure settled or awarded. Extension: signed past the years the club already controlled. FA: signed as a free agent. MiFA: a minor-league free agent, which is a major-league contract's poor relation and worth telling apart from one. We print his label rather than reconciling it with ours, because where two sources classify a man differently that disagreement is the interesting part and averaging it away would destroy it. |
| Service time (MLS) | Major League Service: the clock that decides when a player reaches arbitration and when he reaches free agency. It is written years.days and it is NOT base 10 or base 100 — a service year is 172 days, so 5.171 and 6.000 are one day apart and that day is free agency. Roughly: under three years he is pre-arbitration and the club sets his salary near the minimum; from three to six he is arbitration-eligible; at six he is free to sign with anyone. The exceptions are real — Super Two status pulls the top 22% of a class into arbitration early — which is why we read a player's regime off the source's own out-year codes wherever it states them, rather than computing it from the boundary. |
| Options left | Minor-league options remaining, of the number he started with. An option year lets a club move a player between the majors and the minors as often as it likes within that season without exposing him to other clubs. When they run out, sending him down means putting him on waivers first, where anyone can claim him. It is one of the quietest and most decisive facts about a fringe roster player, and it is not a judgment about how good he is. |
| The tax line | The competitive balance tax threshold under the 2022 CBA: $244M for 2026, with surcharge tiers at $264M, $284M and $304M and rates that climb with consecutive years over. It is a rule clubs are paying against right now, and it is printed on most of the club sheets themselves — which is why this site keeps it visually apart from the cap and floor figures reported out of the 2026 CBA negotiations. Those are proposals. They bind nobody, they appear in no sheet, and they are labeled PROPOSED wherever we print them. |
| Opening Day payroll | The club's payroll as it stood on Opening Day, under whichever rulebook is being shown. Its date is frozen in March and cannot move again, which is the only reason it is useful: it is the fixed end of a measurement whose other end is today. It is never a club's payroll — it is where the club started, and a front office has had four months to change its mind since. |
| The move since Opening Day | How far a club's payroll has traveled since the season began — the in-season figure minus the Opening Day one, and the sign is the whole fact. It is the first number on this site that shows a front office changing its mind, and it holds no opinion about whether the change was right: adding payroll is not virtue and cutting it is not vice, which is why we never color it. Read the two rulebooks separately. A club can cut cash and add tax at the same time — Baltimore did both on the same sheet, down $4.5M in cash and up $7.3M against the tax line — because a trade moves the two figures by different amounts. A move in dollars is also not a payroll in dollars, and this site never compares one to the other. |
| Payroll composition | A club payroll is not one number, it is fourteen, and which line carries the weight is the difference between two clubs with identical totals. The lines cover salary paid to players on the roster, salary owed to players who are gone, bonuses of several kinds, cash sent or received in trades, and charges the CBA levies on everyone. We group them for readability and print every non-zero line underneath. It is not a pie: some lines are negative, because a club that receives cash in a trade has its payroll reduced by it. Every breakdown we print has been checked to sum to the club's stated total, and one that does not sum is not shown at all. |
| Dead money | Money going to players the club has released or sent down and off the 40-man: termination pay owed on a released contract, plus the salary still carried on outright assignments. It is the purest sunk cost in baseball — payroll that buys the club no player at all — and it is usually quoted as a single lump. It is actually two different lines with two different stories, so we print them separately. |
| Cash considerations | Cash that changed hands in a trade, on top of the players. The sign is the fact: positive means this club sent money out with a player it was trading away, negative means it took money in to absorb a contract. Across the league the line nets to zero, because every dollar one club sends another club receives. It is the one payroll line that can make a club's total go down. |
| League charges | Two charges the CBA levies on every club at the same rate: player benefits and each club's share of the pre-arbitration bonus pool. They are in the competitive-balance figure and not in the cash one, and in 2026 they are exactly $18,393,624 and $1,666,667 for all thirty clubs. They are worth knowing about because they are roughly $20M of every club's tax payroll that no front office decided to spend — so a club ranked on them is being ranked on a constant. |
| Prorated signing bonus | A signing bonus is paid once but charged across the life of the contract. In the cash payroll it appears as this season's slice of it; in the competitive-balance payroll it does not appear at all, because it is already inside the contract's average annual value. That is why a club can show tens of millions of signing bonus under one rulebook and zero under the other with nothing wrong — the same money, sorted twice, and the reason those two columns must never be subtracted from one another. |
Reading the standings
The columns on the standings page. Team-level, so the W–L here is the whole roster’s record — not the pitcher line above. Each row has its own anchor.
| Abbr. | Meaning |
|---|---|
| W–L (team) | A club's wins and losses on the season — the whole roster's record, not the same W–L as a pitcher's line elsewhere on the site. The standings don't sort on it directly; they sort on the winning percentage it produces. |
| Pct | Winning percentage — wins divided by games played, carried to three decimals. It is the number the standings actually rank on, which is why two clubs with the same win total can sit a step apart. Rough scale: .500 is even, a .600 pace is a strong club, below .450 is a cellar year. |
| GB | Games back — how far behind the division (or league) leader a club sits, counting both the games it must make up in the win column and the games it trails in the loss column, averaged. A dash (—) means the club IS the leader: nobody is ahead of it. One of the inverted numbers — higher is worse. |
| RDIFF | Run differential — runs scored minus runs allowed on the season. It is the one number on the standings that is a signal rather than a result: it is to a team's record what a hitter's luck gap is to his line — roughly what the record tends to become. We color it the way the whole site colors a read — teal when it is positive, the good direction, oxide when negative — so a club outscoring its record, or flattering it, shows at a glance. It is not an FVR model; it is the plainest forward-looking number the box scores already carry. |
| Strk | The club's current streak through its latest game: W4 is four wins in a row, L3 three losses in a row. A hot-or-cold snapshot, not a verdict on the season. |
| L10 | The club's win–loss record over its last ten games — recent form. 7–3 is a club playing well lately; 3–7 is a slide. It says nothing about the ninety games before it. |
The credibility numbers
The fine print on the homepage cites an RE24 correlation of 0.975 — that is our computed run values checked against FanGraphs’ for 2024 qualified batters — and a pre-registered holdout of 721 batter-seasons, meaning the entire test protocol was frozen before we looked at the data it would be judged on. The full story, including the bug we disclosed and the finding that didn’t flatter us, lives on the methodology page.