Sets are the unit of organization above editions on Flow collectibles platforms — every edition belongs to one set, and sets in turn belong to a collection (NBA Top Shot, NFL All Day, LaLiga Golazos, UFC Strike). The /analytics/sets surface joins the canonical sets and editions tables to fmv_snapshots and exposes four roll-ups: a per-collection summary (set / edition counts plus a tier mix), a series overview (one row per series era with edition counts and total robust FMV), a per-set directory (sortable, filterable table of every set with FMV coverage), and a per-set detail page with the full editions list. All four are powered by the analytics_sets_* RPC family — analytics_sets_summary, analytics_sets_directory, analytics_sets_detail, and analytics_sets_series_overview.
Coverage is the percent of editions in a set that have a sale-priced FMV. Editions priced only from asking prices and editions with no FMV don't count. The directory exposes a min-coverage filter (0% / 50% / 75% / 100%) so users can collapse the table to well-covered sets when they want to compare apples-to-apples, and surfaces the raw coverage as a small bar visualization next to each row.
The robust total caps each per-edition FMV at 20× the set median before summing. This is the headline number on every Sets surface — directory rows, series chart, per-set hero card. The cap exists because a small fraction of editions carry listing-reward farming asks orders of magnitude above true price, and including those raw figures makes set totals unreadable. We still expose the raw total alongside the robust total on the per-set detail page so users can see both figures, but the dashboard reaches for robust as the primary value (e.g. Genesis at $1.01M raw is much higher than the robust total — the difference is the outlier cap doing its job). The outlier_flag column is true on directory rows where any edition exceeds 20× the set median; the row gets a subtle amber tint and a warning icon with the explanation.
Pinnacle is excluded from /analytics/sets because Pinnacle's catalog has a different set structure — collection sets vs shape vs variant — that doesn't map cleanly onto the sets/editions schema the other four platforms share. Pinnacle has its own analytics surface elsewhere; folding it into Sets would require a separate adapter we haven't built. UFC Strike is included for completeness even though it moved to Aptos (Flow trading closed in May 2026) — its historical Flow catalog still shows up here because users still hold those moments.
Top Shot series labels are canonical and ordered: Series 1 (on-chain series=0), Series 2 (=2), Summer 2021 (=3), Series 3 (=4), Series 4 (=5), Series 2023-24 (=6), Series 2024-25 (=7), Series 2025-26 (=8). Note that on-chain series=1 doesn't exist — series=0 IS Series 1. Editions tagged with series=1 in our catalog are anomalous (mostly UUID-imported rows that didn't carry a real series tag at hydrate time); they render under a "Misc / Unmapped" label with an info tooltip explaining the anomaly. The Misc bucket usually shows low or zero FMV because most of those editions don't have FMV computed yet. That's correct behavior — surface them but they shouldn't pollute the headline numbers, and the chart sorts them last.
Freshness: FMV refreshes approximately every 10 minutes via the standard pipeline; the set + edition catalog itself updates daily as new sets/editions land on chain. The per-set detail pages use ISR with a 6-hour revalidate; the top-100 most valuable sets are pre-rendered at build via generateStaticParams so the highest-traffic detail pages are fast on first request, and the rest fall through to ISR.