▌tickfoundry
capture live中文sign inget the data →
§kalshi

Kalshi historical tick data.
Every book change and every trade, for every series.

Kalshi's order books from our own two-leg websocket capture: the 25-level book on every change in YES terms, top of book, every trade and Kalshi's own ticker, for every series, since 2026-09-27.

Before that: every Kalshi trade since June 2021, whole exchange, one file a day (trades only: no order book exists for those days). 5,854 series, 26 captured days, 669 GB of parquet.

pull the free sample day →schemapricing

What is on disk today

26 captured days, 2026-09-27 → 2026-10-22, 669 GB across five tables; the trades history 2021-06-30 → 2026-09-26, 1,914 days with trades, 38 GB. New days are added daily.

Top of book (every change)kalshi_l1

Best YES bid and ask with sizes and the spread, one row whenever either changed, derived tick by tick from the rebuilt book: not Kalshi's conflated ticker.

~2.4 GB · all series · 26 days · 57 GB on disk
Order book, 25 levels, every changekalshi_l2

The whole ladder after every book event, in YES terms (the NO bids become the asks, at their sizes), 25 levels a side: wide columns bid_px_1 … ask_sz_25, plus the exchange's own hourly snapshots. Each row is self-contained, so you can start reading mid-day.

~23 GB · all series · 26 days · 570 GB on disk
Tradeskalshi_trades

Every trade: YES and NO price, size in contracts, the taker's side, block-trade flag, trade id.

~440 MB · all series · 26 days · 11 GB on disk
Kalshi ticker (~1 s)kalshi_ticker

Kalshi's own ticker feed, about one update a second per market: last price, YES bid/ask with sizes, cumulative volume and open interest in contracts and dollars.

~1.1 GB · all series · 26 days · 30 GB on disk
CF Benchmarks index tickskalshi_cfbenchmarks

The CF Benchmarks reference indexes Kalshi's crypto markets settle on (BRTI and the ETH, SOL, XRP, DOGE … real-time indexes), 1-second and 5 Hz, with Kalshi's 60-second averages. One file a day; on L25.

~72 MB · one file · 25 days · 1.6 GB on disk
Trade history before our capture (trades only)kalshi_trades_history

Every trade Kalshi reports from 30 June 2021 to 26 September 2026, for the whole exchange, one file a day. Trades only: Kalshi's historical API has no tick-level order book, so these days carry no l1, l2 or ticker.

~4 kB a day in 2021, ~300 MB a day by September 2026

Most data: KXNCAAFSPREAD · KXBTC15M · KXBTCD · KXNCAAFTOTAL · KXITFWMATCH · KXITFMATCH · KXNASDAQ100U · KXCS2GAME · KXMVECROSSCATEGORY · KXETH15M · KXGOLD15M · KXNCAAFTEAMTOTAL · KXNFLSPREAD · KXNBATOTAL · KXNBASPREAD · KXNCAAFGAME · KXATPCHALLENGERMATCH · KXXRP15M · KXNCAAF1HSPREAD · KXZEC15M · KXETHD · KXSOL15M · KXDOGE15M · KXWTI15M

Series by category

Every series has its own page with its coverage, size per day and open markets. The ten with the most data in each category:

Read before you pull

  • The first day starts at 11:00 UTC. Our capture began at 11:00 UTC on 27 September 2026: 13 hours that day, not 24, and no CF Benchmarks index file (that capture starts on the 28th).
  • A book-quality dip on 2026-09-29. During a pipeline cutover 10,255 exchange snapshots disagreed with the rebuilt book (41 to 1,378 on every other day) and 16,678 negative levels were clamped to zero. The book resynchronises at every exchange snapshot; trades and ticker are unaffected.
  • The trades history before 27 September 2026 is trades only, for the whole exchange: it is never sold at book depth or per series.

FAQ

Where does the Kalshi order-book data come from?

From our own capture of Kalshi's market-data websocket, on two independent legs in different regions, merged and deduplicated hourly. Every book delta and every exchange snapshot is kept, so the 25-level book is rebuilt on every change and checked against the exchange's own snapshots; each bundle's README carries the match rate per day.

How far back does it go?

The book, top of book, trades and ticker start on 2026-09-27 (from 11:00 UTC that day), when our capture began; new days are added daily. Before that, Kalshi publishes trades but no order book, so 2021-06-30 to 2026-09-26 is sold as trades-only history: every trade on the exchange, one file per day.

What is in the book?

One book per market in YES terms: Kalshi quotes YES and NO bids, and the NO bids become the asks (price 1 − NO bid, at its size), so nothing on the NO side is lost. 25 levels a side as wide columns (bid_px_1 … ask_sz_25), one row per book event, each row the whole ladder, so you can start reading mid-day. L10 carries the best 10 levels.

How is it sold?

On the same plans and at the same prices as Polymarket, bought for Kalshi: Starter ($29/mo: L1, trades and ticker for every series, one series at full depth), L10 ($49/mo: the 10-level book) or L25 ($99/mo: the 25-level book and the CF Benchmarks index feed). Each includes 7 days before you join and every day after; earlier captured days are backfill at the plan's rate. The trades history is $7.50 a month on any Kalshi plan, $316.75 for all of it. Kalshi is its own subscription: hold it alongside a Polymarket or Hyperliquid plan and they add up, monthly or yearly on each. Any free account can pull 2026-10-07, any series, up to 1.0 GB.

What format does it arrive in?

Parquet, one file per table per series per day in a table-first tree (one read_parquet reads a whole table), and a README with the schemas, the per-day book-quality numbers and the coverage notes for your exact range. Delivery is a download link, the REST API, or SFTP on L25.

TickFoundry is not affiliated with or endorsed by Kalshi. Kalshi data is supplied under our data agreement with Kalshi and licensed to one named user for internal use.