Mapping 22,578 Polymarket events: categories and counting limits

A reproduced read-only census of 22,578 open Polymarket events captured on 10 October 2026, with its pagination method, per-tag counts and overlap arithmetic spelled out.

In this guide

What the census actually counted

On 10 October 2026, a read-only sweep of the Gamma events endpoint with the filters active=true and closed=false returned 22,578 distinct event IDs across 226 sequential pages. The run started at 12:00:49 UTC and finished at 12:02:53 UTC, so the whole capture took roughly 2 minutes. An event on Polymarket is a container that groups 1 or more markets; it is not the same unit as a market, a condition, or an outcome token, and those identifiers are distinct. Because the sweep walked pages sequentially and was not transactional, events created or closed mid-run could have been missed on pages already fetched.

Counting rule: 1 event ID counts once per tag, and duplicate tags inside a single event are collapsed. That matters because tags behave as overlapping labels rather than a strict hierarchy, so an event tagged sports and soccer appears in both rows. Verify this on any smaller snapshot before trusting the totals: fetch a handful of pages, list each event's tag array, and check whether any array repeats a tag.

The observed tag counts, dated 10 October 2026

Each share below is 100 times the tag count divided by 22,578, rounded to 2 decimals. Rounding means the column will not sum to 100; overlapping tags also mean the shares are not shares of a partition. Read them as prevalence of a label across open events, not as market share, demand, or liquidity.

Tag counts and share of 22,578 open events, captured 10 October 2026. Shares overlap, so the column does not sum to 100.
TagEventsShare of 22,578 (%)
sports14,56464.51
soccer10,65547.19
crypto3,95317.51
politics2,45810.89
esports6853.03
geopolitics4692.08
finance4241.88
weather3731.65
tech3481.54
ai2951.31
movies810.36
earnings480.21
science440.19
space160.07

Why adding categories overstates coverage

Consider sports and soccer, the 2 largest labels. Sports tags 14,564 events, soccer tags 10,655, and their intersection is 10,654. The union is therefore 14,564 + 10,655 minus 10,654, which equals 14,565. If you added the 2 counts you would report 25,219 events, an overstatement of 10,654. The same trap appears at smaller scale: sports and esports intersect on 678 events, so adding 14,564 and 685 would overcount by 678. The table below shows the arithmetic for the recorded counts.

The union describes coverage of event IDs. The intersection describes shared event IDs. Neither number measures audience demand or whether 2 editorial pages answer the same reader question. Those decisions require separate keyword and search-result evidence.

Illustrative overlap arithmetic using the captured counts. Inputs are recorded; the union calculation is a derived illustration, not a new observation.
Input or stepValue
Events tagged sports14,564
Events tagged soccer10,655
Events tagged both10,654
Sum if added naively25,219
Union (14,564 + 10,655 - 10,654)14,565
Overstatement from naive addition10,654
Events tagged sports and esports678
Overstatement if adding sports and esports678

What the public snapshot records

The recorded sweep uses public discovery endpoints without authentication, writes or trades. This snapshot contains 373 events tagged weather and 685 tagged esports. The counts describe this collection only; they do not measure demand, market liquidity or prediction performance.

What this census cannot support

The counts are event metadata. They are not counts of distinct markets, distinct traders, search queries, or revenue, and they are not a forecast of outcomes or a measure of returns. The run also did not measure whether any event was tradable at capture time or in which countries it was eligible; country rights and eligibility need their own verification against current terms. Check each market's own active, closed and acceptingOrders flags rather than trusting a parent event's status, because a market can be closed while its parent event remains listed.

A missing tag does not prove the category is absent. An event may carry no tag at all, or a label may be applied inconsistently by whoever created the event, so low counts and zero counts are not equivalent. Tags are also not an exclusive hierarchy: an event can legitimately sit under several labels at once, and some pairs such as crypto with up-or-down (3,547 overlapping events) and tech with ai (249 overlapping events) show how concentrated overlap can be.

A capture on a particular date is a snapshot; a trend requires observations from other dates. Events open and close continuously, and a sequential, non-transactional read cannot guarantee that every event alive at the start was still alive at the end. Preserve a file hash to detect changes to the collected copy. The source capture SHA-256 is ce294197169acce63b8da687c02ecb71fb326acc9a7d0bb0d98f33ad7aec29bc. A later date requires a new collection.

Reproducing the count yourself

Follow the same shape as the original sweep: filter to active=true and closed=false, request the keyset endpoint with a limit and a cursor, then keep requesting with the returned next_cursor until the API stops issuing one. Deduplicate by event ID across pages, and deduplicate tags within each event, before counting any tag. Record the start and finish timestamps in UTC so a later reader can tell whether 2 runs overlap.

A tag can overlap another tag. Before comparing category totals, count unique event IDs and inspect the shared IDs for the pair being studied. This preserves the distinction between a category count and a total of unique events.

To continue from this descriptive count to a particular contract, choose Sports, esports or Weather markets. Market formats is another starting point when the decisive clause needs closer reading.

Download the category counts (JSON)

Sources & verification

Polymarket: Markets and events ↗

Sources checked

Polymarket: Discover markets ↗

Sources checked

PolyZeno. Automated review with DeepSeek V4.1 Flash.