Kodo Analytics
Feedback

Social Cards

LIVE

Live · In-Progress Slates

Cards built from live in-progress boxscores — the lines grow through the night. Refresh right before posting; a 7pm download and a 10pm download are different cards.

Tonight's Standouts · LIVE
FRESH
Low-owned (under 50% rostered) hitters + pitchers having big games RIGHT NOW in tonight's live slate, from the in-progress MLB feed. The lines grow through the night — refresh right before posting. Pairs with the auto-composed 'Tonight's Standouts' tweet (weekend afternoons / weeknights).
View card
Tonight on the Farm · LIVE
FRESH
The biggest MiLB lines happening RIGHT NOW across AAA / AA / A+ / A — live in-progress boxscores with NO ownership filter, ranked by how unusual each line is against everyone playing on the farm tonight. Level chip on every row; lines accumulate through the slate, refresh right before posting.
View card
Pipeline Watch · LIVE
FRESH
Tonight on the Farm restricted to our top-200 pipeline prospects — the biggest live lines from ranked names only, with the Kodo prospect rank on every row. Slightly looser entry bars than the all-farm card: a top-100 bat's two-hit night with a steal is the story.
View card
Tonight's Deep Cuts · LIVE
FRESH
The live standouts card at a 5% ownership cutoff — true free agents having big games right now, not merely under-rostered names. Same live feed and design as Tonight's Standouts; only the bar moves.
View card
Tonight's Standouts · All · LIVE
FRESH
The live standouts card with the ownership filter switched off entirely — every hitter and pitcher having a big game right now, stars included. Same in-progress MLB feed and design as Tonight's Standouts; this one is the night's best lines, not the night's best available lines.
View card
Live Statcast Beats · LIVE
FRESH
Five in-game signals off tonight's pitch feed, each stated against that player's own season baseline — the numbers a box score does not carry. Velo Watch: a starter sitting below his own fastball. Swing & Miss: one pitch missing bats far above its season rate. Hardest Hit: the loudest contact in baseball tonight. Robbed: the best-struck ball that became an out. New Look: a pitch he barely throws, leaned on tonight. Switch beats on the page — five cards, one scan of the slate. A green dot on a tab means that beat has a subject right now; a quiet night shows nothing rather than reaching.
View card
00

Daily Recap Board

Yesterday's top performers as downloadable tweet cards — each row pairs the game line with season + L30 splits, ownership (low-owned highlighted), Statcast, L7 lineup spots and our prospect rank. Refreshes every morning.

Top Hitters · Yesterday
FRESH
Yesterday's top 8 MLB bats by fantasy points. Each row: the game line, season + L30 5×5 splits, ESPN ownership (low-owned bats highlighted as streamers), season→L30 xwOBA / Barrel% / HardHit%, an L7 lineup-spot strip (started + batting slot / off bench / benched), and our prospect rank when they're a ranked prospect.
View card
Top Pitchers · Yesterday
FRESH
Yesterday's top 9 MLB arms by fantasy points. Each row: the game line plus season + L30 ERA · WHIP · K/9 · K-BB% · IP. Low-owned arms are highlighted so streamers pop; ranked prospects carry their rank.
View card
Saves & Blown Saves
FRESH
Yesterday's closer ledger — every save and blown save, with the appearance line, season + L30 ratios, ownership and closer role. Blown saves are flagged in red as role-change risk.
View card
MiLB Top Performers
FRESH
Yesterday's best minor-league bats across every level. Each row: the game line, season + L30 splits, MiLB Statcast (xwOBA / Barrel% / HardHit% where tracked) and our prospect rank — the farm names to stash before they're called up.
View card
MiLB Top Arms
FRESH
Yesterday's best minor-league pitching lines across every level — ranked by a game-score proxy (innings + strikeouts rewarded, runs + baserunners penalized). Each row: the game line, season + L30 ERA · WHIP · K/9 · K-BB% · IP, and our prospect rank. The arms to stash before the call-up.
View card
Data Games · Daily
FRESH
Promo cards for the four daily data games — Grid, Guess the Player, Higher or Lower, and Beat the Model. Spoiler-safe: the Grid card shows only its team × stat axes, Guess the Player shows the six clue categories rather than any clue value, and no card reads an answer key. Pairs with the auto-composed game tweets.
View card
00b

Week Ahead

