Best prediction market API for traders

A bot that trades or watches Kalshi and Polymarket needs order book depth and rate limits it can plan around. This page compares eight sources on order book depth, WebSocket access, latency claims, rate limits, price and whether the vendor places orders. It also lists vendors that have closed. Every fact comes from the vendor's own documentation, read on 3 November.

Provider shortlist

Only vendor documentation and terms were used, and no latency was measured here. Vendor claims are marked as claims. Prices are as listed on the read date. Narwhal API is owned and operated by Nusantara Ventures, LLC.

Narwhal API

Odds on economic data, central bank, metals and energy topics from Kalshi and Polymarket, under one key.

Explore Narwhal product

Predexon

Real-time Polymarket depth, trades and lifecycle events over one WebSocket connection.

Kalshi API

Placing and managing Kalshi orders, with REST order books and streams from the venue.

Read detailed comparison

Polymarket API

Placing Polymarket orders and reading its order book over a public market channel.

Read detailed comparison

FinFeedAPI

Replaying raw order book events across nine exchanges through REST, JSON-RPC or MCP.

Tatum

Polled order book snapshots for Polymarket and Kalshi, from 1 to 100 levels per side.

Odds-API.io

Sports events on Kalshi and Polymarket next to sportsbook prices in one schema.

Read detailed comparison

Oddpool

Current subscribers who want cross-venue book, trade and probability channels on one socket.

Read detailed comparison

Compare the options

Best fit is not feature parity. Check the evidence and limitation together.

ProviderBest forEvidence checkedImportant limitation
Narwhal APIOdds on economic data, central bank, metals and energy topics from Kalshi and Polymarket, under one key.Tools cover topics, events, binary and scalar markets, timing and policy paths, with histories. Basic allows 120 requests a minute and Pro 500.Free returns the previous day's close, updated at 00:00 UTC. Other Kalshi and Polymarket markets are outside its topic groups, and it takes no orders.
PredexonReal-time Polymarket depth, trades and lifecycle events over one WebSocket connection.The orderbook channel streams Polymarket L2. Dev costs $49 a month for 100 subscribed items; Pro costs $249 for 50,000. Free gets a 403.Real-time covers Polymarket only. Its Trading API has been withdrawal-only since 10 July, so order placement returns 403 on every venue.
Kalshi APIPlacing and managing Kalshi orders, with REST order books and streams from the venue.Basic reads 200 tokens a second at 10 per call, or 20 requests a second. Up to 200 WebSocket connections run at the lower tiers.WebSocket needs an authenticated session even for public channels, and use requires a Kalshi member account. Kalshi can cut limits without notice.
Polymarket APIPlacing Polymarket orders and reading its order book over a public market channel.The CLOB market channel needs no login. /book allows 1,500 requests per 10 seconds, and over-limit calls are throttled rather than rejected.Polymarket only. Order placement is restricted in listed countries, including the US and UK; Indonesia appears on neither list.
FinFeedAPIReplaying raw order book events across nine exchanges through REST, JSON-RPC or MCP.Historical books are add, update and delete events in flat files by day or time range. Pay-as-you-go costs $1 a credit; 64 committed credits cost $64 a month.No WebSocket is listed for prediction markets, so live work means polling. The pages give no per-second limit for this product, and it is read-only.
TatumPolled order book snapshots for Polymarket and Kalshi, from 1 to 100 levels per side.Most reads cost 100 credits. The free plan has 100,000 credits at 3 requests a second, which is about 1,000 calls. Paid plans allow 200 a second.No streaming is documented; Tatum's blog says to poll on a schedule. Its sub-second latency claim is the vendor's own.
Odds-API.ioSports events on Kalshi and Polymarket next to sportsbook prices in one schema.It returns best bid, best ask and USD size at that price. Solo costs $65 a month, and every plan allows 5,000 requests an hour.Top of book only, never full depth, and sports events only. The WebSocket add-on costs twice the plan price; new free keys are paused.
OddpoolCurrent subscribers who want cross-venue book, trade and probability channels on one socket.Channels are dist, book, trade and snapshot. Free allows one connection and two events; Pro allows three connections and ten events.Oddpool is no longer accepting new subscriptions, and Pro and Premium show as not available. Existing and free accounts continue.

Choose by requirement

Order book depth

