> ## 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.

> ## Agent Instructions
> To query the Token Terminal data catalog, read https://tokenterminal.com/docs/catalog/agents-manual.md first. It is the whole catalog as one page: table naming grammar, key columns, partition and cluster rules, units, additivity, and the tables that are documented but not served yet.
> Never query a catalog table on a time bound alone. Also filter its cluster key, which you read from INFORMATION_SCHEMA.COLUMNS; an empty result means the object is a view, whose pruning contract is on its page. Compute is billed to the caller's own Google Cloud project.

# Metrics

> Daily asset tables: supply, holders, transfers, price, yield, DeFi TVL and the gap from peg.

Supply, holders, transfer activity, price, yield, DeFi TVL and the gap from peg. One row per thing per day, at five grains: asset, asset and chain, deployment, asset and app, and deployment and app.

Each measure is its own table. An asset table holds `timestamp`, `asset_id` and one value column; an asset-and-chain table holds `timestamp`, `asset_id`, `chain_id` and one value column; a deployment table holds `timestamp`, `asset_token_id` and one value column. Symbol, chain, token address and issuance status come from [`dimensions.assets`](https://tokenterminal.com/docs/catalog/assets/registry), [`dimensions.assets_by_chain`](https://tokenterminal.com/docs/catalog/assets/registry) and [`dimensions.asset_tokens`](https://tokenterminal.com/docs/catalog/assets/registry).

A deployment is one token contract on one chain, so supply of USDC is a question about the asset, supply of USDC on Base a question about the asset and the chain, and supply of one USDC contract on Base a question about one deployment. The two app grains answer a different question: where the asset is deposited, split by the app holding it. A row appears for each day a measure produced a figure, so a gap in the series is an unknown. A zero in the value column is a measured zero.

Several measures are labelled *agentic*. Those count payments made under the x402 standard, which lets software pay for something on its own. They are a subset of ordinary transfer activity.

## Tables

**Asset**

One row per asset per day. Keyed on `asset_id` and `timestamp`. Price, yield and the gap from peg belong to the asset itself, and every other measure is its deployments added together.

<table>
  <thead>
    <tr>
      <th width="340">Table</th>
      <th width="250">Value column</th>
      <th>What it holds</th>
    </tr>
  </thead>

  <tbody>
    <tr><td>`metrics_assets.price_daily`</td><td>`price`</td><td>The asset's price in USD, one figure per asset per day. Where more than one source has a price, we take them in a fixed order of preference. The table also has a `price_source` column, which labels the figure rather than measuring anything.</td></tr>
    <tr><td>`metrics_assets.off_peg_daily`</td><td>`off_peg`</td><td>How far the asset's price sits from its peg, as a fraction: `(price - reference) / reference`. `-0.02` means two percent below peg. The peg is the asset's `reference_asset_id`: the dollar's rate is 1 and every other currency takes its end-of-day FX rate, listed on [Stablecoins ▸ Metrics](https://tokenterminal.com/docs/catalog/stablecoins/metrics.md).</td></tr>
    <tr><td>`metrics_assets.apy_daily`</td><td>`apy`</td><td>The asset's yield over the past year, written as a fraction: `0.05` means five percent. Measured once per asset per day, and never added up.</td></tr>
    <tr><td>`metrics_assets.app_tvl_daily`</td><td>`app_tvl`</td><td>DeFi TVL: value of the asset deposited into the apps we cover, USD, summed across them and across chains. The app tabs split the same figure by app and by deployment.</td></tr>
    <tr><td>`metrics_assets.app_trading_volume_daily`</td><td>`app_trading_volume`</td><td>DEX trading volume: value of spot trades involving the asset on onchain venues (DEX pools and onchain order books), USD, summed across them and across chains. Every trade counts on both of its tokens, so this does not add up across assets. The app tabs split the same figure by app and by deployment.</td></tr>
    <tr><td>`metrics_assets.market_cap_circulating_native_daily`</td><td>`market_cap_circulating_native`</td><td>Circulating market cap of the asset's natively-issued supply, USD. This is the measure that answers how much of the asset exists. It includes anything the issuer reports as held off-chain, which is why the asset figure runs above its deployment rows added together, by exactly that amount.</td></tr>
    <tr><td>`metrics_assets.market_cap_circulating_bridged_daily`</td><td>`market_cap_circulating_bridged`</td><td>Circulating market cap of the asset's bridged deployments, USD. A bridged deployment is a wrapper standing in for supply issued natively on another chain.</td></tr>
    <tr><td>`metrics_assets.market_cap_circulating_daily`</td><td>`market_cap_circulating`</td><td>Circulating market cap across every form of the asset, USD: native issuance plus bridged wrappers. Counts tokens outstanding rather than economic value, because a bridged wrapper stands in for native supply that the same figure already counts.</td></tr>
    <tr><td>`metrics_assets.market_cap_circulating_offchain_daily`</td><td>`market_cap_circulating_offchain`</td><td>The part of circulating market cap an issuer reports as held off-chain, USD. Part of the native figure, published on its own as well, so the gap between the asset figure and its deployment rows is always explainable. Only issuers who report one appear here.</td></tr>
    <tr><td>`metrics_assets.holders_daily`</td><td>`holders`</td><td>Addresses holding a non-zero balance, summed across every deployment of the asset. A sum of per-deployment counts, so an address holding the asset on two chains counts twice.</td></tr>
    <tr><td>`metrics_assets.holders_native_daily`</td><td>`holders_native`</td><td>Addresses holding a non-zero balance, summed across the asset's natively-issued deployments.</td></tr>
    <tr><td>`metrics_assets.holders_bridged_daily`</td><td>`holders_bridged`</td><td>Addresses holding a non-zero balance, summed across the asset's bridged deployments.</td></tr>
    <tr><td>`metrics_assets.mints_native_daily`</td><td>`mints_native`</td><td>Value minted on the day, USD, summed across the asset's natively-issued deployments.</td></tr>
    <tr><td>`metrics_assets.mints_bridged_daily`</td><td>`mints_bridged`</td><td>Value minted on the day, USD, summed across the asset's bridged deployments.</td></tr>
    <tr><td>`metrics_assets.mints_daily`</td><td>`mints`</td><td>Value minted on the day, USD, summed across every deployment. A genuine total: minting on a bridged deployment is its own event, not a second view of a native one.</td></tr>
    <tr><td>`metrics_assets.redemptions_native_daily`</td><td>`redemptions_native`</td><td>Value redeemed on the day, USD, summed across the asset's natively-issued deployments.</td></tr>
    <tr><td>`metrics_assets.redemptions_bridged_daily`</td><td>`redemptions_bridged`</td><td>Value redeemed on the day, USD, summed across the asset's bridged deployments.</td></tr>
    <tr><td>`metrics_assets.redemptions_daily`</td><td>`redemptions`</td><td>Value redeemed on the day, USD, summed across every deployment. A genuine total.</td></tr>
    <tr><td>`metrics_assets.transfer_count_native_daily`</td><td>`transfer_count_native`</td><td>Number of transfers on the day, summed across the asset's natively-issued deployments.</td></tr>
    <tr><td>`metrics_assets.transfer_count_bridged_daily`</td><td>`transfer_count_bridged`</td><td>Number of transfers on the day, summed across the asset's bridged deployments.</td></tr>
    <tr><td>`metrics_assets.transfer_count_daily`</td><td>`transfer_count`</td><td>Number of transfers on the day, summed across every deployment. A genuine total.</td></tr>
    <tr><td>`metrics_assets.transfer_volume_native_daily`</td><td>`transfer_volume_native`</td><td>Value transferred on the day, USD, summed across the asset's natively-issued deployments.</td></tr>
    <tr><td>`metrics_assets.transfer_volume_bridged_daily`</td><td>`transfer_volume_bridged`</td><td>Value transferred on the day, USD, summed across the asset's bridged deployments.</td></tr>
    <tr><td>`metrics_assets.transfer_volume_daily`</td><td>`transfer_volume`</td><td>Value transferred on the day, USD, summed across every deployment. A genuine total.</td></tr>
    <tr><td>`metrics_assets.transfer_count_agentic_native_daily`</td><td>`transfer_count_agentic_native`</td><td>Number of agentic (x402) transfers on the day, summed across the asset's natively-issued deployments.</td></tr>
    <tr><td>`metrics_assets.transfer_count_agentic_bridged_daily`</td><td>`transfer_count_agentic_bridged`</td><td>Number of agentic (x402) transfers on the day, summed across the asset's bridged deployments.</td></tr>
    <tr><td>`metrics_assets.transfer_count_agentic_daily`</td><td>`transfer_count_agentic`</td><td>Number of agentic (x402) transfers on the day, summed across every deployment. A genuine total.</td></tr>
    <tr><td>`metrics_assets.transfer_volume_agentic_native_daily`</td><td>`transfer_volume_agentic_native`</td><td>Value transferred by agentic (x402) flows on the day, USD, summed across the asset's natively-issued deployments.</td></tr>
    <tr><td>`metrics_assets.transfer_volume_agentic_bridged_daily`</td><td>`transfer_volume_agentic_bridged`</td><td>Value transferred by agentic (x402) flows on the day, USD, summed across the asset's bridged deployments.</td></tr>
    <tr><td>`metrics_assets.transfer_volume_agentic_daily`</td><td>`transfer_volume_agentic`</td><td>Value transferred by agentic (x402) flows on the day, USD, summed across every deployment. A genuine total.</td></tr>
    <tr><td>`metrics_assets.daily_active_users_daily`</td><td>`daily_active_users`</td><td>Distinct addresses sending the asset on the day, counted across every deployment in one pass. The deployment tables split the same count native from bridged, and [Senders](https://tokenterminal.com/docs/catalog/assets/senders.md) holds the addresses themselves for any wider figure.</td></tr>
    <tr><td>`metrics_assets.weekly_active_users_daily`</td><td>`weekly_active_users`</td><td>Distinct addresses sending the asset over the trailing week, across every deployment.</td></tr>
    <tr><td>`metrics_assets.monthly_active_users_daily`</td><td>`monthly_active_users`</td><td>Distinct addresses sending the asset over the trailing month, across every deployment.</td></tr>
    <tr><td>`metrics_assets.daily_active_users_agentic_daily`</td><td>`daily_active_users_agentic`</td><td>Distinct addresses making agentic (x402) payments in the asset on the day, across every deployment.</td></tr>
    <tr><td>`metrics_assets.weekly_active_users_agentic_daily`</td><td>`weekly_active_users_agentic`</td><td>Distinct addresses making agentic (x402) payments in the asset over the trailing week, across every deployment.</td></tr>
    <tr><td>`metrics_assets.monthly_active_users_agentic_daily`</td><td>`monthly_active_users_agentic`</td><td>Distinct addresses making agentic (x402) payments in the asset over the trailing month, across every deployment.</td></tr>
  </tbody>
</table>

**Asset and chain**

One row per asset per chain per day. Keyed on `asset_id`, `chain_id` and `timestamp`, and joins `dimensions.assets_by_chain` on `asset_id` and `chain_id`. Every measure rolls up the asset's deployments on that chain. Price, the gap from peg and supply an issuer reports off-chain belong to the asset alone, and stay on the Asset tab.

<table>
  <thead>
    <tr>
      <th width="380">Table</th>
      <th width="270">Value column</th>
      <th>What it holds</th>
    </tr>
  </thead>

  <tbody>
    <tr><td>`metrics_assets_by_chain.apy_daily`</td><td>`apy`</td><td>The asset's yield over the past year on the chain, written as a fraction: `0.05` means five percent. Averaged across its deployments there, and never added up.</td></tr>
    <tr><td>`metrics_assets_by_chain.app_tvl_daily`</td><td>`app_tvl`</td><td>DeFi TVL: value of the asset on the chain deposited into the apps we cover, USD, summed across them and across its deployments there.</td></tr>
    <tr><td>`metrics_assets_by_chain.app_trading_volume_daily`</td><td>`app_trading_volume`</td><td>DEX trading volume: value of spot trades involving the asset on the chain on onchain venues (DEX pools and onchain order books), USD, summed across them and across its deployments there. Every trade counts on both of its tokens, so this does not add up across assets.</td></tr>
    <tr><td>`metrics_assets_by_chain.market_cap_circulating_native_daily`</td><td>`market_cap_circulating_native`</td><td>Circulating market cap of the asset's natively-issued deployments on the chain, USD, summed across them.</td></tr>
    <tr><td>`metrics_assets_by_chain.market_cap_circulating_bridged_daily`</td><td>`market_cap_circulating_bridged`</td><td>Circulating market cap of the asset's bridged deployments on the chain, USD, summed across them.</td></tr>
    <tr><td>`metrics_assets_by_chain.market_cap_circulating_daily`</td><td>`market_cap_circulating`</td><td>Circulating market cap of the asset on the chain, USD, summed across every deployment there, native and bridged.</td></tr>
    <tr><td>`metrics_assets_by_chain.holders_daily`</td><td>`holders`</td><td>Addresses holding a non-zero balance, summed across the asset's deployments on the chain. A sum of per-deployment counts: an address holding two of them counts twice, which only moves chains with more than one deployment of the asset.</td></tr>
    <tr><td>`metrics_assets_by_chain.holders_native_daily`</td><td>`holders_native`</td><td>Addresses holding a non-zero balance, summed across the asset's natively-issued deployments on the chain.</td></tr>
    <tr><td>`metrics_assets_by_chain.holders_bridged_daily`</td><td>`holders_bridged`</td><td>Addresses holding a non-zero balance, summed across the asset's bridged deployments on the chain.</td></tr>
    <tr><td>`metrics_assets_by_chain.mints_native_daily`</td><td>`mints_native`</td><td>Value minted on the day, USD, summed across the asset's natively-issued deployments on the chain.</td></tr>
    <tr><td>`metrics_assets_by_chain.mints_bridged_daily`</td><td>`mints_bridged`</td><td>Value minted on the day, USD, summed across the asset's bridged deployments on the chain.</td></tr>
    <tr><td>`metrics_assets_by_chain.mints_daily`</td><td>`mints`</td><td>Value minted on the day, USD, summed across every deployment on the chain.</td></tr>
    <tr><td>`metrics_assets_by_chain.redemptions_native_daily`</td><td>`redemptions_native`</td><td>Value redeemed on the day, USD, summed across the asset's natively-issued deployments on the chain.</td></tr>
    <tr><td>`metrics_assets_by_chain.redemptions_bridged_daily`</td><td>`redemptions_bridged`</td><td>Value redeemed on the day, USD, summed across the asset's bridged deployments on the chain.</td></tr>
    <tr><td>`metrics_assets_by_chain.redemptions_daily`</td><td>`redemptions`</td><td>Value redeemed on the day, USD, summed across every deployment on the chain.</td></tr>
    <tr><td>`metrics_assets_by_chain.transfer_count_native_daily`</td><td>`transfer_count_native`</td><td>Number of transfers on the day, summed across the asset's natively-issued deployments on the chain.</td></tr>
    <tr><td>`metrics_assets_by_chain.transfer_count_bridged_daily`</td><td>`transfer_count_bridged`</td><td>Number of transfers on the day, summed across the asset's bridged deployments on the chain.</td></tr>
    <tr><td>`metrics_assets_by_chain.transfer_count_daily`</td><td>`transfer_count`</td><td>Number of transfers on the day, summed across every deployment on the chain.</td></tr>
    <tr><td>`metrics_assets_by_chain.transfer_volume_native_daily`</td><td>`transfer_volume_native`</td><td>Value transferred on the day, USD, summed across the asset's natively-issued deployments on the chain.</td></tr>
    <tr><td>`metrics_assets_by_chain.transfer_volume_bridged_daily`</td><td>`transfer_volume_bridged`</td><td>Value transferred on the day, USD, summed across the asset's bridged deployments on the chain.</td></tr>
    <tr><td>`metrics_assets_by_chain.transfer_volume_daily`</td><td>`transfer_volume`</td><td>Value transferred on the day, USD, summed across every deployment on the chain.</td></tr>
    <tr><td>`metrics_assets_by_chain.transfer_count_agentic_native_daily`</td><td>`transfer_count_agentic_native`</td><td>Number of agentic (x402) transfers on the day, summed across the asset's natively-issued deployments on the chain.</td></tr>
    <tr><td>`metrics_assets_by_chain.transfer_count_agentic_bridged_daily`</td><td>`transfer_count_agentic_bridged`</td><td>Number of agentic (x402) transfers on the day, summed across the asset's bridged deployments on the chain.</td></tr>
    <tr><td>`metrics_assets_by_chain.transfer_count_agentic_daily`</td><td>`transfer_count_agentic`</td><td>Number of agentic (x402) transfers on the day, summed across every deployment on the chain.</td></tr>
    <tr><td>`metrics_assets_by_chain.transfer_volume_agentic_native_daily`</td><td>`transfer_volume_agentic_native`</td><td>Value transferred by agentic (x402) flows on the day, USD, summed across the asset's natively-issued deployments on the chain.</td></tr>
    <tr><td>`metrics_assets_by_chain.transfer_volume_agentic_bridged_daily`</td><td>`transfer_volume_agentic_bridged`</td><td>Value transferred by agentic (x402) flows on the day, USD, summed across the asset's bridged deployments on the chain.</td></tr>
    <tr><td>`metrics_assets_by_chain.transfer_volume_agentic_daily`</td><td>`transfer_volume_agentic`</td><td>Value transferred by agentic (x402) flows on the day, USD, summed across every deployment on the chain.</td></tr>
    <tr><td>`metrics_assets_by_chain.daily_active_users_daily`</td><td>`daily_active_users`</td><td>Distinct addresses sending the asset on the chain on the day, summed across its deployments there. An address sending two of them counts twice, which only moves chains with more than one deployment of the asset.</td></tr>
    <tr><td>`metrics_assets_by_chain.weekly_active_users_daily`</td><td>`weekly_active_users`</td><td>Distinct addresses sending the asset on the chain over the trailing week, summed across its deployments there.</td></tr>
    <tr><td>`metrics_assets_by_chain.monthly_active_users_daily`</td><td>`monthly_active_users`</td><td>Distinct addresses sending the asset on the chain over the trailing month, summed across its deployments there.</td></tr>
    <tr><td>`metrics_assets_by_chain.daily_active_users_agentic_daily`</td><td>`daily_active_users_agentic`</td><td>Distinct addresses making agentic (x402) payments in the asset on the chain on the day, summed across its deployments there.</td></tr>
    <tr><td>`metrics_assets_by_chain.weekly_active_users_agentic_daily`</td><td>`weekly_active_users_agentic`</td><td>Distinct addresses making agentic (x402) payments in the asset on the chain over the trailing week, summed across its deployments there.</td></tr>
    <tr><td>`metrics_assets_by_chain.monthly_active_users_agentic_daily`</td><td>`monthly_active_users_agentic`</td><td>Distinct addresses making agentic (x402) payments in the asset on the chain over the trailing month, summed across its deployments there.</td></tr>
  </tbody>
</table>

**Deployment**

One row per deployment per day. Keyed on `asset_token_id` and `timestamp`, which is written `{asset_id}-{token_address}-{chain_id}` and joins `dimensions.asset_tokens`. Every deployment is issued natively or bridged in from elsewhere, so it appears in the `_native` tables or the `_bridged` tables.

<table>
  <thead>
    <tr>
      <th width="380">Table</th>
      <th width="270">Value column</th>
      <th>What it holds</th>
    </tr>
  </thead>

  <tbody>
    <tr><td>`metrics_asset_tokens.apy_daily`</td><td>`apy`</td><td>Yield over the past year, written as a fraction and kept within `(0, 0.50]`. Measured once per asset, on the deployment with the largest circulating market cap, then copied onto the asset's other deployments. Every deployment row for an asset holds the same value, so adding them multiplies the rate.</td></tr>
    <tr><td>`metrics_asset_tokens.app_tvl_daily`</td><td>`app_tvl`</td><td>DeFi TVL: value of the deployment deposited into the apps we cover, USD, summed across them.</td></tr>
    <tr><td>`metrics_asset_tokens.app_trading_volume_daily`</td><td>`app_trading_volume`</td><td>DEX trading volume: value of spot trades involving the deployment on onchain venues (DEX pools and onchain order books), USD, summed across them. Every trade counts on both of its tokens, so this does not add up across assets.</td></tr>
    <tr><td>`metrics_asset_tokens.market_cap_circulating_native_daily`</td><td>`market_cap_circulating_native`</td><td>Circulating market cap of the deployment, USD. Natively-issued deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.market_cap_circulating_bridged_daily`</td><td>`market_cap_circulating_bridged`</td><td>Circulating market cap of the deployment, USD. Bridged deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.market_cap_circulating_daily`</td><td>`market_cap_circulating`</td><td>Circulating market cap of the deployment, USD, whichever side it sits on. Not a sum: a deployment is one or the other, so this is simply its value.</td></tr>
    <tr><td>`metrics_asset_tokens.holders_daily`</td><td>`holders`</td><td>Addresses holding a non-zero balance of the deployment, whichever side it sits on.</td></tr>
    <tr><td>`metrics_asset_tokens.holders_native_daily`</td><td>`holders_native`</td><td>Addresses holding a non-zero balance of the deployment. Natively-issued deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.holders_bridged_daily`</td><td>`holders_bridged`</td><td>Addresses holding a non-zero balance of the deployment. Bridged deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.mints_native_daily`</td><td>`mints_native`</td><td>Value minted on the deployment on the day, USD. Natively-issued deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.mints_bridged_daily`</td><td>`mints_bridged`</td><td>Value minted on the deployment on the day, USD. Bridged deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.mints_daily`</td><td>`mints`</td><td>Value minted on the deployment on the day, USD, whichever side it sits on.</td></tr>
    <tr><td>`metrics_asset_tokens.redemptions_native_daily`</td><td>`redemptions_native`</td><td>Value redeemed on the deployment on the day, USD. Natively-issued deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.redemptions_bridged_daily`</td><td>`redemptions_bridged`</td><td>Value redeemed on the deployment on the day, USD. Bridged deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.redemptions_daily`</td><td>`redemptions`</td><td>Value redeemed on the deployment on the day, USD, whichever side it sits on.</td></tr>
    <tr><td>`metrics_asset_tokens.transfer_count_native_daily`</td><td>`transfer_count_native`</td><td>Number of transfers on the deployment on the day. Natively-issued deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.transfer_count_bridged_daily`</td><td>`transfer_count_bridged`</td><td>Number of transfers on the deployment on the day. Bridged deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.transfer_count_daily`</td><td>`transfer_count`</td><td>Number of transfers on the deployment on the day, whichever side it sits on.</td></tr>
    <tr><td>`metrics_asset_tokens.transfer_volume_native_daily`</td><td>`transfer_volume_native`</td><td>Value transferred on the deployment on the day, USD. Natively-issued deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.transfer_volume_bridged_daily`</td><td>`transfer_volume_bridged`</td><td>Value transferred on the deployment on the day, USD. Bridged deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.transfer_volume_daily`</td><td>`transfer_volume`</td><td>Value transferred on the deployment on the day, USD, whichever side it sits on.</td></tr>
    <tr><td>`metrics_asset_tokens.transfer_count_agentic_native_daily`</td><td>`transfer_count_agentic_native`</td><td>Number of agentic (x402) transfers on the deployment on the day. Natively-issued deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.transfer_count_agentic_bridged_daily`</td><td>`transfer_count_agentic_bridged`</td><td>Number of agentic (x402) transfers on the deployment on the day. Bridged deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.transfer_count_agentic_daily`</td><td>`transfer_count_agentic`</td><td>Number of agentic (x402) transfers on the deployment on the day, whichever side it sits on.</td></tr>
    <tr><td>`metrics_asset_tokens.transfer_volume_agentic_native_daily`</td><td>`transfer_volume_agentic_native`</td><td>Value transferred by agentic (x402) flows on the deployment on the day, USD. Natively-issued deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.transfer_volume_agentic_bridged_daily`</td><td>`transfer_volume_agentic_bridged`</td><td>Value transferred by agentic (x402) flows on the deployment on the day, USD. Bridged deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.transfer_volume_agentic_daily`</td><td>`transfer_volume_agentic`</td><td>Value transferred by agentic (x402) flows on the deployment on the day, USD, whichever side it sits on.</td></tr>
    <tr><td>`metrics_asset_tokens.daily_active_users_native_daily`</td><td>`daily_active_users_native`</td><td>Distinct addresses sending the deployment on the day. Natively-issued deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.daily_active_users_bridged_daily`</td><td>`daily_active_users_bridged`</td><td>Distinct addresses sending the deployment on the day. Bridged deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.weekly_active_users_native_daily`</td><td>`weekly_active_users_native`</td><td>Distinct addresses sending the deployment over the trailing week. Natively-issued deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.weekly_active_users_bridged_daily`</td><td>`weekly_active_users_bridged`</td><td>Distinct addresses sending the deployment over the trailing week. Bridged deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.monthly_active_users_native_daily`</td><td>`monthly_active_users_native`</td><td>Distinct addresses sending the deployment over the trailing month. Natively-issued deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.monthly_active_users_bridged_daily`</td><td>`monthly_active_users_bridged`</td><td>Distinct addresses sending the deployment over the trailing month. Bridged deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.daily_active_users_agentic_native_daily`</td><td>`daily_active_users_agentic_native`</td><td>Distinct addresses making agentic (x402) payments in the deployment on the day. Natively-issued deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.daily_active_users_agentic_bridged_daily`</td><td>`daily_active_users_agentic_bridged`</td><td>Distinct addresses making agentic (x402) payments in the deployment on the day. Bridged deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.weekly_active_users_agentic_native_daily`</td><td>`weekly_active_users_agentic_native`</td><td>Distinct addresses making agentic (x402) payments in the deployment over the trailing week. Natively-issued deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.weekly_active_users_agentic_bridged_daily`</td><td>`weekly_active_users_agentic_bridged`</td><td>Distinct addresses making agentic (x402) payments in the deployment over the trailing week. Bridged deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.monthly_active_users_agentic_native_daily`</td><td>`monthly_active_users_agentic_native`</td><td>Distinct addresses making agentic (x402) payments in the deployment over the trailing month. Natively-issued deployments only.</td></tr>
    <tr><td>`metrics_asset_tokens.monthly_active_users_agentic_bridged_daily`</td><td>`monthly_active_users_agentic_bridged`</td><td>Distinct addresses making agentic (x402) payments in the deployment over the trailing month. Bridged deployments only.</td></tr>
  </tbody>
</table>

**Asset and app**

One row per asset per app per day. Keyed on `asset_id`, `app_id` and `timestamp`. Which apps hold an asset, and how much of it each one holds, added up across every chain the app runs on. Join [`dimensions.apps`](https://tokenterminal.com/docs/catalog/apps/registry) on `app_id` for the app's name and market sector.

Each position is counted once, against the token supplied rather than the receipt token issued for it: USDC deposited into a lending market appears as USDC, never also as the receipt token minted against it. So the rows for an asset add up to its figure in `metrics_assets.app_tvl_daily`, exactly.

Summed across venues, this can exceed the asset's circulating supply, and that is not an error. Lending markets report what was supplied to them, and the same token can be supplied more than once: a user deposits, someone borrows it, and it is deposited again. Aave's own dashboard shows the same thing. Two smaller reasons add to it. A protocol that wraps another protocol's receipt token reports the underlying, so the position is counted at both layers, and a venue can hold tokens the issuer has excluded from circulating supply. Read a large total as leverage in the system, not as double counting.

The apps here are the ones whose deposits we model, so this tells you where an asset sits among them.

<table>
  <thead>
    <tr>
      <th width="340">Table</th>
      <th width="250">Value column</th>
      <th>What it holds</th>
    </tr>
  </thead>

  <tbody>
    <tr><td>`metrics_assets_by_app.app_tvl_daily`</td><td>`app_tvl`</td><td>DeFi TVL: value of the asset deposited into the app at day end, USD, across every chain the app runs on.</td></tr>
    <tr><td>`metrics_assets_by_app.app_trading_volume_daily`</td><td>`app_trading_volume`</td><td>DEX trading volume: value of spot trades involving the asset executed on the app, USD, across every chain the app runs on. A trade is valued on the cheaper of its two legs.</td></tr>
  </tbody>
</table>

**Deployment and app**

One row per deployment per app per day. Keyed on `asset_token_id`, `app_id` and `timestamp`. The finest grain of DeFi TVL: which contract on which chain sits in which app. Read it from either end: where one deployment's value has gone, or which deployments make up an app's holding of an asset.

The rows for an asset and app add up to that pair's figure in `metrics_assets_by_app.app_tvl_daily`, exactly. The table has a `chain_id` column, so a split by chain needs no join.

<table>
  <thead>
    <tr>
      <th width="340">Table</th>
      <th width="250">Value column</th>
      <th>What it holds</th>
    </tr>
  </thead>

  <tbody>
    <tr><td>`metrics_asset_tokens_by_app.app_tvl_daily`</td><td>`app_tvl`</td><td>DeFi TVL: value of one deployment of the asset deposited into the app at day end, USD.</td></tr>
    <tr><td>`metrics_asset_tokens_by_app.app_trading_volume_daily`</td><td>`app_trading_volume`</td><td>DEX trading volume: value of spot trades involving one deployment of the asset executed on the app, USD.</td></tr>
  </tbody>
</table>

## Sample queries

**Asset daily read**

Each measure is its own table, so a row with all three is a join on `asset_id` and `timestamp`. A `full join` keeps a day that has supply and no price, and bounding the day range on every side stops the unbounded side reading its whole table.

```sql theme={null}
with supply as (
    select timestamp, market_cap_circulating_native
    from `metrics_assets.market_cap_circulating_native_daily`
    where asset_id = 'usdc'
      and timestamp >= timestamp('2026-06-01')
),

price as (
    select timestamp, price
    from `metrics_assets.price_daily`
    where asset_id = 'usdc'
      and timestamp >= timestamp('2026-06-01')
),

peg as (
    select timestamp, off_peg
    from `metrics_assets.off_peg_daily`
    where asset_id = 'usdc'
      and timestamp >= timestamp('2026-06-01')
)

select
    timestamp,
    supply.market_cap_circulating_native,
    price.price,
    peg.off_peg
from supply
full join price
    using (timestamp)
full join peg
    using (timestamp)
order by timestamp
```

**Tokenized stocks ranking**

`asset_type` lives on the registry, so the ranking joins it. How much is filled in varies from measure to measure, so a thinly reported measure ranks its own reporters rather than the whole type.

```sql theme={null}
select
    assets.asset_id,
    assets.symbol,
    daily.market_cap_circulating_native
from `metrics_assets.market_cap_circulating_native_daily` as daily
join `dimensions.assets` as assets
    using (asset_id)
where daily.timestamp = timestamp('2026-08-01')
  and assets.asset_type = 'tokenized-stocks'
order by daily.market_cap_circulating_native desc
limit 25
```

**Native against bridged supply**

Native is the chain that issued the asset and bridged is every other chain it reached. The total column already sums the two, so it is the one figure to read for the asset as a whole.

```sql theme={null}
with native as (
    select timestamp, market_cap_circulating_native
    from `metrics_assets.market_cap_circulating_native_daily`
    where asset_id = 'usdc'
      and timestamp >= timestamp('2026-06-01')
),

bridged as (
    select timestamp, market_cap_circulating_bridged
    from `metrics_assets.market_cap_circulating_bridged_daily`
    where asset_id = 'usdc'
      and timestamp >= timestamp('2026-06-01')
),

total as (
    select timestamp, market_cap_circulating
    from `metrics_assets.market_cap_circulating_daily`
    where asset_id = 'usdc'
      and timestamp >= timestamp('2026-06-01')
)

select
    timestamp,
    native.market_cap_circulating_native,
    bridged.market_cap_circulating_bridged,
    total.market_cap_circulating
from native
full join bridged
    using (timestamp)
full join total
    using (timestamp)
order by timestamp
```

**One asset by chain**

The asset-and-chain tables key on `asset_id` and `chain_id`, and `dimensions.assets_by_chain` has the chain and the deployment count behind it. `bridged_status` reads `mixed` on a chain with both a native and a bridged deployment.

```sql theme={null}
select
    chains.chain_id,
    chains.bridged_status,
    chains.token_count,
    daily.market_cap_circulating
from `metrics_assets_by_chain.market_cap_circulating_daily` as daily
join `dimensions.assets_by_chain` as chains
    using (asset_id, chain_id)
where daily.timestamp = timestamp('2026-08-01')
  and chains.asset_id = 'usdc'
order by daily.market_cap_circulating desc
```

**Deployment breakdown**

The deployment tables have `asset_token_id` alone, so the chain and the native-or-bridged split come from the registry.

```sql theme={null}
select
    deployments.chain_id,
    deployments.bridged_status,
    daily.market_cap_circulating
from `metrics_asset_tokens.market_cap_circulating_daily` as daily
join `dimensions.asset_tokens` as deployments
    using (asset_token_id)
where daily.timestamp = timestamp('2026-08-01')
  and deployments.asset_id = 'usdc'
order by daily.market_cap_circulating desc
```

**One deployment's series**

Both tables key on `asset_token_id`, so the join needs `timestamp` alone. A `full join` keeps a day that has supply and no transfers.

```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-0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48-ethereum'
      and timestamp >= timestamp('2026-06-01')
),

transfers as (
    select timestamp, transfer_volume_native
    from `metrics_asset_tokens.transfer_volume_native_daily`
    where asset_token_id = 'usdc-0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48-ethereum'
      and timestamp >= timestamp('2026-06-01')
)

select
    timestamp,
    supply.market_cap_circulating_native,
    transfers.transfer_volume_native
from supply
full join transfers
    using (timestamp)
order by timestamp
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.