Categories counted. Games counted. Then the memo argues.
Fantasy basketball is nine numbers and a schedule. Fantasy Memo computes all of it in the open — every player in your categories against your league's pool, times the games he actually plays this week — and uses the model for the three things it is good at: reading this week's reporting, writing a clear argument, and arguing back when you disagree.
Every slot has an Analysis. The PG is the close one this week.
Same number of games (3); Podziemski is worth more per game in this league's categories (9.6 to 8.4).
This week's value: a per-game z-score across this league's categories, against the rostered pool, times games this week. It compares players; it never predicts points.
PG unchanged. Stream noted for the memo: Ty Jerome for D'Angelo Russell, +25.4 this week. The exchange stays on the slot; withdraw it and the number goes back.
Not a screenshot: one slot's analysis, played through. The numbers are a real Week 1 league's; the exchange is illustrative. Hover to pause, tap a bar to jump.
Five steps, in this order — because the order is the point
Every roster, the scoring, and how lineups lock.
Connect Sleeper with your username; Yahoo and ESPN with a league id (two cookies if private); anything else by pasting or screenshotting your roster (step-by-step guide). Fantasy Memo reads the categories or the points-per-stat, whether lineups lock weekly or daily, every team's roster and set lineup, the matchups and the standings. It never writes anything back.
Reading the whole league is what makes the rest possible: the category projection needs your opponent's starters, and a trade has to improve their lineup too. Two opponents in a week, or a league-median game? Both are read and both are projected.

Against the pool your league rosters — not a generic top 150.
Rotowire's per-game projections, blended with the season's actual lines as they come in, become a z-score in each of your categories against the players your league actually holds. FG% and FT% are weighted by attempts, so a 60% centre on twelve shots moves the needle and a 60% guard on two does not. Turnovers count against. Punt a category and its weight drops — the whole board reorders.
That profile, without the schedule, is the season value on the roster page. With the schedule it becomes this week's value: per game times games this week. The two are never added together, and the memo always says which one it is using.

A number you can take apart.
The lineup is the exact best assignment of your players to PG, SG, SF, PF, C, G, F and UTIL by this week's value — a player eligible at three positions goes where he does the most good. Every slot has an Analysis: the starter beside every bench player who fits, how each number was made (#126 in this format → 9.6 per game × 3 games = 28.7), and any free agent who would beat him this week.
- ✓Start/sit: what you set on the platform, diffed against the best lineup, games counted
- ✓The matchup: every category projected from each side's starters times their games — won, lost, swing — with the one move that flips a swing category
- ✓Streams: a free agent worth a claim for the games, not the season, with the drop named and the categories he helps
- ✓Adds for good: a free agent better than your worst roster spot for the season, whatever his schedule this week
- ✓Trades: every pairing of your roster against every other, keeping only offers that improve both lineups
- ✓The weeks ahead: light weeks and thin slots from the real schedule — Cup week, All-Star, a two-game team

Argued, not ranked. “Skip” is an answer.
Monday morning the model gets the computed moves and the research and is told: argue each one, say skip when it is not worth it, and never invent a move. It knows the difference between a stream and an add, between this week's value and the season's, and that in a weekly league a claim made on Tuesday plays next week. The arithmetic ran first, so it cannot tell you to start a player with no games.
Do this week. Worth considering. Looked at, skipped — with the reason. Your matchup, category by category. The weeks ahead. The league. And the message to send when there is a trade to make.

A consultant, not a verdict. You ask, we answer, you decide.
Disagree with a slot? Make your case in a sentence — he's moved into the starting five, the return date is Thursday, not Sunday, he's been playing 34 minutes since the trade. The consultant sees the same numbers you do and the research behind them, checks a factual claim against current reporting when it needs to, and answers: held, partly conceded or agreed.
When you are right it leans the player for the week (never more than 15%) and recomputes the lineup on the spot. It will also tell you when a four-game week already priced in what you are arguing. The exchange stays on the slot; withdraw it whenever you like.

Monday memo. Checks before tip-off. Every night if your league is daily.
Written as the week opens: the lineup with games counted, the category matchup with the swing categories, streams, adds for good, the trade, the light weeks ahead, the league. In your inbox and in the app.
Weekly-lineup leagues. No model, no cost: the arithmetic re-runs against injuries and the schedule. An email only if a starter is out with games left, a slot is empty, or a stream is worth making.
Daily-lineup leagues (Yahoo, ESPN) are checked nightly instead: an open slot tonight, a benched player with a game. The Daily Memo add-on ($15 a season) turns the check into a written note each game day.
Roster, Matchup and Standings with the week arrows, a day tab per game night, the Analysis on every slot, the card on every name, and the consultant when you disagree.
It reads what kind of league it is, and scores like it.
9-cat, 8-cat or your own set. Each category projected for the week; the verdict is the count. Most-categories and each-category-a-win are both read.
No opponent. Your standing in every category against the whole league, with the gap up and the gap down, so a move is valued by the places it buys.
Your league's points-per-stat applied to the same per-game lines; the matchup is a ratio, favoured above 3%. Sleeper's default.
Sleeper locks the week; Yahoo and ESPN set nightly. Read from the league and everything — streams, checks, the Daily Memo — follows from it.
Punted categories, keeper and dynasty formats, two-opponent weeks and the league-median game are read from the league's own settings. IL and IL+ players stay out of every lineup.
The same engine runs the draft board.
The category model on Rotowire's projections for your scoring, tiers at the real gaps, the chance each player lasts to your next pick, need-weighting that counts a PG/SG toward both, a last-round centre it will not let you forget, and a reason on every recommendation. Follows a Sleeper draft room live. Free for everyone.
How draft mode works
Questions
Does the AI pick my lineup?
No. Arithmetic picks it — a per-game contribution across your league's categories, times the games the player has this week, zero if he is ruled out. The assignment across PG/SG/G/F/UTIL is solved exactly, not greedily. The model never chooses a player; it reads the reporting, writes the memo, and answers you when you disagree.
What is "this week's value"?
A z-score profile across your categories against the pool your league actually rosters (FG% and FT% weighted by attempts, turnovers inverted, punted categories weighted down), times games this week. Ten is roughly one average rostered player-game. It compares players; it never predicts points.
Does it handle points leagues?
Yes. The same per-game lines are scored with your league's points-per-stat instead of z-scores, and the matchup verdict is a ratio instead of a category count. Sleeper's default NBA scoring is points; it is read from the league.
Weekly or daily lineups?
Both. Sleeper locks lineups for the week; Yahoo and ESPN set them daily. The app reads which and behaves accordingly: a weekly league gets one optimal lineup and a stream that is phrased for next week if this one is locked; a daily league gets a lineup per game day and a check every night.
How current is the injury information?
ESPN's NBA injury feed is read every two hours: the designation, the body part where it is given, the expected return and the note as written. Out means no games until the return date; day-to-day is flagged, not discounted — in a four-game week it is a game-by-game question the memo tells you to check before tip.
What if the AI is down on a Monday?
You still get the computed moves: the lineup, the category projection with the swing categories, the streams, the adds for good, the trades. The memo degrades to the arithmetic; it never disappears.