Kalshi Price Data Explained: Yes/No Prices, Series, and Depth
Kalshi prices are probabilities, quoted yes and no. Here's how to read them straight from the book — and how the series, windows, and depth fit together.
Kalshi price data has two layers: each contract's yes/no price — quoted 0 to 1, the market's implied probability — and the underlying crypto reference price that drives it. Because a yes bid at price p is the same as a no offer at 1 − p, the full picture needs both sides of the book; DepthFeed stamps the complete yes/no ladder and the underlying on every snapshot with epoch-millis timestamps.
Yes/no prices are implied probabilities
Every Kalshi crypto contract resolves yes or no, and each side trades between 0.01 and 0.99 (1¢ and 99¢). The yes price is the market's implied probability that the condition resolves true; at settlement one side is worth $1.00 and the other $0.00. So a yes contract trading at 0.33 is the book pricing a 33% chance the condition holds.
As with any market, the honest price is the live best bid and ask — not a last print. Reading it from the book means the probability you record comes with a real spread and real resting size behind it.
Reading both sides of the book
Kalshi's order book has a yes side and a no side, and they are two views of the same market. A bid to buy yes at price p is economically identical to an offer to sell no at 1 − p. So the implied yes ask is 1 − the best no bid.
A real captured example: the market KXBTC15M-26JUN211530 had its best yes bid at 0.32 and its best no bid at 0.67. Because 1 − 0.67 = 0.33, the implied yes ask was 0.33 — a one-cent market quoting 0.32 / 0.33, i.e. ~32–33% odds. You only see that clean a picture by capturing both ladders, not a single side.
The series and window taxonomy
Kalshi organizes crypto markets into a few series per asset, and the ticker tells you which. Replace {ASSET} with the asset code (BTC, ETH, SOL, XRP, DOGE, BNB, HYPE):
- KX{ASSET}15M — the 15-minute up/down series.
- KX{ASSET} — the threshold series ('will the asset be above/below level X').
- KX{ASSET}D — the directional series.
The window is per-market, carried by market_type
The threshold and directional series each run hourly, daily, and weekly markets concurrently, so you cannot read a market's window from its series alone. Each market's actual window lives in its market_type field, exposed on the DepthFeed API as a ?type= filter (15m, 1h, 24h, 1w). And identify the asset from the series prefix, not by substring-matching the ticker — 'bnb', for example, appears inside unrelated codes.
A threshold example: KXHYPED-26JUN0717-T73.9999 asks whether HYPE settles above $73.9999 that day — a daily (24h) market in the KXHYPED series, still quoted yes/no from 0.01 to 0.99. Same price mechanic as an up/down market, but against a level instead of a direction.
Anatomy of a real Kalshi snapshot
Each captured snapshot carries: yes_prices / yes_sizes and no_prices / no_sizes (both full ladders as price + size), ticker / series (the asset and series), market_type (the window), and recv_ts_ms (the epoch-millis capture time, which joins to the underlying). With both ladders you reconstruct the exact mid, spread, and depth at any moment.
On a representative BTC 15-minute market DepthFeed captures a median of 96 price levels on each side (up to the full 100) — so every probability you read has its resting size attached, not just the touch.
The underlying reference, joined
A crypto contract is a bet on where the underlying lands, so the underlying price is part of the data. Every yes/no snapshot ASOF-joins to a high-frequency Binance reference price for the asset by epoch-millis timestamp, so you can line the contract's probability up against the spot move that is repricing it — and against the reference that ultimately settles it.
How Kalshi capture works
Kalshi's public market data is REST, so DepthFeed polls the full-depth orderbook continuously, from a US region (Kalshi is a CFTC-regulated US exchange) so the book is captured the way the exchange serves it. Order-book depth cannot be backfilled after the fact, which is why it is recorded live and continuously.
Kalshi vs Polymarket price data, briefly
| Kalshi | Polymarket | |
|---|---|---|
| Price unit | Yes/no, 0–1 | Per-outcome (Up/Down), 0–1 |
| Book shape | Yes ladder + no ladder | Bid/ask per outcome |
| Implied ask | 1 − best no bid | Best ask on the outcome |
| Windows | 15m, 1h, 24h, 1w | 5m, 15m, 1h, 4h, 24h |
| Capture | Continuous full-depth REST poll | Event-driven CLOB websocket |
Measured coverage
DepthFeed's Kalshi archive holds 114 million+ yes/no order-book snapshots across 550,000+ distinct crypto markets, with history reaching back to March 2026, over seven assets and the 15-minute, hourly, daily, and weekly windows. The book typically quotes a one-cent (single-tick) spread with around 96 price levels on each side (up to the full 100) and roughly 156,000 contracts of resting depth on a BTC 15-minute market.
(Figures measured directly from our archive, June 21, 2026.)
Key takeaways
- 01Kalshi yes/no prices are implied probabilities, quoted 0.01–0.99; at settlement one side pays $1.
- 02A yes bid at p equals a no offer at 1 − p, so the implied yes ask is 1 − the best no bid.
- 03Series give the asset (prefix) and type (KX{ASSET}15M / KX{ASSET} / KX{ASSET}D); market_type gives the window.
- 04DepthFeed captures the full ladder both sides — a median of ~96/97 levels, up to 100 — with the underlying joined.
- 05Kalshi doesn't serve historical order-book depth; it's captured live and continuously from the public REST book.
DepthFeed serves the full Polymarket & Kalshi order book over a REST API and live WebSocket. Free Explorer tier, no card.
Start free