Skip to main content
An app is one deployed version of a protocol: uniswap-v3 is an app of the Uniswap project. The same measures are carried per app and per app and chain, one row per day. Each measure is its own table, holding the levelโ€™s identifier columns, timestamp, and one value column. Every measure is in USD unless it counts something, and a missing row means no figure for that day, not zero. The project levels above live at Projects โ–ธ Metrics.

Tables

One row per (app_id, timestamp) in every metrics_apps table, since 2020-05. Each row also carries project_id. Details such as which market sectors the app belongs to live in dimensions.apps.
TableValue columnWhat it holds
metrics_apps.tvl_dailytvlValue locked in the appโ€™s contracts at day end, in USD.
metrics_apps.trading_volume_dailytrading_volumeCash value of the trades that took place on the app, in USD.
metrics_apps.active_loans_dailyactive_loansValue of loans outstanding on the app at day end, in USD.
metrics_apps.assets_staked_dailyassets_stakedValue staked on the app at day end, in USD.
metrics_apps.fees_dailyfeesFees paid by users of the app, in USD.
metrics_apps.fees_supply_side_dailyfees_supply_sideThe part of those fees the app passed on to the supply side, in USD.
metrics_apps.revenue_dailyrevenueFees the app kept, in USD.
metrics_apps.token_incentives_dailytoken_incentivesValue of the projectโ€™s own token paid out as rewards through the app, in USD.
metrics_apps.outstanding_supply_dailyoutstanding_supplyStablecoin supply outstanding today attributed to this app, in USD. Apps of stablecoin issuers only.
metrics_apps.user_dau_dailyuser_dauDistinct addresses that used the app that day. A HyperLogLog estimate.
metrics_apps.user_wau_dailyuser_wauDistinct addresses that used the app in the trailing 7 days. A HyperLogLog estimate.
metrics_apps.user_mau_dailyuser_mauDistinct addresses that used the app in the trailing 30 days. A HyperLogLog estimate.

Sample queries

Rank apps by fees over one week.

Notes

Measures live in separate tables, so a query for two of them is a join on the levelโ€™s identifier columns and timestamp. Use full join when both measures matter: a day can carry TVL and no fees, and an inner join would drop it. 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 an app figure is its chain rows added together. 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: user_dau is counted at the app level, so a user active on two chains counts once. An app figure rolls into its projectโ€™s on Projects โ–ธ Metrics. Metric definitions holds the rule for every measure as data you can query.