Polymarket indexer
Complete Polymarket prediction-market data — order-fill events, market metadata, and event metadata — queryable via SQL on ClickHouse. Flat $300 / mo.
// updated 2026-06-04
The Supanode Polymarket Indexer provides complete prediction-market data including order fills, market metadata, and event metadata. Everything is already collected and structured in a SQL-queryable ClickHouse warehouse, so you skip the indexing and write queries. The dataset is continuously refreshed.
$300 / mo flat.
What's indexed
The indexer captures all Polymarket activity with continuous updates across three core tables:
| Table | Description | Rows |
|---|---|---|
polymarket_order_filled_v3 | All on-chain order-fill events (the CTF Exchange order book activity) | ~1.35B |
raw_market_meta | Market metadata and conditions | ~2.33M |
raw_event_meta | Event metadata grouping related markets | ~42K |
See the Table Reference for the full column schema and the Query Examples for ready-to-run patterns.
Key features
- Complete order-fill history — every fill is captured with maker/taker attribution (
is_maker), order side (side), filled token and USDC amounts, fee, and full Polygon transaction context (block, gas, transaction hash, sender/recipient). - Market context — join fills with
raw_market_metato access question text, descriptions, resolution conditions, end dates, outcomes, categories, prices, liquidity, and volume. - Event context — join with
raw_event_metato roll markets up into their parent events, with titles, slugs, categories, tags, and aggregated liquidity/volume. - Price-discovery analysis — track price evolution around events using aggregated fill data.
Interfaces
- SQL via ClickHouse — connect with standard tooling such as DBeaver, DataGrip,
psql, or the Python client, and run your own queries. - Custom REST endpoints — recurring queries deployed as REST endpoints, quoted per scope.
Connection
The indexer is exposed as a ClickHouse database named polymarket. Connect over the HTTP or native protocol.
Python (clickhouse-connect)
import clickhouse_connect
client = clickhouse_connect.get_client(
host='<your-host>',
port='<your-port>',
username='<your-username>',
password='<your-password>',
database='polymarket',
)
df = client.query_df("""
SELECT *
FROM polymarket_order_filled_v3
WHERE block_timestamp > now() - INTERVAL 1 HOUR
LIMIT 1000
""")
DBeaver
- Create a new connection and choose the ClickHouse driver.
- Set Host to
<your-host>and Port to<your-port>. - Set Database/Schema to
polymarket. - Enter your Username (
<your-username>) and Password (<your-password>). - Test the connection, then open a SQL editor and run your queries.
Connection details (host, port, username, and password) are provisioned per customer. Request your credentials via Telegram: @supanode_tgs.
Access
Access is provisioned via Telegram: @supanode_tgs. Provisioning is manual.
Free trial up to 48h. Activate it via Telegram before committing to a monthly tier.
Ready to start? Reach out on Telegram: @supanode_tgs.