Every token we cover passes the same frozen checklist before a word is written. The checklist is versioned; changing it is a new version with a date, never a silent edit.
criteria_version: v2
v2 (5 August 2026) — the liquidity-lock filter now measures instead of failing closed. A token clears it when at least 90% of its material-pool liquidity sits in locked or burned pools and its single deepest pool is at least 95% locked. Pools under $25,000 are ignored as dust. v1 stated a liquidity-lock requirement but had no way to verify one, so nothing could pass it.
Every candidate is measured against the same set of hard checks, every day, by the same automated pipeline. Nothing is scored, weighted, or judged at this stage — each check is a number against a threshold, and a token either clears it or it doesn’t.
The checks, with the v2 thresholds:
A token that clears every check is a candidate, not coverage. A human decides what gets covered; nothing publishes automatically.
Three public sources, each used for what it is best at:
When sources disagree on liquidity, we record the lower number. A filter that quietly takes the flattering source is not a filter.
A token’s age is the earliest pool timestamp any source reports, so a token cannot look younger by adding a new pool. In published coverage, every figure is linked to its source at the point it appears, dated on the day it was measured.
Any single failed check disqualifies — there is no compensating a failed check with a strong one elsewhere. The disqualifiers that end the most candidacies:
Unknown counts as failed. If a source cannot tell us a number — holder concentration, age, lock status — the token fails that check rather than getting the benefit of the doubt. Every failure is recorded with the measured value that caused it, and the full failure log is kept for every candidate we have ever measured, not just the ones that pass.
Coverage is assigned a lane at approval, by a human, and the lane is shown on the ledger. The lane states what kind of asset it is, so a reader never has to infer it:
Lanes are added the same way criteria change: as a versioned, dated addition — never by quietly reclassifying existing coverage.
Coverage does not end at publication. Every covered token is re-measured on a schedule: market cap and liquidity now, alongside market cap and liquidity on the day of coverage, both shown on the ledger. The comparison is the grade — we do not editorialize it.
Three rules make the record trustworthy:
Clearing the checklist means measured and not disqualified. Nothing more.
Figures cited in coverage are linked to their public source at the point they appear. Corrections policy: see /research-corrections. The full record of everything covered: the coverage ledger.