Home › Markets › Kalshi Price History Guide
Kalshi Price History: How to Access Market Data and Candlesticks
A verification-first guide to viewing, downloading, and understanding Kalshi market price history. Covers the website chart, API candlestick endpoints, the moving historical cutoff, trades, and what the data does and does not contain.
Where to view Kalshi price history on the website
Every open Kalshi market page on kalshi.com/markets includes a price chart showing recent trade activity. The chart visualizes Yes/No contract prices over time. This is the simplest way to check how a market has moved, but the website chart does not expose a download button or a configurable historical date range.
For quantitative analysis, backtesting, or data export, use the Kalshi API endpoints documented below.
Kalshi API data types for price history
The Kalshi API organizes price data into several categories. Each serves a different purpose:
Market Candlesticks
OHLCV-style summaries at fixed intervals. The live market candlesticks endpoint returns recent intervals; the historical market candlesticks endpoint returns older ones. Each candle includes open, high, low, close prices, bid, ask, volume, and open interest for the interval.
Trades
Individual trade prints with timestamp, price, and quantity. Trades give tick-level detail that candlesticks summarize. Use the live and historical trade endpoints depending on which side of the cutoff the data falls.
Orderbook Snapshot
The current orderbook endpoint returns resting bids and asks at call time. This is a real-time snapshot only — Kalshi does not document a historical orderbook-depth archive. Candlesticks do not reconstruct queue position or depth changes.
The moving historical cutoff
Kalshi separates recent data from older data behind a moving cutoff boundary. The endpoint GET /historical/cutoff returns the current cutoff timestamp. API users must check this boundary first, then route older requests to the historical endpoints and newer requests to the live endpoints. The cutoff moves forward over time, so the same query on different days may hit different endpoints.
GET /historical/cutoff first.
Candlestick intervals documented by Kalshi
| period_interval | Meaning | Use case |
|---|---|---|
1 | 1 minute | Intraday microstructure, tick-level visualization |
60 | 1 hour | Daily trading patterns, session analysis |
1440 | 1 day (daily) | Multi-day trends, backtesting over weeks |
Each candlestick request also requires start_ts and end_ts parameters to define the time window. Preserve the source timestamps and do not silently forward-fill missing intervals — a gap in the data may mean no trades occurred, not that the price was unchanged.
Step-by-step: fetching Kalshi price history via API
- Authenticate: obtain Kalshi API keys as documented in Kalshi API Keys. Use the authentication method described in authenticated requests.
- Check the cutoff: call
GET /historical/cutoffto get the boundary timestamp. - Fetch candlesticks: for each desired time range, call the live or historical candlestick endpoint based on the cutoff. Pass the correct
period_interval,start_ts, andend_ts. - Optional — fetch trades: for tick-level analysis, call the live or historical trades endpoint.
- Respect rate limits: check Kalshi API rate limits before bulk requests. Higher tiers may have different limits.
What Kalshi price history does not include
- Historical orderbook depth: the orderbook endpoint is a current snapshot. Historical bid/ask depth at each timestamp is not available through the documented API.
- Guaranteed fill simulation: candlestick close prices are summaries, not executable quotes. A midpoint or close price is not automatically a fillable order.
- Forward-filled gaps: missing candlesticks may indicate no trading activity. Do not assume the price carried forward.
- Position-level P&L: price data does not include fees, slippage, or individual account results. Use the payout calculator for gross-pay estimates and the slippage calculator for execution-cost awareness.
Related Kalshi View guides
- Kalshi Backtester in Python: API Data Checklist — full architecture for routing across the cutoff and simulating fills
- Connecting Kalshi to Excel/Google Sheets — using the API for live quotes in spreadsheets
- Kalshi Liquidity and Slippage — why displayed prices may not match fills
- Kalshi Market Tickers and News — finding active markets and their data
- Payout Calculator and Slippage Calculator
Primary sources I checked
- Kalshi Historical Data documentation — overview of the historical data system and moving cutoff
- Kalshi GET /historical/cutoff endpoint — returns the boundary between live and historical data
- Kalshi live market candlesticks endpoint — recent OHLCV intervals
- Kalshi historical market candlesticks endpoint — older OHLCV intervals
- Kalshi orderbook endpoint — current snapshot, not a historical depth archive
- Kalshi API Keys and authenticated requests
- Kalshi API rate limits — check current limits before bulk requests
API documentation links rechecked August 13, 2026. Kalshi may change endpoint paths, parameters, or access tiers; always verify against the current docs.kalshi.com pages before building or running code. This page is educational only and is not financial, legal, or technical advice.
Frequently Asked Questions
How do I see Kalshi price history?
Open any market page on kalshi.com and the price chart shows recent trade prices. For systematic access, use the Kalshi API candlestick endpoints: live market candlesticks for current data and historical market candlesticks for older data, separated by the moving historical cutoff timestamp returned by GET /historical/cutoff.
Does Kalshi have an API for historical data?
Yes. Kalshi documents a historical data system with a moving cutoff timestamp. API users call GET /historical/cutoff to find the boundary, then route to live endpoints for recent data or historical endpoints for older records. Available historical data includes market candlesticks, trades, fills, and orders.
What candlestick intervals does Kalshi support?
The Kalshi market candlestick API references period_interval values of 1 minute, 60 minutes, and 1440 minutes (daily). Each candlestick request also requires start_ts and end_ts parameters to define the time range.
Can I download Kalshi trade history?
The Kalshi API provides live and historical trade endpoints that return individual trade prints with timestamp, price, and quantity. These are separate from candlestick summaries. Use the trades endpoint for tick-level analysis and candlesticks for interval summaries.
Can I get historical orderbook depth from Kalshi?
The current orderbook endpoint returns a real-time snapshot of resting bids and asks, not a historical depth archive. Candlesticks summarize prices and volume by interval but do not reconstruct queue position or depth changes. A depth-sensitive study needs snapshots or WebSocket messages collected while the market is live.
Is Kalshi price history free to access?
Kalshi's public API documentation describes the available endpoints and authentication requirements. Check the current Kalshi API documentation and rate-limit pages for whether your intended usage requires authentication, a Pro tier, or is subject to request limits. Do not assume access from this page alone.
Related guides: What is Kalshi? · Payout Calculator · Python Backtester Guide · Platform Comparison · FAQ