Planning the next 7 days — whose schedule sets up, and whose is a trap.

01

Movers

Trailing-window OPS / wOBA spikes and droughts vs the player's season baseline.

Ownership Movers
ROSTER
The biggest ESPN ownership swings — top 10 adds and top 10 drops over the last 7 or 30 days, each with before/after % and the point change. Toggle window (7d / 30d) and direction (risers / fallers) on the page: four downloadable cards. The waiver-wire pulse — who the leagues are chasing, and who they're giving up on.
View card
Team Offense · L14
TRENDING
The 5 hottest and 5 coldest LINEUPS over the last 14 days, ranked by OPS. Each team row carries runs/game, the slash line (AVG/OBP/SLG), HR + SB, and the OPS swing vs the team's season baseline (is the hot/cold stretch real). Toggle Top 5 / Bottom 5 for the two downloadable cards. Which offenses to target — or avoid — for streaming hitters and matchups.
View card
Hot Streaks · L7
TRENDING
Top 7 hitters + 5 pitchers heating up over the last 7 days. Each row carries window OPS / wOBA + delta vs season + sample (PA / IP) + 3 Statcast underliers (EV, Barrel%, BABIP for bats; K-BB%, Whiff%, xERA for arms).
View card
Cold Spells · L7
TRENDING
Same shape as the hot card but for the bats and arms slumping the hardest over the last 7 days vs their season baseline. Underliers tell you whether the slump is real or BABIP-driven.
View card
Hot Streaks · L14
TRENDING
Two-week version. Cuts the L7 single-week noise — a player who shows up here is on a sustained heater, not a 3-game hot start.
View card
Cold Spells · L14
TRENDING
Two-week droughts. Drop / sell consideration territory once the underliers also crater (Whiff% up, Barrel% down, etc.).
View card
Exit Velo · Risers
TRENDING
Top 15 hitters by average exit-velocity gain, last 14 days vs season. EV stabilizes fast (~40 BBE), so this is one of the earliest legit contact-quality signals. Min 25 BBE — sample-gated against flukes. Name / team / pos / own% / PA / BBE / season / L14 / Δ.
View card
Exit Velo · Fallers
TRENDING
Top 15 hitters by average exit-velocity decline, last 14 days vs season. Early sell / fade signal before the slash line reflects it. Min 25 BBE.
View card
Hard-Hit% · Risers
TRENDING
Top 15 hitters by hard-hit-rate (95+ mph) gain, last 14 days vs season. Pairs with EV as a fast-stabilizing contact signal. Min 25 BBE.
View card
Hard-Hit% · Fallers
TRENDING
Top 15 hitters by hard-hit-rate decline, last 14 days vs season. Contact quality eroding before results show it. Min 25 BBE.
View card
Bat Speed & Swing Quality
TRENDING
Top hitters by swing run value with their Statcast bat tracking — bat speed (vs league), blast% (the fastest, best-squared swings), squared-up% and hard-swing%. Power leading indicators that show up before the slash line; a bat adding speed/blasts is a buy-low.
View card
02

Regression

Players whose xStats disagree with their slash line. IL'd players filtered out automatically.

