Scoring a Game — Points Per Game
cEDH pods have 4 players, so raw win rate is misleading. We score each game instead of counting wins:
- Win = 5 points (you beat 3 opponents)
- Draw = 1 point
- Loss = 0 points
PPG = (5 × wins + 1 × draws) / games playedThe scale runs 0.00 to 5.00. The random-chance baseline in a drawless environment is 1.25; the live baseline is adjusted down by the observed draw rate.
Individual Player Rating (Wartable Rating)
Ratings are event-based: you earn points at each tournament, and your rating is the sum of your best 8 results from the last 12 months.
Step 1 — Event Value
Each tournament has a maximum point value based on field strength and size:
event_value = (field_strength / global_avg)^0.7 × log2(players)^1.1 × 100Field strength is the average rating-derived skill of participants. The 0.7 exponent applies diminishing returns, so playing in a stacked field helps — but never more than actually performing well.
Step 2 — Seat-Adjusted Wins
Turn order matters in cEDH. Each win is weighted by seat difficulty: wins from seat 1 are worth slightly less, wins from seat 4 slightly more, scaled by the observed global seat win-rate gap for that period. This is a small correction (±10% max) — skill still dominates.
Step 3 — Your Points at the Event
percentile = 1 − (standing − 1) / players
points = event_value × percentile²The squared percentile means 1st place earns 100% of the event value, mid-table earns ~25%, and bottom-half finishes earn almost nothing. Making the top cut adds a bonus mini-event scored the same way using only top-cut participants.
Anti-gaming rules
- Minimum 3 completed games at an event to earn any points (no register-and-drop farming)
- Only best 8 results count — attendance volume alone can't inflate a rating
- Ratings recompute in 3 bootstrap passes so field strength reflects refined skill, not raw first-pass numbers
Team Rankings
Teams are rostered groups competing for a collective ranking.
Roster rules
- Minimum 5 members to appear on the leaderboard
- Maximum 10 members on a roster
- A player may belong to one team at a time
- Results only count for a team if the player was on the roster when the tournament was played (no retroactive signings)
- Roster lock: players who leave a team cannot count for a new team for 30 days (kills mid-season mercenary swaps)
Qualified member: a roster member who has played at least 5 tournaments in the 6-month scoring window. Only qualified members can contribute to the team score. Shorter display windows scale this floor proportionally: 3 in 3 months, 1 in 30 days.
Team Score — Decay-Weighted Average (size-neutral)
Sort the team's qualified members by rating, highest first. Each member gets a weight that decays down the list:
weight_i = 0.8^(i−1)
member 1 = 1.00 member 2 = 0.80 member 3 = 0.64 ... member 10 = 0.13For every roster size k from 5 up to the number of qualified members, compute the weighted average of the top k:
avg_k = Σ(weight_i × rating_i) / Σ(weight_i) for i = 1..k
team_score = max(avg_5, avg_6, ..., avg_n)In plain terms: every member can count, stronger members count more, and the team's score is the best weighted average across all roster depths from 5 to n.
Why this is fair to both 5-player and 10-player teams
- Adding a member can never hurt you. Because the score is the maximum across depths, a weak 6th–10th player is simply neutral — they're on the roster, they develop, and the team score ignores them until they're good enough to raise it. No team is ever punished for carrying bench or developing players.
- Headcount alone can never win. It's an average, not a sum, and the decay weights mean depth players influence the score far less than the top of the roster. A 10-player team of average players still loses to a 5-player team of killers.
- Depth is rewarded only when it's real. A strong 7th player genuinely lifts the weighted average — that's earned credit, not a flat bonus for roster size. No arbitrary caps or bonus percentages to tune.
- Small teams compete on pure quality. A 5-player team's score is just its own decay-weighted average — the same formula, no handicap.
- The 5-tournament activity floor stops teams from stashing an inactive star whose old rating props up the top of the list.
- Point-in-time roster attribution + 30-day lock prevents teams from renting a hot player after their results are already in.
Each team page displays the current team score, each qualified member sorted by rating with their weight and whether they're inside the counted depth (highlighted), unqualified members greyed out with games-remaining-to-qualify, and a score history chart.
Tiebreaker order: (1) higher unweighted average of top 5, (2) more qualified members, (3) best single member rating.
Statistical Confidence
Small samples lie. Anywhere we rank decks or players on rate stats (win rate, PPG), we rank by the lower bound of a 95% credible interval rather than the raw average, using a prior centered on the random-chance baseline (1.25 PPG / 25% pod win rate). New or low-volume entries show an approximate rank (~#) until they clear a minimum sample threshold — 75 entries for decks, 10 pods for seat stats.
Data & Caveats
- Tournament data from public event results; 16+ player events by default
- Entries missing decklist data are excluded from deck stats but fully counted in player and team ratings
- Card- and deck-level performance numbers are observational correlations, not causal claims
- All rankings recompute on each data sync
Real tournament results are provided by TopDeck.gg.