Orderbook data for up/down Polymarket

Tick-by-tick order book snapshots & updates, trades for Polymarket. Comprehensive simple API.

Tick-by-tick replay

Reconstruct state of the limit order book at any given past moment in time across all markets.

Parquet access

Each market tick dataset is contained in one Parquet file and can be downloaded directly over HTTP.

Comprehensive data coverage

all 7 polymarket up/down currencies with 5m, 15m, and 1h timeframe coverage.

Focus on strategy research, leave data infrastructure to us.

Save on server hosting, data storage, and maintenance for an in-house Polymarket data pipeline.

1B+
available individual trade data points
200K+
stored markets
1TB+
of high-frequency historical market data
Since 2026-02
high-frequency data history
99.9%
avg. historical data completeness
260K+
downloads per day

Comprehensive tick-level datasets

Download historical tick-level order book, price change, and last trade price data.

market_slugtimestamplocal_timestampask_pricesask_sizesbid_pricesbid_sizes
btc-updown-5m-17788032002026-05-14 23:55:04.8502026-05-14 23:55:04.868[0.53, 0.54, ... 0.99][254.1, 676.46, ... 15815.58][0.52, 0.51, ... 0.01][47.0, 40.0, ... 15810.89]
btc-updown-5m-17788032002026-05-14 23:55:06.4692026-05-14 23:55:06.487[0.53, 0.54, ... 0.99][244.98, 676.46, ... 15815.58][0.52, 0.51, ... 0.01][47.0, 40.0, ... 15810.89]
btc-updown-5m-17788032002026-05-14 23:55:06.5052026-05-14 23:55:06.523[0.53, 0.54, ... 0.99][239.02, 676.46, ... 15815.58][0.52, 0.51, ... 0.01][47.0, 40.0, ... 15810.89]

Developer-centric API

Download all data for a market with a single HTTP request.

Python
import pandas as pd
slug = "btc-updown-5m-1778803200"
data_type = "poly_l2"

url = f"https://api.pmdata.dev/download/{data_type}/{slug}.parquet"
df = pd.read_parquet(url, storage_options={"api_key": "<YOUR_API_KEY>", "User-Agent": "Mozilla/5.0"})
print(df.head())

Why PMData?

comprehensive - fair - transparent

historical data sourced from real-time websocket market data feeds.

redundant collection - dual websocket connections ensure no gaps, even during network disruptions.

all 7 polymarket up/down currencies with 5m, 15m, and 1h timeframe coverage.

level 2 lob data - aggregated market-by-price, full limit order book reconstruction

hourly updates, early market data access

downloadable parquet files, concurrency up to 200 markets / 10s

slug partitioning - files organized by slug for easy to use analysis workflows.

hftbacktest integration, backtest strategies with a mature, high-performance high-frequency backtesting framework.