Signature Verticals
Token Universe Scanner
9 min read
What it is
Cross-chain token scanner across Ethereum / Solana / Base / BSC / Polygon / Arbitrum. Define a universe + criteria (volume spike, price change %, liquidity floor, price breakout, age range), pick a scoring method, set a schedule, and let the worker run it every 15 minutes / hourly / every 6 hours / daily. Three views: List (your saved scans), Builder (create/edit), Results (last run with universe stats + match list + score breakdown + methodology hash).
How to think about it
DEXScreener and DEXTools ship "filters" with no methodology disclosure. Trending pages on most platforms hide their ranking algorithms. Token Scanner publishes ours — every result shows universe stats (total considered / included / excluded by reason), partial-run reasons when chains fail or data is missing, per-criterion score breakdown with the formula used, and a SHA-256 methodology hash for reproducibility. /api/scanner/policy returns the full ToS, supported criterion types with formulas, scoring methods, and known limitations.
Step-by-step
-
Open Discover → Token Scanner
Lands on the List view. Three starter templates at the bottom: Solana volume breakouts, Ethereum established movers, Multi-chain new launches. Click any template to clone it into the Builder pre-filled, or click Create scan to start blank.
-
Define your universe
Pick chains (one or many from ethereum / solana / base / bsc / polygon / arbitrum). Min liquidity USD (50k floor recommended for non-meme; 25k for memecoins). Min age hours (24h excludes brand-new rugs). Max age hours (cap for "new launch" scans). Exclusion flags: stablecoins, wrapped tokens, custom blacklisted addresses.
-
Add criteria (AND logic, max 6)
VOLUME_SPIKE (e.g. 5× the rolling average) · PRICE_CHANGE_PERCENT (timeframe + direction + min/max %) · LIQUIDITY_FLOOR (USD minimum) · PRICE_BREAKOUT (% above N-day high) · AGE_RANGE (hours bounds). Tokens must pass ALL criteria to match — there is no OR logic by design.
-
Pick a scoring method
weighted_average (default — combine criterion scores by your weights, ranks matches by total score). minimum (score = lowest individual criterion score — penalizes weakest signal). all_or_nothing (score = 1 if all criteria matched, else 0 — flat ranking, useful when you only care about pass/fail).
-
Set scan schedule
every_15_minutes (high-frequency, for active memecoin hunting). hourly (default, balances freshness vs API quota). every_6_hours (lower-friction for established-mover scans). daily (set-and-forget for weekly review). The scheduled worker runs every 15 min and your scan fires at its frequency boundary.
-
Configure alerts (optional)
Enabled toggle + Notify on new match + Min score threshold. When the scan finds a new match meeting min score, you get an in-app notification. Useful for low-frequency scans where you do not want to manually re-check.
-
Run + read the result
Click Run now to fire the scan immediately. Result page shows: status badge (complete/partial/failed), universe stats card (totalTokensConsidered, tokensIncludedInScan, exclusion breakdown, exclusionInvariantOk), top matches list with per-criterion score breakdown, sampled non-matches with partial reasons. Empty result = "0 of N tokens passed all criteria — adjust thresholds."
-
Save the methodology hash
Every run produces a SHA-256 methodology hash deterministic over (scan definition + run inputs). Save it with your trade record. Anyone — including you, future you, or your audit — can re-run the same definition and confirm the same hash means the same methodology. This is the disclosure layer DEXScreener / DEXTools refuse to ship.
Tips & pitfalls
- "No matches" is a real answer. The scanner shows "0 of N in-scope tokens passed all criteria — adjust thresholds to find matches" instead of fabricating fuzzy matches that almost-but-not-quite passed.
- Status=partial means the scan ran but some chain or data source was unavailable. Read the partialReasons list before acting on results — a partial Ethereum scan may have missed half the matches.
- AND-only logic is intentional. If you want OR semantics ("memecoins with EITHER 5× volume spike OR 20% breakout"), create TWO separate scans and review both results — keeps the methodology honest per-scan.
- Templates are starting points, not prescriptions. Solana memecoin scan with 5× volume spike will fire on real movers AND on wash-traded coins. Always cross-check matches against a chart and the GoPlus Safety Score before trading.
- Worker runs every 15 minutes. A scan with frequency=hourly fires at the next 15-min tick boundary AFTER an hour has passed since the last run — NOT exactly on the hour. Expect ±15 min jitter.
- Methodology hash is keyed on the scan definition. If you tweak a single threshold, the hash changes — that change is intentional and audit-visible. Old runs against the old hash are still reproducible.
- For NEW LAUNCH discovery (under 7 days old), the "Multi-chain new launches" template is the right starting point. Lower min liquidity to 25k for higher recall at the cost of more rug noise.
- For ESTABLISHED MOVER discovery, raise min age to 30+ days and min liquidity to 250k+ — gets rid of pump-and-dumps and surfaces tokens with real liquidity behind their move.