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

# Assets

> Every curated asset issued on Celo, with daily supply, holders and transfer activity.

An asset is a financial instrument someone has put onchain, and a deployment is one asset on one chain at one contract address. Celo carries deployments of every asset kind we track, stablecoins to tokenized stocks.

* [`dimensions.asset_tokens`](/docs/catalog/assets/registry): one row per deployment.
* [`metrics_asset_tokens`](/docs/catalog/assets/metrics): one table per measure, one row per deployment per day.

Every column is documented at [Assets](/docs/catalog/assets/index). Market verticals scope this layer further: [Stablecoins](/docs/catalog/chain-verticals/evm/celo/stablecoins) and [Tokenized assets](/docs/catalog/chain-verticals/evm/celo/tokenized-assets).

## Sample queries

<Tabs>
  <Tab title="Largest assets">
    **Rank the assets on Celo by circulating market cap.** Circulating market cap is the supply held by the public, valued in USD, with tokens the issuer has minted but not released left out.

    ```sql theme={null}
    select
        assets.symbol,
        assets.asset_type,
        daily.market_cap_circulating_total
    from `metrics_asset_tokens.market_cap_circulating_total_daily` as daily
    join `dimensions.asset_tokens` as deployments
        using (asset_token_id)
    join `dimensions.assets` as assets
        using (asset_id)
    where daily.timestamp >= timestamp('2026-08-22')
      and daily.timestamp < timestamp('2026-08-23')
      and deployments.chain_id = 'celo'
    order by daily.market_cap_circulating_total desc
    limit 20
    ```
  </Tab>

  <Tab title="Deployments by kind">
    **Count Celo deployments by asset kind, and how many were issued on Celo itself.** A deployment is native when the issuer minted the token on Celo, and bridged when the token stands in for supply issued somewhere else.

    ```sql theme={null}
    select
        assets.asset_type,
        count(*) as deployments,
        countif(deployments.bridged_status = 'native') as native
    from `dimensions.asset_tokens` as deployments
    join `dimensions.assets` as assets
        using (asset_id)
    where deployments.chain_id = 'celo'
    group by assets.asset_type
    order by deployments desc
    ```
  </Tab>

  <Tab title="One deployment's series">
    **Read one Celo deployment's daily supply and holders.** `asset_token_id` is the asset, the token address and the chain with dashes. Each measure is its own table, so reading two means a join on `asset_token_id` and `timestamp`. Both tables here read the native side of the deployment. A bridged deployment reads the `_bridged` pair instead.

    ```sql theme={null}
    with supply as (
        select
            timestamp,
            market_cap_circulating_native
        from `metrics_asset_tokens.market_cap_circulating_native_daily`
        where asset_token_id = 'usdc-0xceba9300f2b948710d2653dd7b07f33a8b32118c-celo'
          and timestamp >= timestamp('2026-08-16')
          and timestamp < timestamp('2026-08-23')
    ),

    holders as (
        select
            timestamp,
            holders_native
        from `metrics_asset_tokens.holders_native_daily`
        where asset_token_id = 'usdc-0xceba9300f2b948710d2653dd7b07f33a8b32118c-celo'
          and timestamp >= timestamp('2026-08-16')
          and timestamp < timestamp('2026-08-23')
    )

    select
        timestamp,
        supply.market_cap_circulating_native,
        holders.holders_native
    from supply
    left join holders
        using (timestamp)
    order by timestamp
    ```
  </Tab>
</Tabs>
