Reading an onchain market means answering four questions from chain data: what am I trading (the contract address plus its chain), what rules does its market enforce (pool, hook, and fee parameters), how deep is it (in-range liquidity relative to trade size), and what has actually happened (settled trades and receipts) — checked at a pinned block rather than taken from a dashboard's word.
Before reading any number, fix what you are reading about. Token identity is the contract address plus its chain — not a ticker, not a logo, not a social handle; all of those are copyable. Every other check on this page is meaningless pointed at the wrong contract.
If the token trades in a hooked pool, the hook is part of the market, not a footnote. Read the permission flags encoded in the hook's address, then the parameters: fee bounds, caps, burn shares, pot rules. A pool whose rules cannot be inspected should be priced as if it has none you can rely on.
Hookr renders each launch's exact per-swap rules beside its chart precisely so this step needs no trust — the same values the hook enforces on chain are the ones shown in the interface.
Related: The five hook blocks in the docs — What each rule block does, parameter by parameter.
Depth only matters relative to trade size: the same sell that barely moves a deep pool can walk a shallow one down several steps. Concentrated-liquidity pools add a wrinkle — depth exists only inside ranges, so 'total liquidity' overstates what is actually available near the current price. Estimate price impact against in-range depth, not headline TVL.
Trust trades settled in receipts, not numbers rendered in an interface. Volume means different things on different dashboards (window, venue, wash filtering); FDV is a live price times fixed supply, not a dollar valuation anyone owes anyone; holder counts come from indexers with their own lag. A figure you cannot recompute from the chain at a named block is decoration.
This is also how Hookr behaves by design: market values are block-pinned RPC reads, failed reads render as unavailable rather than zero, and partial coverage is labelled as partial.
Related: Data & safety methodology — Source hierarchy, freshness boundaries, and fail-closed displays.
A concentration view asks how much of one measured window belongs to its leading market and how much sits beyond that leader. It can describe a distributed or concentrated snapshot, but it cannot show that activity is broadening, shrinking, or being retained without a comparable earlier window.
Hookr's Market Pulse keeps ETH-quoted and HOOKR-quoted flow in separate cohorts, uses only tradeable markets, and fails closed when the bounded launch set or its measurements are incomplete. It reads up to 60 registry entries per supported release before removing UI-hidden canaries; those canaries, the separate protocol token, active auctions, and failed launches are outside the calculation. A market with three or more settled trades is labelled repeat-trade activity for that window — not three users and not retention.
Related: How Hookr derives market figures — Coverage, quote separation, fixed-point concentration, and stale-data rules.