MLB: Hottest & Coldest TeamsHottest and coldest MLB teams over rolling 10/20/30 game windows.
Hot 🔥
Cold ❄
Mariners: Playoff Odds Mariners playoff odds with the one-week trend.
Fangraphs
DIVISION
WC1
WC2
WC3
Mariners: 2025 vs 2026 Record Tracker {division} standings on hover.
Pace to Wins From the current record, the record this team would need over its remaining games to finish at each win total from 81 to 100, and the win rate that pace implies. "Clinched" means it already has that many wins; win totals no longer reachable are omitted. The line above the table is the difficulty of the remaining slate: the combined winning percentage of the opponents still on the schedule.
League RankingsWhere this team ranks across the league in every major category. Filter the field — all of MLB, the AL, or the NL (cross-league is a what-if: where this club would rank in the other league). Green = top of the field, red = bottom. Then pick the window: full season, last 30 days, or last 14.
Player Stats: Hot and Cold (MLB) Mariners MLB roster only. Hitters sorted by trailing wOBA; pitchers by FIP. Cold-list quality gates: hitters need wOBA below .290, pitchers need FIP above 3.75. Same player can never appear on both hot AND cold lists.
Last 7 days
🔥 Hottest hitters
🧊 Coldest hitters
🔥 Hottest pitchers
🧊 Coldest pitchers
Player Stats: Hot and Cold (Minor Leagues) Mariners minor-league system. Top tab row picks affiliate (Minors rollup combines all four). Hitters sorted by wOBA; pitchers by ERA (FIP isn't published at affiliate level). Per-affiliate views skip the cold-list quality gate because each pool is too small to spare a name.
Last 7 days
🔥 Hottest hitters
🧊 Coldest hitters
🔥 Hottest pitchers
🧊 Coldest pitchers
Player Stats: Current Pace In 2026 Linear extrapolation of each player's end-of-year stats over a full season based on current totals.
Hitters
Pitchers
Player Stats: Contract Value Every contract on the roster scored by surplus value: market value minus actual cost. Market value uses a TIERED price of a win, keyed off each player's projected WAR - $11M per WAR for players projecting to 4+ WAR, $9M per WAR at 2-4, and $8M per WAR under 2 - so stars are priced at the premium teams actually pay for them in free agency. Actual cost is AAV for free-agent deals and extensions, and current-year salary for arb, pre-arb and minor-league deals. Players under a guaranteed deal carry a green pill with their last guaranteed season (SIGNED THROUGH 2031 - option years excluded); arb, pre-arb and minor-league pills mark players still on the team-control track. Players facing a 2027 decision get a second pill: green FA 2027 for expiring deals and final arb years, or a slate pill naming the unexercised 2027 option (team, player, mutual or vesting). Sorted by surplus, best value first; every column is click-sortable. Contract data: FanGraphs RosterResource (annual snapshot); projections update daily.
Proj fWAR
Proj bWAR
Scouting: Upcoming Opponents {nextOppContext} Four views of the opponent's 40-man over recent windows. Top tab row picks which opponent — the team we're currently facing or the one coming after (each carries the series date range) — or Probables for the upcoming probable starters (today plus the next 9 games, with "Last three" stats per starter). Hot/Cold mirrors the Mariners Hot/Cold MLB panel (7d / 14d, hitters sorted by wOBA, pitchers by FIP, cold-list gates: hitters wOBA below .290, pitchers FIP above 3.75, same player can't appear on both lists). Probable starters in the upcoming series are flagged with a * in Hot/Cold and a blue card border in the FIP cards. Last 30 days wRC+ and FIP show player cards whose sparkline is that window's number after each game, so it finishes on the headline; dashed reference line at the 100 / 3.10 league baseline. Sample-size gates: 10 PA / 2 IP for 7d, 15 PA / 3 IP for 14d, 30 PA / 6 IP for 30d. Card colors: wRC+ green ≥110 / red ≤90; FIP green ≤3.50 / red ≥4.50 (good pitcher = tough matchup).
Currently facing
Hot/Cold
Last 7 days
🔥 Hottest hitters
🧊 Coldest hitters
🔥 Hottest pitchers
🧊 Coldest pitchers
Workload
Last 3 days
Last 3 days
Offense: Rolling Player Cards (wRC+) One card per Mariners hitter (≥15 season PA). Pick a window — Season, either side of the All-Star break, or the trailing 30 / 14 / 7 days — and the headline wRC+ and the sort follow it (100 = league avg, ≥110 above, ≤90 below). Sparkline is the window's wRC+ after each game — one game, then two, then three — so it finishes on the headline number. The dashed line is the 100 league average. Cards sorted hottest at top.
Offense: Pitches per PA vs wRC+One card per hitter over the trailing 30 days, showing pitches seen per plate appearance (plate patience). The P/PA line is green when the hitter is above the league average, red when below; the dashed line is the league mark. Toggle on the blue wRC+ line (production) or the purple OBP line to overlay them on the same 30-day window. Headlines are each hitter's 30-day P/PA, wRC+ and OBP, green or red vs league. Cards sorted by most pitches seen per PA.
Offense: Swing Plane & Bat TrackingStatcast bat-tracking per hitter. Attack° is the swing plane (the bat's vertical angle through contact); Tilt° is swing-path tilt; plus bat speed (mph) and swing length (ft). Window pills pick the span — Season, either side of the All-Star break, or the trailing 30 / 14 / 7 days. The Δ columns are the selected window's change vs the season, except on Season, where they compare 2026 to 2025 — for the swing (Δ Ang), the deserved contact quality (Δ xwOBA), and results (Δ wRC+). xwOBA is the expected wOBA on contact over the selected window. The Correlation view lists each hitter's production change (Δ xwOBA / Δ wRC+) next to their single most significant swing change, sortable by any column (default: Δ xwOBA, best to worst).
Offense: Plate Discipline & ContactPer-hitter swing decisions and contact quality from Statcast. Whiff% is swings that miss and Out-of-Zone Swing% is swings at pitches out of the zone (both better when lower). In-Zone Swing% is swings at in-zone pitches, In-Zone Contact% is contact on in-zone swings, Out-of-Zone Contact% is contact on out-of-zone swings, In-Zone SLG is slugging on pitches in the zone, Hard-Hit% is batted balls 95+ mph, and Barrel% is the elite-contact rate. Green beats the MLB average, red trails it. Toggle any metrics onto the cards, or use the Table view; switch between Season, either side of the All-Star break, and the trailing 30 / 14 / 7 days. The Rolling Cards view's sparklines are a trailing 10-game trend, so on the shorter windows they cover more games than the headline beside them.
Offense: Power and RISP Trackers Power & RISP: green is above the league average, red is below. L/R Splits: batters with ≥50 PA — OPS vs each pitcher hand (PA in parens), with a Δ for switch hitters. Luck: actual minus expected wOBA (wOBA − xwOBA) — positive (green) means results have outrun the contact quality (regression likely), negative (red) means better contact than the line shows (bounce-back likely); pitchers use xwOBA-against − wOBA-against, so positive still reads as lucky.
Power
RISP
L/R Splits
Luck
Hitters
Pitchers
🍀 Luckiest — overperforming, regression likely
🌧️ Unluckiest — underperforming, bounce-back likely
Team Numbers Team offense or pitching over the selected window — Season, or the last 30 / 14 / 7 days. Each card's value is the team's number for that window, and the sparkline is that same number after each game, so the line finishes exactly on the value below it. The Season chart plots one point per week (still season-to-date as of that week, not the week on its own). The dashed line and the bottom number are the MLB league average — green beats league, red trails. HR is the one counting stat here rather than a rate, so its dashed line rises with games played (league pace) instead of sitting flat. Pitching stats are better when lower (ERA, FIP, xwOBA against, BB/9, HR/9).
Offense
Last 7 days
Pitching: Rolling Player Cards FIP tab: per-pitcher FIP over the chosen window (Season / Pre-ASB / Post-ASB / Last 30 / 14 / 7), with a spark showing that window's FIP after each appearance, so it finishes on the headline number. The dashed line is league-average FIP (3.10). Velo tab: average fastball velocity over the same windows per pitcher, with a spark showing that window's average after each outing (so it finishes on the headline) and the window's gap vs the pitcher's season average, which the dashed line marks. Tabs at the top switch between the two views.
FIP
Pitching: Bullpen Avails, Recent Stats Reliever availability and recent form over a Last 3 / Last 10 / Season window. Workload is a day-by-day pitch-count grid; Stats shows FIP, ERA, K, BB and K-BB%; Strand / Whiff shows inherited-runners stranded and whiff rate. The Fresh / Available / Tired pill is a fatigue score for the window (70% pitch count, 30% appearances); the Season view shows usage only, no verdict. Source: Baseball Savant + MLB Stats API; Savant pitch data lags ~a day.
Workload
Last 3 days
Last 3 days
Last 3 days
Pitching: Pitch Mix Changes Pitch-mix shift detection (season baseline vs last 3 outings). Detects when a pitcher's last-3-outings pitch usage drifts more than 5 percentage points from their season baseline.
No mix shifts detected — every Mariners pitcher's last-3-outings pitch usage is within 5 percentage points of their season baseline.
Fielding: Outs Above Average Tracker OAA per Mariners fielder this season, with each player's primary position's MLB league average for context. Rate Added is how much better than expected the fielder converts the chances hit at him (actual minus expected success rate); Pace projects his OAA onto a full-time fielder's season (1,350 defensive innings), so a part-timer's rate can be read against a regular's total. Neither grows with playing time, so both are the columns to sort by when comparing a regular against someone with far fewer innings. Players on the IL or optioned to the minors sort to the bottom — their rates come off small samples. The Fielding Run Value tab shows the same fielders in runs saved/cost. Sorted by the active metric descending.
ABS Challenges Each player's challenger record (challenges THEY initiated), split by role. Total = challenges the player made, Correct = call overturned, Incorrect = call confirmed. Source: Baseball Savant. The role pill (While Batting / While Catching / While Pitching) shows the player's record in that context only — a catcher's "While Catching" row excludes their batting-context challenges, and vice versa. Team-aggregate cards above are the franchise total across every player and every role.
While BattingBatting