Understanding pool data

Freshness, coverage, and why a number is sometimes missing.

Freshness

Every screen that shows a figure also shows how current that figure is. A screener that looks live while it is stale is worse than one that admits the lag.

The indexer trails the chain head. When the lag is inside the budget the interface says live; beyond it, it says how far behind it is; if the indexer is not reporting at all, it says that too.

The four states a figure can be in

StateMeaning
LiveIndexed within the freshness budget.
DelayedIndexed, but behind the chain head. The figure is as-of a past block, not now.
IncompleteIndexed, but the window does not cover what the question needs.
UnavailableThe question cannot be answered, and SquirtFi will not guess.

Missing is not zero

An unavailable figure renders as an explicit not-available marker, never as 0, never as a dash that could be read as zero. A missing swapper count and a swapper count of zero are different facts about a pool, and conflating them changes the score.

Prices and stale marks

USD values come from Chainlink feeds on this chain, with the pool’s own spot price used only where a feed does not exist. A feed publishes a heartbeat interval, but that interval is metadata about the publisher, not a promise that any price inside it is economically current.

Freshness therefore combines four inputs: the published heartbeat, the feed’s deviation-update behaviour, the state of the underlying market session, and how old the specific round actually is. A 24-hour-old equity price during an open session is inside its heartbeat and still useless, and is labelled accordingly.

When a mark is unusable, valuation is refused rather than estimated. See PnL limitations and refusal states.