The honesty rail
Methodology
What each module actually measures, straight from the engine that computed it — not a paraphrase. If we can’t measure something honestly yet, the module says so instead of guessing.
Commander & Brawl Tiers
Deck-frequency tiers computed by us from the Archidekt public decklist corpus: 'trending' = newest decks (orderBy=-createdAt), 'established' = most-viewed decks (orderBy=-viewCount). Tier is the commander's deck-count rank-percentile within its bucket (S>=90th, A>=70th, B>=40th, C>=15th, else D). This measures popularity + momentum, NOT a constructed win rate — we don't have proprietary tracker telemetry for that (see METAHUB-SPEC.md's honesty rails). top_inclusions = the non-land cards most often played alongside that commander across the decks we scanned. Tournament-result axis (topdeck.gg): published.
Limited Tier List
Real win rates from 17lands' public PremierDraft card ratings (CC BY 4.0) for the current premier set. Tier = ever-drawn win rate vs the field (S>=56%, A>=53%, B>=50.5%, C>=48%, else D); sample_size = game_count. Cards with no recorded games render 'unrated', never a guessed tier.
Constructed Tiers
Real tournament-backed win rates for Standard/Pioneer/Modern, computed by us from topdeck.gg's public tournament-results API (Tournament results via topdeck.gg -- see the per-row topdeck_url for the source event). archetype_or_deck = the organizer's own archetype tag when topdeck.gg carries one for that standing, else the raw deck/decklist name reported, else the honest 'Unclassified Deck' bucket -- we never infer an archetype from an unparsed decklist link. sample_size = total recorded match games (wins+losses+draws) across every event counted this run; event_count = distinct tournaments the archetype/deck appeared in; best_finish = its best final standing across those events. Tier = match win rate (S>=60%, A>=55%, B>=50%, C>=45%, else D); an archetype with zero recorded games renders 'unrated', never a guessed tier.
cEDH Tournament Results
Real Commander/cEDH tournament results from topdeck.gg's public tournament-results API (last 30 days, format=EDH) -- see the per-event event_url for the source. Up to 40 of the most recent events are shown; top_standings = up to 8 players per event, ranked by OUR OWN win differential (wins - losses, ties broken by wins) -- topdeck.gg's real API carries no organizer-tagged 'placement'/'standing' field, so this is not the event's official final standings. commanders = the standing's real commander name(s) ONLY when topdeck.gg's structured decklist import (deckObj.Commanders, verified live 2026-07-11 as genuinely real for roughly 43% of standings -- most commonly a Moxfield import) is present for that standing; otherwise null, never inferred from an unparsed decklist. sample_size = player_count (a real recorded event, not a statistical estimate, hence always-high confidence like the banlist/calendar modules).
Ban List & Legality Tracker
Snapshot of Scryfall's machine-readable legalities (the ban truth) as of this bulk-data pull. Scryfall's legality statuses are legal/not_legal/restricted/banned — there is no separate 'suspended' status, so Vintage-style restricted cards are reported alongside banned rather than inventing a status Scryfall doesn't expose. See the linked Wizards announcement page for the human explanation and change history; Scryfall doesn't carry ban dates, so this row does not claim a 'last B&R change' date it can't ground.
Rotation & Set Calendar
Recent real (non-digital) expansion/core/commander/masters sets from Scryfall's /sets endpoint, newest first — near-zero maintenance per METAHUB-SPEC.md module 4. 'standard_legal' is read directly off whether Scryfall reports ANY card from that set as Standard-legal (ground truth, not a hand-maintained rotation calendar).
Format Snapshots
One hub-card row per tracked format: legal-set list + banned/restricted counts from Scryfall legalities (ground truth), our own coverage state for this hub (honest 'pending' where a module isn't live yet), and cite-and-link-only external tracker URLs (untapped.gg, MTGGoldfish) — we NEVER ingest their numbers, only link to them by name.
What Changed (Meta Movers)
Day-over-day diff of THIS hub's own two most recently published mtg-meta.json / mtg-draft.json payloads -- not an external source. Computed at publish time by reading the games-hub clone's EXISTING payload before it is overwritten this run. commander_riser / commander_faller = the top 8 commanders (each direction) by deck_count delta within the SAME format+bucket across the two runs; draft_grade_change = cards whose BuildKit Draft Score grade moved between runs for a set tracked in BOTH payloads' overall_rows; banlist_add / banlist_remove = cards that entered/left a format's banned+restricted list; new_set = a set_code appearing in calendar this run that was not in the previous payload. Every row carries this run's own computed_at (the standard honesty field) PLUS previous_computed_at/current_computed_at -- the two payload timestamps actually being compared. A first publish (no previous payload found in games-hub) or any --dry-run (which never touches the games-hub clone) both ship the honest 'pending_history' status with zero rows rather than guessing a diff.
Attribution
Card data, color identity, legalities, and set/rotation dates — pulled from Scryfall's public bulk data with a custom User-Agent, cached at least 24 hours per Scryfall's guidance to add value rather than mirror the API.
Limited card win rates and sample counts, from 17lands' public PremierDraft card-ratings export. Licensed CC BY 4.0 — attributed here and on every Limited row.
Commander/Competitive Brawl decklist search, used at low volume with paging and aggressive caching out of courtesy to their API — "Decklists via Archidekt" on every commander-tier row, each linking straight to the real decklist it was computed from.
Real tournament results powering two modules: Constructed Tiers (Standard/Pioneer/Modern aggregate event records — topdeck's API carries no archetype tags for constructed, so buckets are honest "Unclassified Deck" records) and cEDH Tournament Results (recent events with standings; commander names shown only where topdeck's structured deck data carries them). Every event links back to its source page on topdeck.gg.
Card images via Scryfall.
The honesty promise
- Every row carries its sources, sample size, computed-at timestamp, and a confidence badge — high, medium, low, or sample.
- Low-sample rows render visibly faded, with the count shown rather than hidden.
- We never imply a win rate we don’t have. Limited cards 17lands hasn’t recorded games for render
unrated, never a guessed tier. Where a tracker (untapped.gg, MTGGoldfish) has real telemetry we don’t, we link to them by name instead of guessing at a number. - A dead data source ships its module with the last good data and an honest stale stamp — it never invents a fresh-looking number.
- Nothing from untapped.gg, MTGGoldfish, AetherHub, Moxfield, EDHREC, or MTGA Zone is fetched, re-hosted, or re-published as ours. We cite and link, never ingest.
- This payload’s status is currently
published— the page shows a SAMPLE DATA banner whenever it isn’tpublished.
The closing audit
Us vs. untapped.gg
Untapped.gg is the largest third-party tracker for Magic: The Gathering Arena. Here’s the honest side-by-side — where we land in the same place, where we’re ahead, and where we deliberately don’t compete. Every claim about untapped.gg below is cited to its own site — we don’t fetch, mirror, or guess at what it does.
| Feature | play.buildkit.store/mtg | untapped.gg |
|---|---|---|
| What we match | ||
| Format meta coverage | Standard, Pioneer, Modern, Commander, and Brawl tier lists, refreshed from live tournament and decklist data. | Standard, Pioneer, Modern, and Commander/Brawl meta reports and tier lists, built from its own tracked match data. [untapped.gg ↗] |
| Ban list & format legality | A ban list and legality tracker cross-checked against Scryfall's legality data every rotation. | Format legality reflected across its meta reports and deck-building tools. [untapped.gg ↗] |
| What we beat | ||
| Day-one cube intelligence | Every card in a brand-new 560-card cube gets a real, engine-computed S–F tier the day the cube is built — before a single game is logged. | No custom-cube support. Its ratings depend on aggregated match telemetry that doesn't exist yet for a cube nobody has played. [untapped.gg ↗] |
| Transparent basis chips | Every rating carries a basis chip naming exactly what it's computed from — 17lands sample, heuristic proxy, or price signal — plus the sample size behind it. | Ratings surface as a single number or tier; the underlying blend isn't shown row by row. [untapped.gg ↗] |
| Receipted rules-engine league | League standings come from real, reproducible rules-engine games — every promoted result links back to its own match receipt. | Meta stats are aggregated from player telemetry, not a receipted, reproducible log per matchup. [untapped.gg ↗] |
| No login, no install, no ads | The whole hub loads in a browser. No account to create, no companion app to install, nothing running in the background. | A companion app download is required for its tracker and draft overlay, and an account is required for personalized stats. [untapped.gg ↗] |
| What we don't do — and why | ||
| Telemetry volume | Zero player-match telemetry — we don't watch anyone's games, in Arena or anywhere else. We won't publish a win-rate number at that scale we can't back with a receipt, so we don't try. | Draws its win-rate numbers from millions of games tracked through its companion app. [untapped.gg ↗] |
| In-game overlay | No live draft-pick assistant and no opponent-card tracker while you play. A client-side Arena integration is out of scope for a static, public site that has no companion app to run it from. | Its Draftsmith tool gives live, adaptive card ratings during drafts, and the companion overlay tracks opponents' played cards mid-match. [untapped.gg ↗] |
Sourced from untapped.gg and mtga.untapped.gg’s own public pages, read on 2026-07-31. We don’t re-host or ingest anything from it — link out and check for yourself.
BuildKit MTG Meta Hub is unofficial Fan Content permitted under the Wizards of the Coast Fan Content Policy. Not approved/endorsed by Wizards. Portions of the materials used are property of Wizards of the Coast. (c) Wizards of the Coast LLC.