dimensions.metrics: one row per measure per kind of thing measured, with its unit and its combination rules.dimensions.metric_instances: one row per measure with a specific wording, for one entity.
Tables
- Metric definitions
- Metric instances
dimensions.metrics holds one row per measure per kind of thing measured, and each row says which daily table the measure sits in, what unit it is in, and what to do with it when you combine days or combine things. The rows come from the same authored definitions the daily tables are built from, so the two never disagree.Two columns hold the answer to whether a measure sums. over_time says what to do when you turn several days into one figure. across_dimensions says what to do when you turn several things, such as several chains or apps, into one figure. measure_type names which of four kinds of number you are looking at, and additivity sums that up in a word.A flow counts activity over a stretch of time, so it adds up freely in both directions: across days, and across the things being measured. Fees for a project are its appsโ fees added together, just as fees for a week are seven days added together.A balance is a level: how much of something there was at the end of the day. Balances add up across things but never across days: the supply of USDC is its supply on each chain added together. For a range of days, take the last dayโs figure.A ratio is a rate, such as a yield. A unique count counts distinct addresses. Neither adds up, and both read
unsupported across things because the daily table alone does not hold enough to combine them correctly. Averaging two yields needs to know how much money sits behind each, and the daily table does not carry that. Combining two counts of distinct addresses needs the addresses themselves, not the counts. Assets โธ Senders shows how a count of distinct addresses widens.| Column | Type | Description |
|---|---|---|
metric_id | STRING | Identifier of the measure, including the kind of thing it measures. |
entity_id | STRING | Kind of thing the measure is defined for: an asset, a project, a chain. |
measure | STRING | Name of the measure. |
column_name | STRING | Column the measure sits in on its daily table. |
served_by | STRING | Daily table the measure sits in. |
title | STRING | Display title. |
generic_definition | STRING | What the measure means, whatever it is measuring. |
ai_hint | STRING | Guidance for software reading the table on how to use the measure. |
unit | STRING | Unit of the value: usd, count, ratio, pct. |
format | STRING | How to display the value. |
deprecated | BOOL | Whether the measure is retired. |
measure_type | STRING | flow, balance, ratio or unique_count. |
additivity | STRING | additive, semi_additive or non_additive. |
value_grain | STRING | The level the value is measured at. |
over_time | STRING | What to do when turning several days into one figure. |
across_dimensions | STRING | What to do when turning several things into one figure. |
ranking_direction | STRING | Which end of a ranking counts as better. |
dimensions | ARRAY<STRING> | Ways the measure can be broken down. |
formula_expression | STRING | The formula, where the measure is worked out from others. |
formula_dependencies | ARRAY<STRING> | Measures the formula reads. |
formula_summary | STRING | The formula in words. |
methodology_summary | STRING | How the measure is worked out. |
source_types | ARRAY<STRING> | Kinds of source the measure comes from. |
caveats | ARRAY<STRING> | Known limitations of the measure. |
notes | ARRAY<STRING> | Additional notes. |
quality_minimum | FLOAT64 | Lowest value considered plausible. |
quality_maximum | FLOAT64 | Highest value considered plausible. |
inserted_at | TIMESTAMP | When the row was published. |
Sample queries
- By table
- Non-summable
- Specific definition
List every measure in one daily table, with the rules for combining it.