Schema

Polymarket Data Schema Explained

The Polymarket data schema is small, and understanding it unlocks everything: markets identified by slug and id, frames keyed by second, and outcomes attached to rows. This page documents the schema row by row.

Figures measured as of 2026-09-24 on the published PolyOrderbooks archive.

Tables

The core tables

Joins

How the tables join

The join keys are the market id (for rows) and the UTC second / 250ms bucket (for time). Books, prices, and metrics align by construction on the archive's grid; the tape joins on the same bucket for fill-context studies.

A data consumer that joins on anything else (a rounded timestamp, a display price) builds the classic misalignment bugs; the schema is designed so the correct join is also the easy one.

Enums

The fields that carry meaning

Flags (one-sided, crossed), window types (5m, 15m, 4h), coin/series tags, and the outcome enum (1/0) are the compact fields on which every analysis rests. They are documented alongside the tables in the dataset metadata and the open data page.

The honest note: schema fields are recorded as observed, so flags describe the frame, not an interpretation — the same discipline as the (data-quality) audit.

Honest

The honest framing

A schema is a contract: every column means one thing, and the schema's honesty is that flags and outcomes record what happened, not what would look better in a summary. Datasets version their schema changes, so a cited row means the same thing forever.

Join first

Join before you trust

The schema's design goal is that the correct join is also the easy join: market id for rows, UTC second / 250ms bucket for time, and the flag columns ride along so regime-split studies do not reinvent them. A consumer who joins on a rounded display timestamp will build the exact misalignment bugs the schema exists to prevent.

Every published figure on this site — the 42,254-share median rest at 0.99, the 16.9% one-sided share — is reproducible from the schema fields alone.

FAQ

What tables make up the schema?

Market, books, prices, metrics, and tape — joined by market id and the UTC 250ms bucket.

How do books and prices align?

By construction on the shared grid: books, prices, and metrics carry the same timestamp per 250ms frame.

What do the flags mean?

one-sided and crossed describe the frame as observed — recorded facts, not interpretations.