What your deck does in good hands
A deck's average win rate is a fact about everyone who sleeved it up, most of whom are not you. This report separates a deck's base rate from its ceiling — the win rate a strong pilot can expect — by modelling pilot skill instead of reading it off the leaderboard.
Why the obvious version of this doesn't work
Over a 15-round event a single pilot's win rate carries a standard error near 13 points. Rank decks by their best pilot and you mostly rank them by how many pilots rolled dice — a 6-pilot deck beats a 60-pilot deck almost every time.
So the ceiling here is the 90th percentile of a fitted distribution of true pilot skill (hierarchical beta-binomial, pooled across all four events), not the 90th percentile of observed rates. On simulated data where the truth is known, the naive version overstates the ceiling by 8–12 points; on this data it overstates by 13–16. Both numbers are in the table so you can see the gap.
The field
Sorted by metagame share. Click any row for the pilot-by-pilot detail. The range bar shows each deck's fitted floor (P10) → mean → ceiling (P90) on a shared scale, so a wide bar means the deck's result depends heavily on who is holding it.
Split lists colour variants separately — Esper, Azorius and Jeskai Blink are different decks. Merge folds them into the parent, which costs precision on the matchup but buys the sample size the ceiling model wants.
| Deck▾ | Share▾ | Pilots▾ | Matches▾ | Win %▾ | Unwtd▾ | 95% CI | Floor → Ceiling | Ceiling▾ | Naive▾ | Skill expr▾ |
|---|
Head to head
Row deck's match win rate against column deck. Cells are coloured around the 50% midpoint. Cells with fewer than 20 matches are italic and faded — at that sample a 3–0 means nothing. Hover any cell for the record and its confidence interval.
Contested slots
Within a single archetype, most of the list is not a decision. These are the slots where pilots of the same deck actually disagree — ranked by the entropy of the copy-count distribution across pilots, which captures "do I play it?" and "how many?" in one number. Fetchlands and basics are excluded.
Read the win-rate numbers with suspicion
Of — with/without tests, zero had the sample size to detect a 4-point effect; the median detectable effect is —. Of — copy-count curves, — survive multiple-comparison correction. Real card choices are probably worth 1–2 points, which is unreachable at any sample size this dataset will ever have.
That is not a shrug — it is the result. Expanding from 4 events to — removed most of the effects that looked significant in the smaller sample; they were false positives. So the slot map is the trustworthy artifact. Anything that does clear significance is either an enormous effect or a build split masquerading as a card choice — and stronger players converge on correct builds, so a winning card may simply be the card good players pick. Nothing here separates those.
How this was built
Every number traces to melee.gg's own published pairings. Nothing is hand-entered.
Classification
Melee's deck name is free text the player typed, and when they leave it blank melee auto-fills a colour string. Across these events that produced — distinct name strings for roughly 30 real archetypes, with entries like "Izzet", "W-U-B-G" and "Colorless" carrying no information at all.
So decks are classified on card signatures, not names. Signatures were mined from the decklists themselves rather than written from memory — the current format contains cards no prior knowledge would include.
The ceiling model
For each deck, pilot i's true win rate is drawn from a Beta, and their observed record is Binomial on it:
pi ~ Beta(μ·κ, (1−μ)·κ)
wi ~ Binomial(mi, pi)
μ is the deck's mean true win rate; κ is concentration — a low κ means the deck's outcome depends heavily on its pilot. Ceiling is the 90th percentile of that latent Beta. κ is poorly identified from few pilots, so each deck's κ is shrunk toward a global κ fitted across all 3,383 pilots. Confidence intervals come from a 300-fold bootstrap over pilots.
Decisions that shape the numbers
Why the window starts at a ban
The boundary was found in the data rather than assumed. Phlage, Titan of Fire\u2019s Fury appears in 25–34% of Modern decks from January through 17 May 2026, then in 0 of 28 decks on 24 May and 0 of the several hundred that follow. Nothing else disappears like that.
Everything before that line is a different format and is excluded, however much data it would have added.
Recency and event tier
Matches are weighted by age on a 60-day half-life, then renormalised to mean 1. Without the renormalisation the model reads uniformly smaller weights as less evidence, drives kappa up, and compresses every ceiling for a purely arithmetic reason — in testing, halving all weights moved kappa from 41 to 140 while leaving the mean untouched.
Events under 100 players are excluded. Pooling 40-player local RCQs barely moves the win rates but inflates every ceiling by about 4 points, because a wider pilot pool reads as a wider latent skill spread. Those 72 small events carried only 19% of the matches, so dropping them costs little and keeps the ceiling meaning what you want it to mean.
What this cannot tell you
Pilots are self-selected, not randomly assigned. A deck with a wide fitted spread may genuinely reward skill, or may simply have attracted a wider mix of players. This data cannot separate those two, and no amount of extra events will fix it — it would take randomising who plays what.
Treat a wide spread as "this deck's result varied a lot by pilot", which is true and useful, rather than "this deck rewards skill", which is a causal claim the design does not support.