Hitter Luck
REGRESSION
The most and least lucky hitters by the gap between results and contact quality — wOBA vs xwOBA and AVG vs xBA. Luckiest = results outrunning the batted ball (regression down / sell-high); unluckiest = contact says a bounce-back is coming (buy-low). Toggle Luckiest / Unluckiest on the page. Min 120 PA.
View card
Buy Low — Hitters
REGRESSION
Top 10 hitters with the biggest positive xStat-vs-actual gap over the SEASON. xwOBA / xBA / xSLG underlying a deflated slash line. Ranked by buy-side evidence, not a net score. For a same-window comparison see Cold 30 · Strong Underlying.
View card
Sell High — Hitters
REGRESSION
Top 10 hitters whose actual outcomes are outrunning their xStats. wOBA above xwOBA, BABIP-driven AVG — peripherals say regression is coming.
View card
Cold 30 · Strong Underlying
REGRESSION
Hitters whose LAST-30 slash line is cold while their LAST-30 contact quality says otherwise — xBA / xSLG / xwOBA, barrel% and hard-hit% all measured over the same 30 days, not against a season baseline. The bounce-back board. Started 4 of the team's last 7, AVG at least .165, max 2 catchers.
View card
Hot 30 · Weak Underlying
REGRESSION
The inverse: hitters whose LAST-30 results have outrun their LAST-30 batted balls. Same-window comparison on both sides, so the gap is real rather than an artefact of pairing recent results against season-long x-stats. The regression-risk board.
View card
Buy Low — Pitchers
REGRESSION
Pitchers-only version of the buy-low card. ERA outpacing xERA + FIP, K% / CSW% holding up under the surface.
View card
Sell High — Pitchers
REGRESSION
Pitchers-only version of the sell-high card. ERA suppressed by LOB% / HR-FB% luck while xERA + FIP say otherwise.
View card
HR/FB Regression
REGRESSION
Pitchers (40+ IP) running an unsustainable HR/FB rate — often ~2x the league ~14%. Homers are inflating their ERA above xERA, and HR/FB is one of the least sticky outcomes, so it regresses hard. Buy the ERA correction.
View card
Stuff+ Breakouts
REGRESSION
Pitchers whose predictive Stuff+ (the model's forward, regression-stabilized read on pitch quality) runs well above their current Stuff+ and ERA. The stuff is real and the results lag — buy before it clicks. Capped to ≤70% rostered so they're acquirable; process+ p10–p90 band shown.
View card
Stuff+ Breakouts — Receipts
REGRESSION
Backtested proof the breakout board works: among pitchers with an ERA of 4.00+, the ones our Stuff+ model flagged posted a ~1.1-run better ERA over the following 3 weeks than the bad-stuff control — in every test window. Cohort split, per-window results, and today's top SP buys.
View card
Arsenal Shifts
TRENDING
Pitchers whose pitch MIX has moved most vs their season baseline over the window — ranked by shift magnitude × the new pitch's whiff% × K/9 uplift. Each row carries the signal (new weapon / emerging / watch), the season→recent usage swing, whiff%, Stuff+ and window K/9. The buy-low tell: someone leaning on a plus offering before ownership catches up. L14 / L30 toggle + confirmed-only filter.
View card
RISP Luck Report
REGRESSION
Hitters whose with-runners-in-scoring-position line diverges most from their own baseline. Sell-high (top 10): RISP wOBA/AVG well above their overall rate — the RBI bump is BABIP/clutch noise that regresses down. Buy-low (bottom 10): RISP rate well below baseline — RBIs are owed and coming. Shows wOBA + AVG base → with RISP and the RBI gap. Toggle sell / buy on the page.
View card
03

Removing the Best and Worst

Leave-one-out impact — strip the single most extreme start (or week) from a player's season and see what the line really looks like.

04

Splits & Matchups

Platoon-split-driven streamer pool. Best bats by handedness + biggest split gaps + lineup deployment.

05

Hidden Gems

Composite skill + opportunity + form ranker across the under-50%-owned pool. Two cards: low-owned hitters and starting pitchers.

Hidden Gem Hitters
TRENDING
Top 10 low-owned bats by composite (xwOBA + barrel% + L7 starts + L14 OPS). Each row carries primary stat, ownership %, 7-day owned delta, and 3 reason chips.
View card
Hidden Gem Starters
TRENDING
Low-owned SPs with the cleanest underlying signal — xERA + Stuff+ + scheduled starts + L14 form. Surfaces names two weeks before the rest of the league catches on.
View card
Buy-Low Bats · <50% Owned
TRENDING
Top 10 hitters by raw expected wOBA over the last 14 days, capped at 50% ownership (min 40 PA). Pure squared-up-contact board — xwOBA strips the luck, so these are bats producing under the surface, not BABIP mirages. Each row carries PA, exit velo, hard-hit%, barrel%, and ownership.
View card
Best xwOBA · Season · <50% Owned
SEASON
Season-long expected wOBA leaderboard capped at 50% ownership, min 200 PA. The full-season version of the buy-low board: who has actually hit the ball best all year among players your league has not fully claimed.
View card
Best xwOBA · Season · <20% Owned
SEASON
Same season xwOBA leaderboard tightened to the under-20%-owned pool (min 200 PA) — full-season contact quality hiding on deep-league wires.
View card
Best xwOBA · Season · All
SEASON
The season expected-wOBA leaderboard with no ownership restriction (min 200 PA) — simply who has hit the ball best all year. One card rather than two: with the ceiling removed the 50% and 20% variants collapse into the same board. Players with no ownership snapshot are kept and show an em dash.
View card
Best xwOBA · Last 30 · <50% Owned
TRENDING
Expected wOBA over the last 30 days, under 50% owned, min 60 PA. A month is long enough to mean something and short enough to catch a change in form — the middle ground between the 14-day board and the season one.
View card
Best xwOBA · Last 30 · <20% Owned
TRENDING
Last-30-day xwOBA in the under-20%-owned pool (min 60 PA) — the deepest bats trending up right now.
View card
Best xwOBA · Last 30 · All
TRENDING
Last-30-day expected wOBA with no ownership restriction (min 60 PA) — the hottest contact quality in baseball over the past month regardless of roster rate. The unrestricted counterpart to the 50% and 20% boards, which collapse into one card once the ceiling is gone.
View card
Best xFIP · Season · <50% Owned
SEASON
Season xFIP leaderboard, under 50% owned, min 40 IP. xFIP normalises home runs to a league fly-ball rate, so it reads a pitcher's strikeouts, walks and batted-ball mix without punishing him for a homer-prone month. Lower is better. Computed from our own data — no public xFIP feed carries 2026.
View card
Best xFIP · Season · <20% Owned
SEASON
Season xFIP tightened to the under-20%-owned pool (min 40 IP) — the arms with the best underlying skill nobody has rostered.
View card
Best xFIP · Last 30 · <50% Owned
TRENDING
xFIP over the last 30 days, under 50% owned, min 20 IP. Catches the arm who has quietly changed shape in the last month rather than the one carrying a good season line.
View card
Best xFIP · Last 30 · <20% Owned
TRENDING
Last-30-day xFIP in the under-20%-owned pool (min 20 IP) — deep-league streamers whose skill markers are pointing up.
View card
Deep Sleepers · <20% Owned
TRENDING
Same last-14-day xwOBA leaderboard tightened to the under-20%-owned pool (min 40 PA) — the deepest waiver-wire / streaming bats almost nobody has rostered yet.
View card
06

Pitching Streamers

Bullpen + rotation streaming targets for the week ahead.

SP Streamer Lineups
STREAMER
Today's sub-50%-owned probable starters, each with the opposing batting order as a rendered table — every batter's L14 / season OPS, K% and Statcast (xwOBA, barrel%), color-coded by how hot the bat is (green = cold draw, red = danger). Confirmed lineup when posted, else projected from recent start-share. The streamer matchup read at a glance.
View card
Save Streamers
STREAMER
Low-owned RPs in line for save chances this week — based on the closer-grid (firmness / leverage / role) and the operator's save-odds template. Each row carries odds, recent appearances, and ROS context.
View card
Leverage · Setup Men
STREAMER
Top-10 high-leverage relievers OUTSIDE the closer role — ranked by average leverage index (aLI). Each row carries season basic + advanced (ERA/WHIP/K9/K%/BB%/xERA/Whiff%), a last-30 line, and the incumbent closer they sit behind (IL flag = live save chance).
View card
Closer Board
STREAMER
All 30 bullpens graded over the last 21 days by rolling leverage index (aLI) into a deterministic call — SET (settled closer), CMTE (committee, saves split), or OPEN (no clear 9th). Opportunity pens sort to the top so you can target the muddled save situations before the market.
View card
Start Risk Board
STREAMER
Tonight's starters ranked by the SHAPE of the outcome rather than the average: probability of a quality start, of a 5+ ER blowup, of failing to reach five innings, and of six or more strikeouts. Each line is 20,000 simulated starts, with the innings and run rate moving together the way they do in a real game. The quality-start figure is calibrated against 739 real starts.
View card
Two-Start · Must-Start
STREAMER
Every must-start two-start pitcher this fantasy week. Each row shows both opponents' OPS — season and last 14 days — vs the pitcher's handedness, color-coded by matchup difficulty (soft / neutral / tough), plus season ERA/WHIP/K and ownership. Toggle this week / next week.
View card
Two-Start · 50-50
STREAMER
The 50-50 / streamer-call two-start pitchers — same opponent-OPS-vs-hand (season + L14), color-coded matchup read so you can decide who's worth the two-start gamble.
View card
Two-Start · Bench
STREAMER
The two-start arms to bench/avoid this week — tough matchups or weak ratios — with the same opponent-OPS-vs-hand detail so you can see exactly why.
View card
07

Roster Construction

Lineup-spot movement — playing time signals the slash-line lags.

08

Prospects

Just-promoted call-ups + the prospects most likely to be called up next. MiLB-line + depth-chart context on every card.

Top 10 Prospects
FRESH
The overall top 10 from the prospect composite (MiLB performance, age-vs-level, K%/contact, trajectory, pipeline rank + draft pedigree), across all levels and level-difficulty adjusted. Rookie-eligible only — excludes anyone with MLB PA/IP in the last 3 seasons. Published as the month's board.
View card
Futures Game · Our Ranks
FRESH
Every 2026 All-Star Futures Game roster player with our prospect rank next to MLB Pipeline's — where our model is higher or lower on the sport's next wave. AL / NL toggle. July 12, Citizens Bank Park.
View card
Recent Call-ups — Hitting
FRESH
Position players just promoted from the minors. Each row carries their MiLB line + the playing-time setup that prompted the call (depth chart gap, IL'd player, etc.).
View card
Recent Call-ups — Pitching
FRESH
Pitchers just promoted to the bigs — both rotation and bullpen — with their MiLB line and role context (replacing a starter, swing-arm, late-inning bullpen, etc.).
View card
Call-up Watch
FRESH
Top prospects on the verge of an MLB promotion. Each row shows their MiLB line, scouting tier (Future Value), the depth-chart gap they'd fill, and an ETA window.
View card
MiLB Hot Streaks · L7 · AAA
TRENDING
Top AAA prospects on the biggest L7 hot streak. 6×6 z-score over the last 7 game days. Min 20 PA hitters, 3 IP pitchers.
View card
MiLB Hot Streaks · L7 · AA
TRENDING
Top AA prospects on the biggest L7 hot streak. Deeper-tier breakout signal — the AA tier is where most top-100 prospects spend the bulk of their development year.
View card
MiLB Hot Streaks · L7 · A+
TRENDING
Top A+ (High-A) prospects on the biggest L7 hot streak. Early-career breakouts where the call-up timeline is still 1-2 years out but the raw tools are showing.
View card
MiLB Hot Streaks · L7 · A
TRENDING
Top A (Low-A) prospects on the biggest L7 hot streak. Earliest-tier hot board — the deepest dynasty lens.
View card
MiLB Cold Spells · L7
TRENDING
Top-7 AAA prospects in the deepest L7 cold spell — inverse of the hot streak board. Use it as a buy-low signal if the underlying shape (xwOBA, Whiff%) hasn't degraded with the slash line.
View card
MiLB Hot Streaks · L14
TRENDING
L14 window of the AAA hot-streak board. Two-week window smooths over single-game noise while still catching genuine in-season breakouts.
View card
MiLB Hot Streaks · L30
TRENDING
L30 window — the largest of the MiLB hot-streak set. Identifies sustained AAA breakouts; longer window = stronger signal that the breakout is real and not a hot week.
View card
09

Monthly Comparison

wOBA, FIP and swing-path deltas between the current month and the previous month. wOBA strips on-base/SLG double-counting; FIP strips defense + sequencing luck; the swing cards go a layer further and compare the mechanical change to whether the batted ball followed. Auto-refreshes when the calendar flips to a new month.

wOBA Risers · MoM
TRENDING
Top-15 hitters whose wOBA jumped the most from last month to this month. Min 40 PA in each month — call-ups with cup-of-coffee samples are filtered out. wOBA properly weights walks / 1B / 2B / 3B / HR by actual run value (Tango 2024 weights), so the delta reflects skill change, not OPS double-counting.
View card
wOBA Fallers · MoM
TRENDING
Same shape as the wOBA Risers card but inverted — top-15 biggest month-over-month wOBA declines. Min 40 PA in each month. Use it to spot decline candidates the slash line is still flattering.
View card
FIP Improvers · MoM
TRENDING
Top-15 pitchers whose FIP dropped the most from last month to this month. FIP isolates the K/BB/HR skill core from defense and BABIP luck. Min 15 IP in each month so we're comparing real workloads, not 2-IP relief blips.
View card
FIP Decliners · MoM
TRENDING
Top-15 pitchers whose FIP rose the most month-over-month. Underlying K/BB/HR signal degrading — worth a sell-high look before the ERA catches up.
View card
Swing Shifts · Buy
REGRESSION
Hitters whose swing improved month-over-month while the batted ball has NOT followed yet — ideal swing% up, xwOBA-on-contact flat. The predictive one of the three: the mechanical change is visible before the results are. Ranked on ideal swing% (the share of competitive swings landing in the productive attack-angle window) because it is the one swing metric where higher is unambiguously better; attack angle, tilt and direction ride as context columns. Min 100 competitive swings in both months.
View card
Swing Shifts · Confirmed
TRENDING
The other half: hitters whose swing improved AND whose xwOBA-on-contact moved with it. Descriptive rather than predictive — the market has probably seen this one — but it is the evidence that the swing read works at all. Same card page, opens on the confirmed view.
View card
Bat Speed Decline · MoM
REGRESSION
Hitters whose average bat speed dropped a mile per hour or more from last month. This earns its own card because bat speed barely moves: across qualifying hitters the month-to-month spread was 0.78 mph, against 2.6 degrees for attack direction, so a real drop is several deviations of a stable trait and tends to read as age or a hidden injury before the slash line does. Same card page, opens on the bat-speed view.
View card
09b

Last 30 vs Season

Rolling last-30-day skill vs the full-season baseline — a shorter, always-current window that catches in-month form changes the month-over-month boards miss. K-BB% strips defense/BABIP to the command core; (R+RBI)/PA isolates counting-stat run production per opportunity.

K-BB% Risers · L30
TRENDING
Top-15 pitchers whose K-BB% (strikeout rate minus walk rate — the sticky, fastest-stabilizing command signal) has surged the most over the last 30 days vs their season baseline. Min 20 IP in the window. Each row: season → L30 K-BB% with the K% and BB% components and window IP. The command-is-clicking buy tell before the ERA follows.
View card
K-BB% Fallers · L30
TRENDING
Same shape inverted — top-15 pitchers whose K-BB% has dropped the most over the last 30 days vs season. Min 20 IP. Rising walks or fading whiffs erode the command core before the run prevention catches up — a sell-high / fade signal.
View card
Run Production Risers · L30
TRENDING
Top-15 hitters with the biggest surge in run production — (Runs + RBI) per plate appearance — over the last 30 days vs season. Min 40 PA. Captures who's driving and scoring runs at a higher clip per opportunity: lineup-spot upgrades and heaters that pay off in the two counting cats owners actually roster for.
View card
Statcast Percentile Movers
TRENDING
Biggest percentile climbers / droppers over the last 30 days vs season, across xwOBA, xBA, xSLG, hard-hit% and barrel%. Each hitter is ranked by percentile on both their L30 and season value (min 100 PA in the window), and the move is the delta — a 'who's actually changed' board free of small-sample noise. Switch metric + risers/fallers on the page.
View card
Run Production Leaders · Season
SEASON
Season leaders in run production — (Runs + RBI) per plate appearance — among hitters with at least 250 PA. A rate rather than a counting total, so a part-time bat and an everyday leadoff man sit on the same axis: raw R+RBI leaderboards are really playing-time leaderboards. Each row carries the rate, the gap to league average, and the raw R / RBI / HR / OPS behind it.
View card
Run Production Laggards · Season
SEASON
The same board inverted — qualified hitters with the LOWEST (Runs + RBI) per plate appearance on the season. Everyday playing time with none of the counting stats behind it, which is the drop case a rate stat makes visible and a counting-stat leaderboard never will.
View card
10

Yearly Comparison

2025 vs 2026 deltas — full-season prior + in-season current. Min 400 PA / 100 IP last year, 100 PA / 50 IP this year (operator spec) prevents call-up samples from gaming the climber boards against an empty prior season.

11

DFS / Daily Slate

Today's slate tools — ownership-agnostic. Daily projections, the game environment and bat-vs-arsenal edges to build stacks and pick pitcher spots.

12

Game Day Lineups

TODAY's posted lineups, priced in plate appearances. The Roster Construction cards look back over rolling windows; these two are the game-day snapshot — who just moved, who is sitting, and what it costs.

13

Streaks & Droughts

Season-long runs counted exactly to the plate appearance — not rounded to whole games. Players on the IL, in the minors, or not playing are excluded, because a long streak with no recent PAs is a playing-time story, not a skill one.

Each card opens its full 1080×1080 render — share to Reddit / Twitter or screenshot for your league chat.