Skip to main content

Overview

common.tokens.profile_beta scores every token across liquidity depth, trading activity, trader concentration, and token legitimacy. Customers join to common.prices.hourly and filter by whatever threshold fits their use case, or use Allium’s built-in grades. Shipped as beta: the table name and classification column carry a _beta suffix. Thresholds and schema may change before GA. Coverage: ethereum, base, bsc, polygon, arbitrum, optimism, avalanche, robinhood, solana.
Update - 4 September 2026: trader concentration no longer affects the grade.has_diversified_trading (hhi_index <= 0.15) previously gated grade_a and is_realizable. It no longer does. Both columns are still published and hhi_index still feeds quality_score and confidence_score.If you filter on allium_classification_beta = 'grade_a' or is_realizable, your result set grows - roughly 280 more tokens, including WETH, USDC and USDT on their main chains, which the old gate excluded. Nothing loses its grade.To keep the previous behaviour, add AND q.has_diversified_trading to your filter. See Trader concentration for why this changed.

Sample queries

Strict (institutional filter)

Custom thresholds

Scope to a chain (or set of chains)

Research (everything with context)

How grading works

Three stages:
  1. Signals — per-token metrics from DEX trades, pool liquidity, trader concentration, and the price source registry (7-day rolling window)
  2. Flags — signals combined into boolean gates (has_sufficient_liquidity, has_active_market, has_diversified_trading, has_stable_price, has_multi_day_history, has_vendor_price)
  3. Grade — type-aware cascading CASE assigns grade_a, grade_b, or grade_c. Stablecoins are graded against their peg. LSTs against liquidity depth and activity. Other tokens against market depth, activity, and price stability.
has_diversified_trading is computed and published but does not affect the grade. See Trader concentration for why, and for how to apply it yourself if you want the stricter filter. A composite quality_tier (1-5) and quality_score (0-100) are also exposed for customers who prefer numeric filters.

Schema

Unique key: (chain, address). One row per token per chain.

Identity

Pool liquidity

Trading activity (7d rolling)

Price quality

Market structure

Stablecoin-specific

Boolean flags

Composite grades

Trader concentration

hhi_index and has_diversified_trading are published on every row but do not affect allium_classification_beta or is_realizable. HHI measures the shape of the trader distribution and is blind to its size. Deep markets concentrate flow in solvers and market makers, so the metric penalises depth and rewards thin ones. On a representative week, USDT on BSC failed it with 978,518 traders and 18.8Bofvolume,whileatokenwith110tradersand18.8B of volume, while a token with 110 traders and 3M of volume passed. Market size is gated by has_sufficient_liquidity and has_active_market instead. If you want the stricter filter, apply it yourself:
hhi_index also continues to feed quality_score and confidence_score.

Limitations

  • Beta thresholds will be tuned. Schema values you filter on (allium_classification_beta, quality_tier, the raw signals) remain stable; the grade boundaries themselves may shift as we collect customer feedback.
  • Solana grading is sparser. Solana’s long tail of low-activity tokens is reflected in the grade distribution (the vast majority land in grade_c). Filter on is_realizable or allium_classification_beta IN ('grade_a','grade_b') for production use cases.

Methodology

Current threshold values used by the boolean flags. These may be tuned during beta based on customer feedback. Grade thresholds (stablecoin branch): Grade thresholds (LST and other branches):