Probalytics

Polymarket and Kalshi book and trade history in one ClickHouse warehouse you query in SQL.

Last updated

US persons
Yes
Taker fee
None
Settlement
Cash, Crypto
Liquidity
CLOB

What it is

A hosted data warehouse of Polymarket and Kalshi history, sold by the month. Three tables carry it — markets, fills and orderbook_snapshots — in one normalized schema across both venues, and the product is how many ways you can reach them: a ClickHouse database you connect to with a username and password, a browser SQL workspace, a REST API, weekly and monthly Parquet files, and a Python client.

The order book is the part worth the card. Every row of orderbook_snapshots is the complete bid and ask ladder for one outcome at one source timestamp, written whenever the book changes rather than on a timer, with two quality fields most archives do not publish. state says whether the row is the final, validated book of an update sequence (VERIFIED) or an earlier step inside it (INTERMEDIATE); for Polymarket, a verified book is one whose reconstruction reproduces the venue's own book hash. continuity says whether the row is proven to follow the one before it (CONTIGUOUS) or is a fresh starting point (RESET), and the documentation is explicit that a change must never be computed across a reset. That is a more honest account of a reconstructed book than "tick-level" on its own.

The documented counts, as of late August 2026: about 16.7 million markets, 2.57 billion fills and 137 billion book snapshots across the two venues. Kalshi's Yes and No books are published as two rows per state, with each ask derived from the opposite side's bids rather than supplied as an independent order — the arithmetic is on the page.

Probalytics is operated by Norven Oy, a Finnish company in Espoo, which is the party named in the terms of service.

Availability

An account at the vendor's dashboard, paid through Stripe, and nothing else that we found: the terms require the user to be 18 and set no geographic restriction, and there is no identity check because there is nothing to deposit and nothing to trade. The terms are governed by Finnish law, with disputes going to the District Court of Espoo unless the reader's own consumer law says otherwise.

Two clauses in those terms decide what you can build. You may run trading systems, research, dashboards and applications that present the data; you may not resell or redistribute it as a feed or data product, raw or reformatted, without written permission — and a breach is named a material one, with suspension without refund. The terms also make you responsible for not using the data in a way that breaks Polymarket's or Kalshi's own terms.

The service answered on 30 September 2026: an unauthenticated request to the markets endpoint returned 401 Missing authorization header.

Pricing

Four plans, read off the pricing page with the monthly toggle selected on 30 September 2026. The annual toggle is sold as "up to 20%" off, and the yearly prices in the page's own data work out at 18 to 20%. The terms repeat the same four monthly prices.

  • Starter, 39 USD a month. Markets and fills only, a rolling 30-day window of history, REST and SQL, 100 ClickHouse queries an hour and 100,000 result rows.
  • Pro, 129 USD. The full markets and fills history, 1,000 queries an hour, a billion result rows, and the bulk Parquet exports.
  • Orderbook, 249 USD. Pro plus the orderbook_snapshots table for both venues.
  • Custom, on request: unlimited queries, custom tables and retention, the only plan with an SLA, and invoice billing.

The history cut on Starter is the number that matters. Thirty days of fills will not backtest anything that spans an election cycle, so the real entry price for historical work is Pro, and for anything touching the book it is 249 USD a month.

There is no free tier. Every plan opens with a 3-day trial that, per the SQL guide, gets full market metadata but normally only the last seven days of fills and, on the Orderbook trial, of snapshots. The terms add a 14-day money-back window on the first payment. No VAT is charged; the terms say the operator is not currently registered for it.

REST has no published request quota at all — the API description says only that operational protections may reject unusually heavy traffic. The quotas that exist are on ClickHouse credentials, and the documentation warns that a large query can come back truncated without failing.

Markets & resolution

Whatever Polymarket and Kalshi list, which is elections, sports, macro releases and crypto prices, plus both venues' perpetual and margin instruments in the same tables. Probalytics resolves nothing; resolution_source here is null.

What it does carry is resolution as data: each market row holds a resolution type (STANDARD, SPLIT or VOID), the winning outcome, per-outcome payouts, who resolved it and when. How those are derived is the thing to read before trusting them. On Kalshi they come from the venue's own settlement fields. On Polymarket they are inferred from Gamma's settled outcome prices — one outcome at 1 is a standard win, all zeros is void, anything else is a split — rather than read from the on-chain oracle, so a Polymarket resolution here is Polymarket's metadata restated, not an independent record of the UMA process.

settlement lists both cash and crypto on this card: Kalshi settles in dollars and Polymarket on-chain, and one value would misdescribe half the coverage.

Integrations

  • ClickHouse SQL at clickhouse.probalytics.io, over TLS on the native port or HTTPS, from any ClickHouse client. The vendor recommends this path, and it is the only one that reaches the order book.
  • A browser SQL workspace in the dashboard, for exploration.
  • REST at api.probalytics.io with two resources, GET /api/v1/markets and GET /api/v1/fills, cursor-paginated, with a bearer token built from a key id and secret joined by a colon.
  • Parquet files from the dashboard: fills weekly, on Mondays at 02:30 UTC, and markets monthly. Pro and above.
  • The probalytics Python package, Apache-2.0, Python 3.11 or later. It wraps the ClickHouse connection, not REST, and returns Polars or pandas frames or typed models. Version 0.2.0 was uploaded to PyPI on 27 August 2026 after 0.1.0 on 5 July 2026, and the last commit on the repository's main branch is the same 27 August.
  • A public status API that needs no key.

