LOLSOCOSMO

Methodology

Data notes

This site merges two sources: the league's historical spreadsheet (2014–present) and the Sleeper API (2021–present, game-level). When they disagree, here's how it's settled.

Ground rules

  • Season standings display the sheet's official numbers — the league's record as kept by the league.
  • Game results (rivalries, records, streaks) come from Sleeper matchups and brackets, which are authoritative for who won.
  • Stat corrections: Sleeper retroactively updates raw points after games; recorded results stand even when corrections flip the raw score.
  • The 2025 XP return: Ryan's week-13 score included a 280-point XP return glitch. It counts as 113.84 everywhere on this site (he'd have won the game anyway).
  • The 2025 co-championship: Greg coached weeks 1–8 (6-2), Drake weeks 9–17 and the title run. Games are credited to whoever was in the chair that week; the ring counts half for each.
  • Player stats count points scored while started — bench points only show up in the tragedy lists. "Optimal lineup" fills your roster's best legal lineup for that week (FLEX = RB/WR/TE).
  • Draft "value" is the points a player scored as a starter that season for anyone in the league — a steal is a steal even if you traded him away.
  • The Yahoo era (2017–2020) was recovered game-by-game from the league's original Yahoo pages (Yahoo's API wouldn't cooperate; the pages did). Teams were matched to managers by final record and rank, and every recovered result was verified against the sheet — 384 checks, with only two 4-cent rounding differences. Postseason games the league never counted (untracked consolation filler in 2017–2018) are excluded, matching the sheet's bookkeeping.

Sheet errata

Places where the spreadsheet's bookkeeping disagrees with Sleeper's recorded brackets. The site uses the bracket-verified numbers; the sheet keeper may want to update these cells.

SeasonManagerStatSheet saysActually
2022Stephanplayoff wins01
2022Stephanplayoff losses21
2025Kappyplayoff wins21
2025Stephanconsolation wins12
2025Mikayeltotal7-88-8
2025Calebtotal4-116-11
2025Sobitotal6-124-12

Example: the 2022 sheet gives Stephan an 0-2 playoff run — but it also (correctly) awards him the bronze, which he won by beating Alex 137.42–63.22 in the third-place game. The bracket says 1-1.

Results that beat the scoreboard

Games where the recorded result differs from the final raw points — Sleeper applied stat corrections after the result was locked in. The recorded result stands.

SeasonWeekMatchupRecorded winnerFinal points
20219Jeff vs CalebCaleb103.63–103.03
202116Curtis vs MaxMax88.60–87.40

Minor point-total differences

29 season point totals differ slightly between the sheet and Sleeper's current API (mostly 2021) — post-game stat corrections applied after the sheet was written. Standings pages show the sheet's official totals; game-level pages use Sleeper's.

Show all 29
SeasonManagerStatSheetSleeperΔ
2021David Mpoints for2026.642013.14-13.5
2021David Mpoints against1542.841552.349.5
2021Gregpoints for1830.21830.70.5
2021Gregpoints against1593.261588.26-5
2021Stephanpoints for1828.141830.642.5
2021Stephanpoints against1709.161714.665.5
2021Kappypoints for1846.661851.665
2021Kappypoints against1726.181725.18-1
2021Alexpoints for1740.681749.689
2021Alexpoints against1812.181816.684.5
2021Ryanpoints for1695.381694.38-1
2021Ryanpoints against1766.791764.29-2.5
2021Mikayelpoints for1674.291683.799.5
2021Mikayelpoints against1785.071788.073
2021Maxpoints for1507.391505.89-1.5
2021Maxpoints against1650.671664.1713.5
2021Austinpoints for1743.291750.797.5
2021Austinpoints against1683.41682.9-0.5
2021Curtispoints for1483.181487.184
2021Curtispoints against1827.441828.941.5
2021Calebpoints for1687.81696.89
2021Calebpoints against1739.651747.658
2021Jeffpoints for1575.921581.926
2021Jeffpoints against1802.931803.430.5
2023Mikayelpoints for1940.921941.921
2023Calebpoints against1609.221610.221
2024Sobipoints against1763.141764.141
2024Curtispoints for1535.321536.321
2025Gregpoints against917.12918.121

Refreshing the data

  • node scripts/sync-sleeper.mjs — pull the latest Sleeper data (new season results, live standings).
  • python3 scripts/import-sheet.py league-history.xlsx — re-import the sheet after edits.
  • node scripts/build-data.mjs — rebuild the merged model and re-run every verification check.