Election Odds API — Kalshi & Polymarket Live Probabilities
Pricing
from $1.75 / 1,000 markets
Election Odds API — Kalshi & Polymarket Live Probabilities
Live election odds from both prediction markets in one table: implied probability, price, 24h move, volume and close date for every political contract on Kalshi and Polymarket. Midterms, presidential races, party control, primaries and nominations, and national elections worldwide. No API key.
Pricing
from $1.75 / 1,000 markets
Rating
0.0
(0)
Developer
Matvey
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Election Odds API returns what the two big prediction markets currently price for every election on the board — Kalshi and Polymarket in one table, in one shape. Each contract comes back with the implied probability in per cent, the yes and no price, best bid and ask, the 24-hour move, volume, liquidity and the close date. No API key, no account, no browser.

Presidential races, midterms, party control of the House and Senate, primaries and nominations, governors and mayors, and elections outside the US — Brazil, Germany, the UK, wherever a market exists.
What is Election Odds API?
When people ask "what are the odds", they usually mean the number people are actually betting at, not a pundit's guess. Prediction markets publish exactly that, and this Actor turns it into data for newsrooms, dashboards, researchers and AI agents that get asked who is going to win.
Four modes: markets (one row per contract), events (one row per race with every candidate and their probability), search by keyword, and price history.
What makes it different
It is an election board, not a politics board. Both venues file plenty of non-election contracts under a political tag — Polymarket's Fed-rate markets carry a "Politics" tag, and a naive filter fills the table with interest rates. This Actor matches on what the contract actually asks, so the board is elections and nothing else. On the run this README was written from, zero of sixty rows were off-topic.
Both venues, one schema. Kalshi is the CFTC-regulated US exchange, Polymarket the global crypto-settled one. They word the same race differently and price it differently. The rows come back interleaved, so a capped run always shows both rather than whichever venue reports larger numbers.
A race in one row. The events mode collapses a race into a single row with every candidate sorted by probability, the favourite, and a ready-made summary sentence — the shape a chart or a paragraph actually needs.
What data does it return?
| Field | Example |
|---|---|
platform, marketId, slug | polymarket · 516729 · … |
question, eventTitle | Will the Democratic Party control the House after the 2026 Midterms? |
probability, yesPrice, noPrice | 87.5 (per cent) · 0.875 · 0.125 |
bestBid, bestAsk, spread, lastPrice | 0.87 · 0.88 · 0.01 · 0.875 |
priceChange24h | 0.02 — a move in price, so ±0.02 is two points of probability |
volume, volume24h, liquidity, openInterest | … |
status, openTime, closeTime, category, tags | open · ISO 8601 · Elections |
outcomes, rules, url | every side with its price · resolution text · link |
Events mode adds favourite, favouriteProbability, outcomeCount and a summary. History mode returns one row per price point.
How much does it cost?
| Event | Price |
|---|---|
| Market | $0.0025 |
| Event (a whole race) | $0.0012 |
| Price point | $0.0002 |
| Order book snapshot | $0.001 |
Error rows are never charged, and there is no charge for starting a run. Two public JSON APIs, no browser and no proxy.
| Job | Cost |
|---|---|
| 500 election contracts across both venues | $1.25 |
| Every race as one row (≈100 races) | $0.12 |
| A daily 200-contract snapshot for a month | $15.00 |
How to use it
- Choose 📋 What to get: markets, events, search or price history.
- Narrow with 🔍 Keyword —
midterm,senate,brazil, a candidate's name. - Set 💧 Minimum volume — both venues list thousands of near-empty contracts, and 1000 keeps the ones people actually trade.
- Sort by 24-hour volume, total volume, probability, biggest move or closing date.
- Click Start, then export as JSON, CSV or Excel, or read the dataset through the API.

⬇️ Input
{ "mode": "markets", "minVolume": 1000, "sortBy": "volume24h", "maxMarkets": 200 }
Every race with all candidates
{ "mode": "events", "minVolume": 5000, "maxMarkets": 60 }
One race by keyword
{ "mode": "search", "query": "midterm", "minVolume": 500 }
⬆️ Output
{"type": "market","platform": "polymarket","question": "Will the Democratic Party control the House after the 2026 Midterms?","category": "Elections","probability": 87.5,"yesPrice": 0.875,"noPrice": 0.125,"bestBid": 0.87,"bestAsk": 0.88,"priceChange24h": 0.02,"volume": 4120880.5,"volume24h": 218400.25,"liquidity": 96300.75,"status": "open","closeTime": "2026-11-04T05:00:00Z","url": "https://polymarket.com/event/...","scrapedAt": "2026-09-09T13:00:00.000Z"}
A venue that fails to answer arrives as a type: "error" row with the reason, never as a silently short list.
Use cases
Newsroom graphics
One row per race, updated as often as you schedule it, with the number readers recognise.
Election night dashboards
Sort by 24-hour move to see what repriced overnight, or by closing date for what resolves next.
Research
Pull price history across a campaign and study how the crowd's estimate moved against the news.
Alerts
Schedule the run and fire when a probability crosses a threshold you care about.
AI agents
An agent asked "who is favoured in the midterms" runs the events mode and reads favourite and favouriteProbability off one row.
🤖 For AI Agents & LLM Apps
Compact reference for agents calling this Actor through the Apify MCP server or the Apify API (lergassy/election-odds-api).
Minimal input:
{ "mode": "events", "query": "senate", "minVolume": 1000 }
Behaviors an agent should know:
probabilityis the field to quote, in per cent.yesPriceis the same number as a price between 0 and 1, because a contract pays $1 if the event happens.priceChange24his a change in price: 0.02 is two percentage points of probability.- Always pass
minVolume(1000 is a good floor) or thin contracts crowd out the real ones. - Kalshi and Polymarket word the same race differently and their prices need not agree. Say which venue a number came from, and read
rulesbefore treating two contracts as the same bet. - The board is already filtered to elections;
querynarrows it further. - Both APIs are public: no key, no account, no proxy.
❓ FAQ
Is this a forecast?
No. It is what people are paying right now, which is a market price rather than a model's prediction. Treat it as such.
Why do Kalshi and Polymarket disagree?
Different user bases, fees and resolution wording. The gap is real information, but check rules before assuming the two contracts settle the same way.
Which elections are covered?
Whatever the two venues list — US federal and state races, primaries and nominations, and national elections elsewhere. Run it and see; the board changes weekly.
How fresh are the numbers?
Live at the moment of the run. Schedule the Actor for a time series of your own.
Can I use it with the Apify API or an MCP server?
Yes. It runs from the API and the official clients, and AI agents reach it through the Apify MCP server without extra setup.
Your feedback
Missing a race or a field? Open an issue on the Issues tab — every one gets answered.
You might also like
| Actor | What it does |
|---|---|
| Prediction Markets API | The whole board, not only elections |
| Kalshi Scraper & API | Every Kalshi market on its own |
| Polymarket Scraper & API | The same for Polymarket |
| Kalshi Weather Markets | Temperature brackets with the forecast beside them |
Also known as
People look for this Actor as an election odds API, prediction market election data, midterm odds, presidential election odds, Kalshi election markets and Polymarket election odds.