Kalshi Weather Markets Scraper
Pricing
from $0.40 / 1,000 markets
Kalshi Weather Markets Scraper
Kalshi daily high and low temperature markets for 24 US cities, one row per bracket with bid, ask, probability, volume and open interest. Each city and day gets the market-implied temperature, and settled markets add the measured temperature for history.
Pricing
from $0.40 / 1,000 markets
Rating
0.0
(0)
Developer
deriverge s.r.o.
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
7 days ago
Last modified
Categories
Share
Kalshi Weather Markets Scraper returns Kalshi's daily high and low temperature markets, one row per bracket: the temperature range in °F, yes bid and ask, last price, implied probability, volume and open interest. Every city and day also gets the market's implied temperature and the most likely bracket, and settled markets carry the measured temperature. Leave Cities empty and click Start for all 24 cities; the 576 open brackets took 23 seconds on 11 October 2026. Rain, snow and other weather markets are not included. It costs $0.80 per 1,000 markets on the Free plan ($0.40 on Business), and the $5 of monthly credit in Apify's Free plan covers about 6,200 markets.
What data does it return?
| Field | Description |
|---|---|
ticker, eventTicker, seriesTicker | Kalshi tickers of the bracket (KXHIGHNY-26OCT12-B71.5), of the city and day (KXHIGHNY-26OCT12) and of the series (KXHIGHNY, the New York City daily high). |
city, measure, date | City as Kalshi names it (New York City, Washington DC), high or low, and the day the temperature is measured, YYYY-MM-DD. |
bracket, lowF, highF, strikeType | The bracket as Kalshi shows it (71° to 72°, 77° or above), its lowest and highest whole degree Fahrenheit (null on the open side), and between, greater or less. |
yesBid, yesAsk, lastPrice | Best bid and ask for Yes and the last trade, in dollars per contract that pays $1. |
probability | The implied probability from 0 to 1: the bid and ask midpoint, the last price when there is no quote, and 1 or 0 once settled. |
volume, volume24h, openInterest | Contracts traded in total and in the last 24 hours, and contracts held. Kalshi counts fractions of contracts, so 216.94 is possible. |
impliedTemperatureF | The market's forecast for the city and day: bracket midpoints weighted by their probabilities, such as 71.2. Open markets only. |
mostLikelyBracket | The bracket with the highest probability for that city and day. |
probabilitySum | Sum of the probabilities of all brackets of the day. Above 1 (1.03) the quotes carry a spread. |
status, result | open, closed (trading over, waiting for the reading) or settled, and yes or no once settled. |
settledTemperatureF | The measured temperature the market settled on, such as 69. Settled markets only. |
closesAt, expectedSettlementAt | When trading ends and when Kalshi expects to settle, ISO 8601 UTC. |
settlementSource, settlementSourceUrl | Whose reading settles the series, The Weather Company in October 2026, and its link. |
url, key, scrapedAt | The series page on kalshi.com, the row key kalshi:<ticker>, and when the row was read. |
How to scrape Kalshi weather markets
- Type Cities as Kalshi names them, such as
New York,Chicago,MiamiorLos Angeles, or leave the field empty for every city. Part of the name is enough, soNew Yorkfinds Kalshi'sNew York City. - Pick high, low or both in Daily high or low.
- In Markets, choose
openfor live prices of today and tomorrow,settledfor history with measured temperatures, orall, which also returns yesterday's markets that wait for their reading. - For history, set Date from and Date to as
YYYY-MM-DDor relative days (-30,yesterday). Settled markets without a start date cover about the last month. - Set Maximum markets high enough (2,000 by default) and click Start. The Output tab lists the brackets, newest day first, for export as CSV, Excel or JSON.
SUMMARYin the key-value store gives the markets per series and any failed request.
An API input for a month of settled history in four cities:
{"cities": ["New York", "Chicago", "Miami", "Austin"],"status": "settled","dateFrom": "-30","dateTo": "yesterday","maxItems": 5000}
Example output
The most likely bracket of the New York City high for 12 October, read on 11 October 2026. The six brackets of that day added up to a probability of 1.03.
{"key": "kalshi:KXHIGHNY-26OCT12-B71.5","ticker": "KXHIGHNY-26OCT12-B71.5","eventTicker": "KXHIGHNY-26OCT12","seriesTicker": "KXHIGHNY","city": "New York City","measure": "high","date": "2026-10-12","bracket": "71° to 72°","lowF": 71,"highF": 72,"strikeType": "between","yesBid": 0.47,"yesAsk": 0.48,"lastPrice": 0.49,"probability": 0.475,"volume": 216.94,"volume24h": 216.94,"openInterest": 177.43,"status": "open","result": null,"settledTemperatureF": null,"impliedTemperatureF": 71.2,"mostLikelyBracket": "71° to 72°","probabilitySum": 1.03,"closesAt": "2026-10-13T05:00:00.000Z","expectedSettlementAt": "2026-10-13T19:00:00.000Z","settlementSource": "The Weather Company","settlementSourceUrl": "https://weather.com/kalshi","url": "https://kalshi.com/markets/kxhighny","scrapedAt": "2026-10-11T16:37:54.566Z"}
How much does it cost to scrape Kalshi weather markets?
| Free plan | Starter | Scale | Business | |
|---|---|---|---|---|
| 1,000 markets | $0.80 | $0.64 | $0.52 | $0.40 |
You pay only for the events in the table. There is no start fee, and compute time and proxies are included.
A snapshot of all open brackets, 576 on 11 October 2026, costs less than $0.48 on the Free plan. The settled history of all 24 cities from 11 September to 10 October 2026 held 8,628 brackets, less than $7.20 on the Free plan and $3.60 on Business. Series without markets in your range and requests that fail are not charged.
Limits
- Kalshi lists 103 daily temperature series. In October 2026, 48 of them had markets: the high and the low for 24 US cities. The other series, including older tickers of the same cities, return nothing.
- Open markets cover today and tomorrow, with 6 brackets per city and day. A run with all cities makes about 150 requests to Kalshi.
- Settled history is read up to 10,000 brackets per series and run, which is more than four years of days.
- The actor reads market data only. It does not add weather forecasts or the code of the weather station, and probabilities are quoted as they are, without removing the spread.
- Every request waits at least 120 milliseconds after the previous one. A request that fails is tried 3 times, and a run fails when more than half of its requests do.
Kalshi API and run reliability
The actor reads Kalshi's public trade API, the documented interface Kalshi offers for market data, without a key, a login or a browser. A run therefore depends only on Kalshi answering. All 23 runs of this actor from 27 September to 11 October 2026 finished successfully, the longest in 28 seconds. If Kalshi does not return its list of weather series, the run fails at once with a message and costs nothing.
FAQ
Is it legal to scrape Kalshi?
The actor reads public market data from Kalshi's documented trade API, the same prices anyone sees on kalshi.com, without an account. Market data has no personal information. You are responsible for following Kalshi's terms in how you use it, especially for trading.
How is the implied temperature calculated?
For each city and day, the midpoint of every bracket is weighted by its probability, and open brackets count one degree beyond their limit: 77° or above counts as 78. The result is divided by the sum of probabilities, so a spread in the quotes does not shift it.
Can I build a backtest from this?
Yes. Settled markets give the measured temperature and the winning bracket for each day, with the last price and volume. They do not show how the odds moved before the close, so to keep the market's forecast for each day, run the actor on a schedule while markets are open and store the rows.
Related scrapers
Support
This actor is built and maintained by deriverge s.r.o., a software company based in the Czech Republic. If a run fails or a field you need is missing, please open an issue in the Issues tab or write to us at info@deriverge.com. We respond in English and Czech. Runs can be scheduled in Apify Console or started from the API tab, which has examples for Python, JavaScript and cURL and works with Make, Zapier, n8n and the Apify MCP server. If the actor saves you time, a short review helps other people find it.