Every claim, with its rule.
How to read this page
four principlesFacts, not narrative
Every number on Bedrock is what happened on-chain, computed from primary sources. No projections, no recommendations, no opinion.
Reproducibility
Every chart links to its definition, the SQL behind it, and a CSV export of the underlying rows. If you cannot reproduce a Bedrock number from the public repo, it is a bug.
Coverage shown, never hidden
When data is partial · for example, when many addresses are unlabeled · the unknown share is shown alongside the labeled share. Unknown is a first-class category, not an error.
Definitions are versioned
Cohort definitions, labels, and schema versions live in git. Every change is dated and explained in the changelog below. Historical numbers are not silently rewritten under new definitions.
Cohort definitions
the rule for every cohortEvery ATOM address belongs to exactly one cohort at any given height. When multiple rules could apply, the higher-priority cohort wins. The priority order, highest first: Validator → ETF & institutions → Treasury → Exchange (CEX) → Bridge → DEX / DeFi → OG staker → Long-term holder → Dormant → Recent entrant → Unknown.
| Cohort | Rule |
|---|---|
| Validator | An operator address (cosmosvaloper1…) or its self-delegation account address. Sourced from the staking module's validator set. Both addresses are linked in the labels table so the cohort assignment is consistent regardless of which side appears in a tx. |
| OG staker | An account whose first MsgDelegate on Cosmos HUB occurred before block 6,800,000 (approximately May 2020 · the first five months of Cosmos HUB) and which has not had a continuous 30-day window with zero total delegation since then. Redelegations between validators do not break continuity. A full undelegation followed by 30+ days at zero does. Once continuity is broken, OG status is lost permanently. |
| Long-term holder | An account holding ATOM (staked plus liquid) continuously for more than 730 days, not classified as Validator or OG staker, with no outflow greater than 50% of peak balance in that window. |
| Recent entrant | An account whose first on-chain activity occurred within the trailing 180 days, not on any other label list. |
| Exchange (CEX) | An address on the curated centralized exchange label list. Includes hot wallets, deposit wallets, and cold storage where publicly disclosed. |
| DEX / DeFi | A module account, IBC escrow, or smart contract on the curated DEX or DeFi label list. Covers AMMs, lending markets, liquid staking contracts, and IBC channel escrows. |
| Bridge | An address on the curated bridge label list. Covers issuance and burn accounts of cross-chain bridges such as Axelar, Gravity Bridge, and Noble's USDC issuance. |
| ETF & institutions | An address publicly attributed to an exchange-traded product (ETP), an institutional custodian, or another regulated holder of ATOM. Sources include ETP prospectuses, custodian disclosures, and the Cosmos chain registry. |
| Treasury | The Interchain Foundation's operating addresses, the community pool module account, AEZ-related addresses, and any future buyback or burn programs adopted by the Hub. |
| Dormant | An account with no inbound or outbound activity in the trailing 365 days. Reclassified the moment it moves. |
| Unknown | Default. Any address not matching the rules above. First-class · when a flow involves an unknown address, the unknown share is reported, not hidden. |
Label list
live registryEvery labeled address Bedrock uses for attribution lives in one registry, with the source named per row. Only verified labels drive flow classification: protocol and IBC accounts are derived on-chain, exchange wallets require a self-disclosed or independently corroborated source, and anything unconfirmed is left unlabeled rather than guessed. The registry is served live from the indexer, not a static list, so it stays current as new addresses clear the bar.
Open the live label registry →Index coverage
what we have, what we don't · as of 2026-07-16Of every ATOM transfer in the last 30 days, this is how much we can trace to named entities. The unknown share grows as flows pass through unlabeled addresses. As the label set expands, the indigo block widens.
Changelog
every revision, dated| Date | Version | Summary |
|---|---|---|
| 2026-05-28 | v2.0 | Rebrand from "ATOM Flow Observatory" to Bedrock. Storage moved from ClickHouse to PostgreSQL + TimescaleDB. Indexer scope extended to Cosmos HUB genesis (block 5,200,791). New cohorts: ETF & institutions, Treasury. v1 launch timeline compressed to 14 days. |
| 2026-05-25 | v1.0.1 | Memory budget clarification. Swap layout documented (4 GB primary + 4 GB extra). |
| 2026-05-24 | v1.0 | Initial spec draft. Cohort definitions established. Indexer architecture committed. |
Every query, every schema, every label. Read the source.
Bedrock is built and operated by Silk Nodes, an active validator on the Cosmos HUB, and licensed under MIT. The repository contains every SQL query behind every chart, the indexer code, the database schema, the label list, and this methodology page itself.