This is a real league. A real 10-team Sleeper league with a $100 FAAB budget, seasons 2019 through 2025. Manager names are replaced
with pseudonyms and the league's platform ids are removed. Nothing else is
changed: every bid, win, and losing claim below actually happened.
The free-agent board is live for the current season, and the bid history behind it is the league's real completed seasons.
Start with the FAAB Intel tab below. The bid
ledger, the rivals panel, and the bid simulator are the product. The short
read on how the bidding model works, and why you should trust it, is right
here:
How the bid number is built, in plain English
The problem
FAAB is a blind auction. Each week you bid fake dollars on free agents
against your league mates, and you never see their bids until it is over.
Bid too little and you lose the player. Bid too much and you burn budget
you will want in November. Most waiver advice hands you a number with no
evidence behind it.
The data nobody else has: the losing bids
Sleeper and ESPN show you the winning bid. They do not show you the bids
that lost. FantasyPros publishes suggested FAAB percentages, which are
opinions, not measurements. FAABFAX collects the losing bids. When someone
bid $23 and lost to a $31 claim, both numbers go in the ledger. That is the
difference between guessing what a player is worth and measuring what it
took to win him.
This demo league's ledger holds 940 bids across 6 seasons (2020 to 2025),
311 of which lost. That is 630 separate player auctions,
185 of them contested by two or more managers. Every figure on the
FAAB Intel tab is computed from those rows.
How one dollar figure gets made
- Who is worth a decision. Not the whole free-agent pool, which is
hundreds of players nobody is thinking about. The 36 who matter this week:
10 RB, 10 WR, 5 TE, 5 QB, 3 DEF, 3 K, ordered by how many leagues across
Sleeper are adding them right now.
- How contested he will be. This is what makes two running backs
cost different amounts. A player half the country is adding will draw
bidders in your league too. A player nobody is adding is yours for a dollar.
We sort your league's past claims into quiet ones, contested ones and
outright wars, then put each player in the group his demand points at. Where
those lines fall is not a setting we picked. It is how often your league has
actually had each kind.
- What claims like that really cost. Your own claims come first,
always. Too thin at that exact position? We widen one step at a time before
ever using strangers' leagues. A rougher answer from your league beats a
precise one from theirs, and the card says which one you are reading.
- Three figures, not one. P60, P75 and P90: the cheapest bid that
would have won about 60%, 75% and 90% of the time. Read P60 if you only read
one. The higher rungs are priced off your league's whole history rather than
the quiet claims, because their job is covering the case where we were wrong
about how quiet he would be.
Two prices, and why the board shows both
A FAAB auction has a winner and a runner-up, and they answer different
questions. The bid we recommend is what it would take to beat the
manager who won: you are an extra bidder, so everyone who bid still bids.
The clearing price is one dollar more than the best losing bid. It is
what the auction actually required, it is always cheaper, and it is shown
beside the bid as context.
Keeping those two apart matters more than it sounds. Pricing off winning
bids alone overpays by $4.75 to $16.26 per league on average, because a
winning bid is a record of somebody's overpayment. Our own first version had
that flaw. It suggested ranges built from winning bids, and when we audited
it, 82% of real claims had cleared at or below the BOTTOM of the suggested
range. So we threw it out.
Your league is not their league
Leagues bid differently, and not by a little. One league in our own data
pays a median 16.5% of its budget for a contested add. Across the public
leagues we collected, that same kind of claim goes for 5.0%. A
one-size-fits-all FAAB column cannot tell those apart.
It is also why we did not simply scrape more leagues. We measured what more
would buy before collecting any: going from 40 to 80 public league seasons
bought 0.001 of accuracy, while not being able to tell rival managers apart
cost 0.022, roughly twenty times more. So the effort went into reading your
league instead.
How we grade it
- Held out. The prices are fit on some seasons and scored on claims
they were never shown. On 2,892 held-out claims across 419 leagues,
the P60 rung won 63% of the time against its 60% target, with a mean miss of
3.2 points. We say "about 60%" on purpose: out of sample the rungs land
between 53% and 63% depending on how much history a league has, and claiming
a flat 60% would be the tidier lie.
- Live, every week. A held-out test is the honest version of a
backtest. It is still a backtest. So every bid the board shows you is
written to a log before you act on it, and each Wednesday we score
last week's recommendations against what actually cleared and publish the
result, including the weeks we got it wrong.
2026 is the first season we have scored ourselves live,
and the live numbers and the held-out numbers do not yet agree on every cut of
the data. We are working on why, in the open, and the weekly report is where
that shows up first.
The rules we hold ourselves to
- Your league first, always. A figure computed from strangers'
leagues when your own could have answered is a bug, not a simplification.
Public data fills holes and checks our work. It is never the default, and
every card says which one you are reading.
- Sample sizes on the surface. Every figure carries how many claims
it rests on. When a league is too thin at a position to support a rung, we
say so on the card rather than printing a confident number built on four
bids.
- No dollar advice before Week 1. Before any games are played every
projection is a preseason guess, and the model would hand almost every
player the same number. Bid dollars stay hidden until Week 1 has actually
been played. The data unlocks them, not a marketing date.
- We never hold your password. Sleeper is read through its public
API. ESPN has no such option for private leagues, so your own browser reads
your league and sends us the result. We do not store an ESPN credential and
we are not going to start.
What it does not know
- It reads bids, not news. It does not know about a Friday injury report
or what a beat writer heard.
- Its read on how contested a player will be leans on Sleeper's public
trending-adds list: adds that already went through, across every Sleeper
league, in the last 24 hours. Not pending claims, because no platform
publishes a pending feed. And most adds anywhere are not money claims at
all: in our own leagues, 2,869 of 3,774 completed Sleeper adds were free
pickups.
- It is built for redraft. The pricing adapts to your league's own
history, which carries a long way in any format, but we cannot reliably read
dynasty and keeper settings off every platform, so we do not claim to handle
them.
- It does not know your roster. It tells you the price of the odds you
want. Whether this player is worth that price to your team is still your
call.
Privacy: manager names in this demo are pseudonyms and the
league's platform ids are removed. Your league's own history is what prices
your league. Aggregate patterns from many leagues, including leagues connected
to this service, calibrate the model underneath it, on completed seasons only
and on aggregates only: no names, no team names, and never one league's
individual bids. The longer version of the method is on the
methodology page, and the longer version of the
data handling is in the privacy policy.