Skip to main content
GET
/
polymarket
/
analytics
/
counts
Global analytics snapshot
curl --request GET \
  --url https://api.struct.to/v1/polymarket/analytics/counts
{
  "ts": 1,
  "block": 1,
  "volume_usd": 123,
  "buy_volume_usd": 123,
  "sell_volume_usd": 123,
  "unique_traders": 1,
  "unique_makers": 1,
  "unique_takers": 1,
  "txn_count": 1,
  "buy_count": 1,
  "sell_count": 1,
  "redemption_count": 1,
  "redemption_volume_usd": 123,
  "merge_count": 1,
  "merge_volume_usd": 123,
  "split_count": 1,
  "split_volume_usd": 123,
  "fees_usd": 123,
  "shares_volume": 123,
  "yes_volume_usd": 123,
  "no_volume_usd": 123,
  "yes_count": 1,
  "no_count": 1,
  "buy_dist_under_10": 1,
  "buy_dist_10_100": 1,
  "buy_dist_100_1k": 1,
  "buy_dist_1k_10k": 1,
  "buy_dist_10k_50k": 1,
  "buy_dist_50k_plus": 1,
  "tags": 123,
  "events": 123,
  "markets": 123,
  "positions": 123
}

Response

200 - application/json

Latest global metrics snapshot

Response body for GET /polymarket/analytics/counts. Cumulative analytics metrics plus entity-count enrichment.

ts
integer<int32>
required

Unix-second timestamp of the latest block reflected in the metrics.

Required range: x >= 0
block
integer<int64>
required

Latest block number processed.

Required range: x >= 0
volume_usd
number<double>
required
buy_volume_usd
number<double>
required
sell_volume_usd
number<double>
required
unique_traders
integer<int64>
required

Distinct addresses that have ever traded on Polymarket (lifetime).

Required range: x >= 0
unique_makers
integer<int64>
required

Distinct makers ever active (lifetime distinct).

Required range: x >= 0
unique_takers
integer<int64>
required

Distinct takers ever active (lifetime distinct).

Required range: x >= 0
txn_count
integer<int64>
required
Required range: x >= 0
buy_count
integer<int64>
required
Required range: x >= 0
sell_count
integer<int64>
required
Required range: x >= 0
redemption_count
integer<int64>
required
Required range: x >= 0
redemption_volume_usd
number<double>
required
merge_count
integer<int64>
required
Required range: x >= 0
merge_volume_usd
number<double>
required
split_count
integer<int64>
required
Required range: x >= 0
split_volume_usd
number<double>
required
fees_usd
number<double>
required
shares_volume
number<double>
required
yes_volume_usd
number<double>
required
no_volume_usd
number<double>
required
yes_count
integer<int64>
required
Required range: x >= 0
no_count
integer<int64>
required
Required range: x >= 0
buy_dist_under_10
integer<int64>
required
Required range: x >= 0
buy_dist_10_100
integer<int64>
required
Required range: x >= 0
buy_dist_100_1k
integer<int64>
required
Required range: x >= 0
buy_dist_1k_10k
integer<int64>
required
Required range: x >= 0
buy_dist_10k_50k
integer<int64>
required
Required range: x >= 0
buy_dist_50k_plus
integer<int64>
required
Required range: x >= 0
tags
integer<int64>
required

Estimated total number of tags.

events
integer<int64>
required

Estimated total number of events.

markets
integer<int64>
required

Estimated total number of markets.

positions
integer<int64>
required

Estimated total number of unique positions / traders.

Last modified on April 25, 2026