uniswap-v3 one of its apps. Four tables carry the same measures at four levels: one row per day per project, project and chain, app, and app and chain. Every measure is in USD, and an empty cell means no figure for that day, not zero.
Tables
- Project
- Project × chain
- App
- App × chain
One row per
(project_id, timestamp), in metrics.projects_daily, since 2020-05. Everything the project runs, combined: gas from its chains and trading fees from its apps arrive added into a single fee figure.| Column | Type | Description |
|---|---|---|
timestamp | TIMESTAMP | The day, truncated to UTC midnight. Partition column. |
project_id | STRING | Project the row measures. |
tvl | BIGNUMERIC | Value locked in the project’s contracts at day end, in USD. |
trading_volume | BIGNUMERIC | Cash value of the trades that took place, in USD. |
active_loans | BIGNUMERIC | Value of loans outstanding at day end, in USD. |
notional_trading_volume | BIGNUMERIC | In progress. Face value of perpetual contracts traded, in USD. |
assets_staked | BIGNUMERIC | In progress. Value staked at day end, in USD. |
fees | FLOAT64 | Total fees users paid, in USD. Chain gas plus app trading fees. |
revenue | FLOAT64 | Fees the project kept, in USD. |
token_incentives | FLOAT64 | In progress. Value of the project’s own token paid out as rewards, in USD. |
active_users | INT64 | In progress. Distinct addresses that used the project that day. |
Sample queries
- Project
- Project × chain
- App
- App × chain
Read one project’s daily Fees, Revenue and TVL.
Notes
trading_volume, notional_trading_volume, fees, revenue and token_incentives measure a day’s activity and add up freely: a weekly figure is seven daily rows added together, and a project figure is its apps added together plus whatever its own chains contributed. tvl, active_loans and assets_staked are values standing at day end, so a weekly figure for them is a choice of day rather than a sum. Counts of distinct addresses never add up at all.
A daily sector figure is a group by over the project table joined to dimensions.projects; group by primary_market_sector, since joining through unnest(market_sectors) counts a project once per tag it carries. Metric definitions holds the rule for every measure as data you can query.