dimensions.projects: one row per project.dimensions.apps: one row per app, meaning one deployed version of a protocol that a project runs, such asuniswap-v3orhyperliquid-spot.
Tables
- Projects
- Apps
dimensions.projects contains one row per project: the protocol or company behind one or more live apps.| Column | Type | Description |
|---|---|---|
project_id | STRING | Identifier of the project. Every table that mentions a project joins on this. |
name | STRING | Display name. |
symbol | STRING | Ticker of the projectβs token, where one exists. |
market_sectors | ARRAY<STRING> | Every market sector tag the project carries. |
primary_market_sector | STRING | The first element of market_sectors. One value per row. |
Sample queries
- Project identity
- Projects by sector
- Apps for one project
Look up one projectβs identity and sectors.
Notes
market_sectors is a list, so joining through unnest(market_sectors) yields one row per tag. A daily table joined that way counts a project once for every tag it carries, and any total you take off it comes out too high. The hazard is built into the shape of the query, whatever the tagging holds.
Grouping by primary_market_sector keeps one row per project however the tagging changes later. Metrics shows the sector totals this protects.