There is no WebSocket and no MCP server. This is a warehouse you query, not a feed you subscribe to.

Limitations

  • Two venues. Limitless, Myriad, Opinion and the rest are not here, and the documentation's exchange table lists nothing beyond Polymarket and Kalshi as live.
  • No cross-venue matching. The traders page shows a Polymarket-against-Kalshi spread table, labels it illustrative, and says that defining which markets correspond is yours to control. The category and tags columns that might help are documented as usually empty.
  • Not a live feed. The troubleshooting page says ingestion normally runs on short intervals but is not a five-minute SLA, and recovery or upstream rate limits can stretch it. Compare indexed_at with timestamp before treating the latest row as current.
  • The book history is short and uneven. Polymarket from November 2025, with the vendor itself stating that rows before 17 February 2026 can have gaps; Kalshi only from May 2026.
  • Kalshi fills are thinner than Polymarket's. No participant ids, fee stored as 0 because the source does not expose it, every Kalshi fill recorded with taker_side = BUY, and Kalshi's multivariate KXMVE trades left out altogether. A fee of zero anywhere in fills can mean "unknown".
  • Perpetuals share the tables. Polymarket perpetuals and Kalshi margin instruments sit in markets, fills and the book under the same platform values; their prices are instrument prices, not probabilities. Filter on market_type first.
  • The vendor's own pages disagree with each other. The pricing page's Orderbook card says 900M+ book updates a day and its comparison table says 3.5B+; the site's structured data says 41M+ markets while the homepage and documentation count about 17 million. The Orderbook card advertises a Parquet export of the book, and the file-download documentation says book snapshots are not exported — ask before paying for the tier on the strength of it. The status API, checked at 14:04 UTC on 30 September 2026, reported the REST API down with a heartbeat 21 seconds old, which is not what its own documentation says down means, while the API itself answered.
  • No redistribution. The terms rule out republishing the data as a feed or product in any form without written permission.
  • Nothing here has been run by us — no trial opened, no query executed, no count reproduced.

Alternatives

Predexon is the nearest match in shape — book history as bulk Parquet, sold by the gigabyte rather than by the month, across three venues, with a WebSocket as well. Its Kalshi tick archive starts earlier than this one's book, and its Polymarket archive later. DepthFeed records the book for crypto up-or-down markets only, with a keyless demo. FinFeedAPI covers nine venues over REST with flat-file order events, billed per request. PMXT is a unified client that also trades, with a hosted data API on a free tier.

For Polymarket alone and no budget, the Polymarket dashboards on Dune put the on-chain record in SQL for free, and Polymarket Analytics covers wallets and traders as a site to browse rather than a table to query.

Specs

Interfaces
API, Python, SQL
Export
JSON, Parquet
Available in
Global
KYC required
No
Market subjects
Politics, Sports, Macro, Crypto
Resolved by
Resolves nothing
Maker fee
None
Platforms
Web, Library
AI features
None
Capabilities
Order book, Cross venue
Pricing verified
Availability verified
Capabilities verified
Markets verified

Background

How this part of the sector works, rather than which product to pick.

Also worth comparing

  • DepthFeed — The recorded bid-ask ladder for crypto up-or-down markets, which no venue keeps itself.
  • Predexon — Tick-level book history as Parquet, billed by the gigabyte, plus a mempool-aware feed.
  • Goldsky Polymarket Datasets — Polymarket's on-chain fills and positions, backfilled and streamed into your own database.
  • Marketlens — Recorded Polymarket order books across every market type, replayable to the tick.
  • Polymarket Data (SII dataset) — The "107 GB" open Parquet dump of Polymarket CLOB fills, November 2022 to March 2026.
  • Polymarket Data API — Polymarket's keyless read API for trades, positions, holders and price history.

FAQ

Which venues does Probalytics cover?

Two, Polymarket and Kalshi, including each venue's perpetual or margin instruments. The documentation's exchange table lists nothing else as live on 30 September 2026, whatever the marketing pages' "and more" suggests.

Does Probalytics match the same event across Kalshi and Polymarket?

No. Both venues arrive in one schema, but the vendor's own traders page says that defining which markets correspond is yours to control, and the published markets table carries no cross-venue link. The pairing is your join to write.

How far back does the order-book history go?

Polymarket from 20 November 2025, with the vendor stating that high-frequency reconstruction begins 17 February 2026 and earlier rows can have gaps. Kalshi from May 2026. Markets reach back to October 2020 and fills to January 2022.

Is there a free tier?

No. Every paid plan starts with a 3-day trial that normally covers full market metadata and only the last seven days of fills and, on the Orderbook trial, of book snapshots. After that the entry plan is 39 USD a month, with a 14-day money-back window on the first payment.

Can I get the order book over REST or as a file?

Not according to the documentation. REST serves markets and fills only, and the file-download page says book snapshots are not exported, so the book is a ClickHouse query on the Orderbook or Custom tier — although the pricing page's Orderbook card also advertises a Parquet export.