Kalshi Historical Data
Most Kalshi data you can find is a last price sampled once an hour — fine for a chart, useless for a backtest. DepthFeed keeps the full historical order book: the complete yes/no book — up to 100 levels per side, captured finely enough to replay every market that ever opened.
Kalshi historical data, done properly, is the complete order book over time — every bid and ask level with its size at each change, not just the last traded price. DepthFeed records continuous full-depth polling of Kalshi's public REST orderbook and serves that archive back over a REST API, so you can replay any past market exactly as it traded.
Kalshi historical data at a glance
- Capture
- Continuous full-depth REST poll (~1.5s)
- Depth
- Up to 100 levels per side (yes/no)
- Series
- KX{ASSET}15M · KX{ASSET} · KX{ASSET}D
- Market windows
- 15-min · hourly · daily · weekly
- Assets
- 7 — BTC · ETH · SOL · XRP · DOGE · BNB · HYPE
- Timestamps
- Epoch-ms exchange + receive, per snapshot
- Underlying price
- Binance spot/futures, joined per snapshot
- History
- 7/30/90-day windows + full archive (Desk)
- Delivery
- REST API + live WebSocket, identical JSON
- Resolution
- Every change, or ?interval= 30s–1d downsample
What's in the archive
The full book, not a last price
A historical last price tells you nothing about the spread or the size resting at each level. DepthFeed's archive holds the complete yes/no book — up to 100 levels per side for kalshi's 15-minute, hourly, daily, and weekly crypto markets, so you can reconstruct exactly what you would have traded against at any past moment — and measure the slippage a real order would have paid.
Resolution that survives short-dated markets
Short-dated crypto markets settle in 5 to 60 minutes, so an hourly archive captures only a frame or two from a market's entire life. We record the full depth roughly every 1.5 seconds, fastest-living markets polled most often, which is orders of magnitude finer than any free hourly archive — short-dated kalshi markets stay genuinely backtestable.
History and live in one format
Pull the depth you need over the REST API, replay it in your own stack, then point the same code at the live WebSocket — the frames carry the identical JSON. The archive deepens as the backfill extends; plans serve rolling 7-, 30-, and 90-day windows, with the Desk plan serving the full archive.
Start pulling kalshi historical data
Free Explorer tier, no card. Full bid/ask depth and the underlying price on every snapshot, over a REST API and a live WebSocket stream.
Questions, answered.
Plans serve rolling 7-, 30-, and 90-day windows of full order-book history, and the Desk plan serves the full historical archive, which deepens as the backfill extends. Every window carries the complete bid/ask book, not a sampled last price. (Order-book depth can't be backfilled, so any provider's history starts when continuous capture began.)