Predexon streams Polymarket L2 in real time. Kalshi and Polymarket serve their own books. Tatum polls from 1 to 100 levels per side, with quoted liquidity within 1% and 5% of the mid price. FinFeedAPI keeps a snapshot plus historical events. Odds-API.io stops at the best bid and ask. Narwhal's prediction tools return odds by topic and event, so a bot that reads depth should take it from Predexon or a venue.

Which sources stream

Predexon, Polymarket and Kalshi stream. Predexon needs a paid plan and covers Polymarket only. Polymarket's market channel is public, with a client ping every 10 seconds. Kalshi's WebSocket needs a signed-in session even for public channels. Oddpool streams for existing users. FinFeedAPI and Tatum list no prediction WebSocket, and Odds-API.io does not say whether its add-on carries Kalshi and Polymarket prices. Pick by venue first: a Kalshi bot needs a Kalshi session either way, while a Polymarket bot can start on the public channel before paying anyone.

Latency claims

Treat every number as the vendor's own. Predexon says its pending-trades feed arrives up to 5 seconds before Polymarket's RTDS, taking trades from the Polygon mempool, and its docs say 3 to 5. Tatum's blog says sub-second. FinFeedAPI quotes about 20 ms for public endpoints in a generic FAQ, not for prediction markets. Predexon Enterprise adds a dedicated node for lower WebSocket latency. Predexon drops events once a connection's buffer reaches 1 MB and closes it at 4 MB, so a slow consumer loses data.

Rate limits you can plan around

Kalshi Basic reads 20 requests a second and can be cut at any time. Polymarket allows 15,000 requests per 10 seconds in general and throttles rather than rejects. Predexon Free gives 1 request a second, Dev 20 and Pro 100. Tatum Free gives 3 a second and paid plans 200. Narwhal allows 30, 120 and 500 a minute on Free, Basic and Pro, and only successful calls count. Predexon's quota counts only premium requests: market lists, order book history and candlesticks are free on every plan.

Compare providers

Who places the order

Only the venues take orders. Kalshi and Polymarket both offer full order APIs. Predexon's Trading API went withdrawal-only on 10 July. Odds-API.io tells you to use bookmaker IDs to execute through the venue APIs, and it does not trade. FinFeedAPI and Tatum are data only, and Oddpool lists no execution API. Narwhal serves data, and none of its prediction tools places an order. Polymarket signs trading requests with a wallet signature and HMAC headers; Kalshi uses Ed25519 or RSA keys with signed request headers.

Fees and access

Trading fees belong to the venues, and this page quotes none. Polymarket's builder program sets fees through builder codes. Check each schedule before you size a strategy. Kalshi requires a member account that follows its rulebook. Polymarket restricts order placement by country and offers a geoblock endpoint to check. Its close-only list includes the US, UK, Germany, France, Australia, Singapore, Thailand and Taiwan. Read access in restricted regions is not stated, so test from the server that will run the bot.

Replay data for a backtest

Predexon serves Polymarket order book snapshots from 1 January through a free REST endpoint, and Kalshi snapshots from 7 January. Oddpool holds Kalshi books from 19 March and Polymarket from 20 March, but no longer accepts new subscribers. FinFeedAPI sells daily flat files of raw book events. Predexon's sub-cent Kalshi snapshots are throttled to one per 0.5 seconds, which limits what they show about fast moves. Kalshi offers no historical order book endpoint. Buyers who need years of ticks should read the research page.

Compare providers

Where Narwhal fits a trading stack

Use Narwhal for the macro layer next to your execution code. It normalises 16 economic data topics and 21 central bank topics, plus metals and energy, from Kalshi and Polymarket into one schema. Each topic lists the venues that quote it and the next event ID, so a scheduler can wake your bot before a release. One key serves REST and an 80-tool MCP server. Free includes 5,000 requests a month, and Basic and Pro cost $59 and $149 for 100,000 and 1,000,000. Basic and Pro include a WebSocket stream of prediction events.

Vendors that stopped selling

Dome ended on 28 April after Polymarket acquired it, so it cannot be a migration target. Oddpool closed to new subscriptions. Predexon withdrew order placement on 10 July and switched off its cross-venue matching endpoints on 20 July. Odds-API.io has paused new free keys. Confirm that a vendor still accepts sign-ups and still offers the feature you need before you write code against it. Kalshi can change limits without notice and sends no Retry-After header on a 429, so build your own back-off.

Each detailed provider page lists the first-party documentation used, its evidence boundaries, and its review date. Reviewed:

Sources and review date

Get these figures through the API

5,000 free requests every month. No card needed.