Kalshi Scraper
Pricing
from $1.50 / 1,000 market records
Kalshi Scraper
Kalshi Scraper for prediction-market odds and Kalshi weather markets: YES/NO prices, implied probability, bid/ask, volume, open interest, resolution rules, settled results (incl. the official settled temperature for KXHIGH/KXLOW brackets), plus optional order books and 30-day price history.
Pricing
from $1.50 / 1,000 market records
Rating
0.0
(0)
Developer
FalconScrape
Maintained by CommunityActor stats
1
Bookmarked
2
Total users
0
Monthly active users
9 days ago
Last modified
Categories
Share
🚀 Kalshi Scraper: Kalshi API for Odds, Markets, Order Books and Weather
Export Kalshi prediction-market data as clean JSON, CSV or Excel: every market's YES/NO prices, implied probability, bid and ask, volume, open interest, close times and resolution rules, optionally with the full order book and 30 days of daily price history. The Kalshi Scraper works as a simple Kalshi API for odds and markets data: no key, no trading account, one dataset for all of Kalshi or just the series you follow, including every Kalshi weather market.
🎯 Use Cases
- Kalshi odds tracking: pull the current odds (implied probability) of elections, Fed decisions, inflation prints, sports and crypto markets, and keep a history with scheduled runs.
- Kalshi weather markets and backtests: collect every daily high and low temperature bracket per city, then join the settled temperatures to your forecast model.
- Prediction market data for research: build datasets of crowd probabilities, volume and open interest across categories.
- Arbitrage and odds comparison: compare Kalshi prices against sportsbooks or other prediction markets.
- Trading signals and alerts: watch volume spikes, open-interest changes and price moves across thousands of Kalshi markets.
✨ Features
- Odds and probabilities: last price,
impliedProbability, previous price, YES/NO bid and ask for every market. - Volume and open interest: all-time volume, 24-hour volume and open interest.
- All Kalshi markets or a slice: filter by category (Politics, Economics, Sports, Crypto, Climate and Weather...) or target exact series and event tickers such as
KXFED(Fed rate) orKXHIGHNY(NYC temperature). - Open, closed or settled markets: track live odds, or pull resolved markets with their
resultand settled value. - Order book (optional): every YES/NO price level with size.
- Price history (optional): 30 daily candles with open, high, low, close, volume and open interest.
- Ranked by volume: the most traded markets come first; whole-exchange scans skip thin markets via Minimum volume.
- Fast: scans 100,000+ open markets in about 30 seconds.
🛠️ How It Works
- Pick a scope: a category, or series and event tickers (the first part of any Kalshi market ticker, e.g.
KXFED). Leave everything default to get the 50 most traded open markets on Kalshi. - Optionally add depth: turn on Include order book and/or Include price history.
- Run the scraper and download the markets, or read them through the Apify API.
⚙️ Input
| Field | What it does | Default |
|---|---|---|
Category (category) | all or one Kalshi category: Politics, Elections, Economics, Financials, Sports, Crypto, Climate and Weather, Science and Technology... | all |
Series tickers (seriesTickers) | Series such as KXFED, KXHIGHNY. Overrides the category. | empty |
Event tickers (eventTickers) | Single events such as KXHIGHNY-26OCT28. | empty |
Status (status) | open, closed or settled. | open |
Minimum volume (minVolume) | Skip markets traded less than this. | 1,000 on whole-exchange scans, 0 for tickers |
Include order book (includeOrderbook) | Add every YES/NO price level with size. | off |
Include price history (includeHistory) | Add 30 daily candles. | off |
Maximum markets (maxItems) | How many markets to save. | 50 |
{"seriesTickers": ["KXFED", "KXHIGHNY"],"status": "open","includeHistory": true,"maxItems": 200}
🌡️ Kalshi Weather Markets (KXHIGH / KXLOW)
Kalshi lists a daily high and low temperature market for dozens of cities: one series per city, one event per day, one market per temperature bracket (about 12 open brackets per city at any time). Put the series tickers in Series tickers and leave Minimum volume empty:
{ "seriesTickers": ["KXHIGHNY", "KXHIGHCHI", "KXLOWTBOS"], "status": "open", "maxItems": 500 }
| City | Daily high | Daily low |
|---|---|---|
| New York (Central Park) | KXHIGHNY | KXLOWTNYC |
| Chicago (Midway) | KXHIGHCHI | KXLOWTCHI |
| Miami | KXHIGHMIA | KXLOWTMIA |
| Austin | KXHIGHAUS | KXLOWTAUS |
| Los Angeles | KXHIGHLAX | KXLOWTLAX |
| Denver | KXHIGHDEN | KXLOWTDEN |
| Philadelphia | KXHIGHPHIL | KXLOWTPHIL |
| Houston | KXHIGHTHOU | KXLOWTHOU |
| Boston | KXHIGHTBOS | KXLOWTBOS |
| Dallas | KXHIGHTDAL | KXLOWTDAL |
| Washington DC | KXHIGHTDC | KXLOWTDC |
| Seattle | KXHIGHTSEA | KXLOWTSEA |
| San Francisco | KXHIGHTSFO | KXLOWTSFO |
| Phoenix | KXHIGHTPHX | KXLOWTPHX |
| Las Vegas | KXHIGHTLV | KXLOWTLV |
| Minneapolis | KXHIGHTMIN | KXLOWTMIN |
| Oklahoma City | KXHIGHTOKC | KXLOWTOKC |
| Atlanta | KXHIGHTATL | KXLOWTATL |
| New Orleans | KXHIGHTNOLA | KXLOWTNOLA |
| San Diego | KXHIGHTSAN | KXLOWTSAN |
| London / Paris / Berlin / Tokyo … | KXHIGHTEGLL, KXHIGHTLFPG, KXHIGHTEDDB, KXHIGHTRJTT | KXLOWTEGLL, KXLOWTLFPG, KXLOWTEDDB, KXLOWTRJTT |
Every open weather market in one run (temperature, rain, snow, hurricanes; 390+ series): set Category to Climate and Weather, Minimum volume to 0 and Maximum markets high enough.
Settled temperatures for backtesting: run the same series with "status": "settled". Each resolved bracket carries result (yes/no) and expirationValue, the official settled temperature in °F for that city and day.
💰 Pricing
Pay only for the markets you get. No monthly plan.
| Event | Price | What you get |
|---|---|---|
| Market record | $0.0015 per market ($1.50 per 1,000) | Odds, bid/ask, volume, open interest, close date, rules |
| Market with order book / history | $0.003 per market ($3.00 per 1,000) | The same record plus the order book and/or 30 daily candles |
| Actor start | $0.00005 per run | Charged once when the run starts. |
Examples: the 50 most traded markets = $0.075 · 500 weather brackets = $0.75 · 200 markets with price history = $0.60.
📊 Sample Output Data
A NYC high-temperature bracket (secondary rules shortened):
{"ticker": "KXHIGHNY-26OCT28-B62.5","eventTicker": "KXHIGHNY-26OCT28","seriesTicker": "KXHIGHNY","title": "Will the maximum temperature be 62-63° on Oct 28, 2026?","subtitle": "62° to 63°","category": "Climate and Weather","seriesTitle": "Highest temperature in NYC","status": "active","result": null,"expirationValue": null,"marketType": "binary","strikeType": "between","floorStrike": 62,"capStrike": 63,"yesPrice": 0.1,"impliedProbability": 10,"previousPrice": 0,"yesBid": 0.07,"yesAsk": 0.09,"noBid": 0.91,"noAsk": 0.93,"volume": 8731.23,"volume24h": 8662.2,"openInterest": 6320.19,"openTime": "2026-10-27T14:00:00Z","closeTime": "2026-10-29T05:00:00Z","expirationTime": "2026-11-04T14:00:00Z","rules": "If the maximum temperature recorded at New York City (CLINYC) for Oct 28, 2026, is between 62-63° fahrenheit according to The Weather Company, then the market resolves to Yes.","rulesSecondary": "Not all weather data is the same. ..."}
Prices are in dollars per contract (0–1); impliedProbability is the same number in percent. result and expirationValue are filled once a market settles. orderbook and priceHistory appear only when those options are on.
🔁 Schedule and Integrate
For odds tracking, run the same input every hour (or every 15 minutes before a big event): each run is a dated snapshot, and together they form your odds history. Set it up with Apify Schedules, and send the results to Google Sheets, Zapier, Make, n8n, Slack or your own webhook through Apify integrations.
🤖 Use with AI Agents (MCP)
The Kalshi Scraper works as a tool in Claude, ChatGPT, Cursor and other MCP clients through the Apify MCP server (https://mcp.apify.com). An agent can call it with:
{ "category": "Economics", "maxItems": 20 }
❓ FAQ
Does Kalshi have an official API? Yes. Kalshi offers a trading API for account holders, built for placing orders, with per-endpoint pagination and rate limits to manage yourself. This scraper is the practical route when you only need market data: no account or key, one dataset across categories, series and events, ranked by volume, with optional order books and daily history in the same row.
How do I get Kalshi odds for one event or series?
Put the series ticker (e.g. KXFED) or the event ticker in the input. The ticker is the first part of any market's ticker on Kalshi.
Can I get settled Kalshi markets and their results?
Yes. Set Status to settled: every resolved market carries result (yes/no) and, for weather markets, the official settled value.
Do I need a Kalshi account? No. Everything comes from public Kalshi market data.
How fresh are the odds? Live at the moment of the run. Schedule the run as often as you need snapshots.
Why are some fields empty?
result and expirationValue stay empty until a market settles; floorStrike and capStrike exist only on bracket markets; rulesSecondary is empty when Kalshi publishes no extra rules.
🔗 Related Scrapers
- Polymarket Price History Scraper: price history of Polymarket markets, to compare with Kalshi odds.
- Google News Scraper & Archive API: the news behind the events Kalshi trades on.
- Google Trends Scraper: public interest in an event over time.