> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mobula.io/llms.txt
> Use this file to discover all available pages before exploring further.

# filterTokens

> Search, filter, and rank tokens by on-chain statistics such as volume, price change, liquidity, holder analysis, and more.

### Overview

Query tokens across all supported networks with powerful filtering, sorting, and pagination. Ideal for building token screeners, trending lists, and discovery feeds.

* Filter by volume, price change, liquidity, market cap, holder metrics, and more
* Sort by any filterable attribute plus trending scores
* Paginate with `limit` / `offset`
* Optionally resolve full token metadata and pair data

### Returns

<ResponseField name="filterTokens" type="TokenFilterConnection!">
  See [TokenFilterConnection](/api-reference/graphql/types/TokenFilterConnection) and [TokenFilterResult](/api-reference/graphql/types/TokenFilterResult) for full type details.
</ResponseField>

### Arguments

<ResponseField name="filters" type="TokenFilters">
  Filter conditions for token statistics. Each numeric field accepts a [NumberFilter](/api-reference/graphql/types/NumberFilter) with `gt`, `gte`, `lt`, `lte` operators. See [TokenFilters](/api-reference/graphql/types/TokenFilters) for all available fields.
</ResponseField>

<ResponseField name="statsType" type="TokenPairStatisticsType">
  Statistics type. See [TokenPairStatisticsType](/api-reference/graphql/types/TokenPairStatisticsType).
</ResponseField>

<ResponseField name="phrase" type="String">
  Search phrase to match against token name or symbol.
</ResponseField>

<ResponseField name="tokens" type="[String]">
  Array of specific token selectors in `"address:networkId"` format.
</ResponseField>

<ResponseField name="excludeTokens" type="[String]">
  Array of token addresses to exclude from results.
</ResponseField>

<ResponseField name="rankings" type="[TokenRanking]">
  Sorting criteria. See [TokenRanking](/api-reference/graphql/types/TokenRanking) and [TokenRankingAttribute](/api-reference/graphql/types/TokenRankingAttribute) for all sortable fields.
</ResponseField>

<ResponseField name="limit" type="Int">
  Maximum number of results to return (default: 25, max: 200).
</ResponseField>

<ResponseField name="offset" type="Int">
  Pagination offset (default: 0).
</ResponseField>

### Example

```graphql theme={null}
{
  filterTokens(
    filters: {
      network: [1]
      liquidity: { gte: 10000 }
      volume24: { gte: 50000 }
    }
    rankings: [{ attribute: volume24, direction: DESC }]
    limit: 10
  ) {
    results {
      priceUSD
      liquidity
      marketCap
      volume24
      change24
      buyCount24
      sellCount24
      uniqueBuys24
      uniqueSells24
      holders
      token {
        name
        symbol
        address
        networkId
      }
    }
    count
    page
  }
}
```

### Playground

<iframe src={`https://graphql.mobula.io/graphql?query=${encodeURIComponent('{ filterTokens(filters: { network: [1], liquidity: { gte: 10000 }, volume24: { gte: 50000 } }, rankings: [{ attribute: volume24, direction: DESC }], limit: 5) { results { priceUSD liquidity marketCap volume24 change24 holders token { name symbol address networkId } } count page } }')}`} title="GraphQL Playground" style={{ width: '100%', minHeight: '600px', border: '1px solid var(--color-border)', borderRadius: '8px' }} />
