DATA · POOL RESERVES TIMING

DEX Pool Reserve Data: Event Time vs Retrieval Time

Pool reserves change with every swap and liquidity event. A reserve figure without its time can't be matched to a price or a trade.

Short answer

CoinGecko's pool data includes reserve_in_usd (nullable) and is cached about every 30 seconds on paid plans, 60 on demo; DEX Screener's liquidity has no documented timestamp. Neither tells you when the reserve value was last updated onchain. Record retrieval time, note the cache interval, and when precision matters (e.g. computing impact before a large swap) read reserves directly from the pool contract at a known block.

Which times the data carries

TimePresent?Meaning
Reserve value timeNot providedCache-dependent
Cache interval30 s / 60 s (CoinGecko)Maximum staleness
Retrieval timeNoRecord it
Onchain blockVia nodeExact

Compare DEX Pool Reserve Data across Binance, Bybit, OKX and Hyperliquid markets.

Open markets in ChartsPod

What to record yourself

Field to storeWhy
retrieved_atStaleness bound
source + cacheExpected lag
reserve_in_usdNullable
pool addressIdentity
block (if onchain)Exact time
Pool Reserves: a stored recordPool Reserves: a stored record: retrieved_at — Staleness bound; source + cache — Expected lag; reserve_in_usd — Nullable; pool address — Identity; block (if onchain) — Exact time.retrieved_atStaleness boundsource + cacheExpected lagreserve_in_usdNullablepool addressIdentityblock (if onchain)Exact time
Every pool reserves row carries its own clock. Original ChartsPod editorial graphic.

Example

Pool Reserves: event vs retrieval (illustrative)Pool Reserves: event vs retrieval (illustrative): 12:00:00: Large swap moves reserves; 12:00:20: API still cached; 12:00:30: Cache refresh; READ: Pre-swap reserves until refresh.12:00:00Large swap moves reserves12:00:20API still cached12:00:30Cache refreshREADPre-swap reserves untilrefresh
Two clocks, one record. Original ChartsPod editorial graphic.

Illustrative: an impact estimate used cached reserves from before a large swap; actual reserves were 15% thinner on one side, so the estimate was too optimistic.

Related: DEX Pool Reserve Data: Null vs Zero - Handle Missing Fields Correctly, DEX Pool Reserve Ratios: How to Read the Number Before a Swap.

computing impact before a large swap) read reserves directly from the pool contract at a known block.

Check DEX Pool Reserve Data against a live market before relying on it.

Try it in ChartsPod

Questions readers ask

When were these reserves measured?

APIs don't say; record retrieval time and cache.

How stale can CoinGecko reserves be?

Up to the cache interval.

How do I get exact reserves?

Read the pool contract at a block.

Sources and methodology

Field definitions come from DEX Screener's API reference and CoinGecko's onchain API documentation, read 17 October 2026. Where a schema doesn't document a timestamp, this guide says so and recommends recording retrieval time yourself.

  1. CoinGecko API: Top pools by token address — reserve_in_usd, pool_created_at; cache 30 s / 60 s.
  2. DEX Screener API reference — no update or retrieval timestamp in documented schemas; 60 requests/min on several endpoints.

This article explains research tools and workflows. It is not financial advice, does not recommend buying or selling any asset and does not predict prices. Crypto derivatives carry a risk of rapid and total loss of margin.

CHARTSPOD EDITORIAL EDITION · RESEARCH AND EDUCATION ONLY · NOT FINANCIAL ADVICE.