Polymarket Scraper — Live Odds, Prices & Volume
Pricing
$5.00 / 1,000 market returneds
Polymarket Scraper — Live Odds, Prices & Volume
Get Polymarket prediction market prices, bid, ask, spread and implied probability. Track odds over time, screen by 24h volume and liquidity, search markets by topic, or pull resolved outcomes for backtesting. No API key. Pay per market returned.
Pricing
$5.00 / 1,000 market returneds
Rating
0.0
(0)
Developer
Ikko Eltociear Ashimine
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Share
Pull every Polymarket prediction market as clean, typed rows: each outcome with its price and implied probability, the live best bid / best ask / spread, 1h / 24h / 1w price moves, volume, liquidity, resolution date and the parent event.
No API key. No browser. No proxy. Straight against Polymarket's public Gamma API, so runs are fast and cheap and there is no anti-bot layer to break.
You pay per market returned — $0.005. Duplicates, markets your filters reject, and markets that fail to parse are not charged.
What it does, in the words you'd ask for it
- Get Polymarket market prices, bid, ask and spread for every open market.
- Get the implied probability of a prediction market — each outcome's price converted to a percentage, ready to compare against your own model.
- Track prediction market odds over time — put a slug watchlist on a schedule and each run appends a snapshot.
- Find prediction markets by topic — free-text search over live events (bitcoin, fed rate, election, ceasefire).
- Screen for liquid prediction markets — filter on 24h volume, order-book liquidity and spread, so you only see markets you could actually trade.
- Get resolved prediction market outcomes for backtesting — settled markets with their final prices, for calibration against known results.
- Get betting odds for an event — the price of each outcome is the odds, already normalised to a probability.
- Get election odds data — political markets are one of Polymarket's largest categories; search by candidate, race or date.
- Get crypto prediction market data — price-threshold markets on BTC, ETH and others, with the same quotes and volume as every other market.
- Pull event probability data for a forecasting model — implied probability per outcome, plus 1h/24h/1w moves so you can see which way it is drifting.
- Export a resolved market outcomes dataset — turn on closed markets and take the whole settled history as training or calibration data.
What you can do with it
Track a watchlist on a schedule. Put your market slugs in Exact market slugs, set the Actor to run every 15 minutes, and you get a time series of bid/ask and volume for exactly the markets you care about — nothing else, nothing extra to pay for.
slugs: ["will-the-fed-decrease-interest-rates-by-25-bps-after-the-september-2026-meeting"]
Find today's movers. Sort by 24h price change over the whole open board to see what repriced while you were asleep.
sortBy: "priceChange24h", maxMarkets: 100, minVolume24hUsd: 5000
Screen for tradeable markets only. Most of the board is illiquid. Filter on liquidity and spread so you only see markets you could actually get size into.
minLiquidityUsd: 25000, minSpread: 0.02
Backtest. Turn on Include closed markets to get settled markets with their final prices, for calibration work against known outcomes.
Research one topic. Free-text Search covers live events: bitcoin, fed rate,
election, ceasefire.
Sample output
{"question": "Will the price of Bitcoin be above $68,000 on August 7?","slug": "will-the-price-of-bitcoin-be-above-68000-on-august-7","url": "https://polymarket.com/event/bitcoin-above-68000-august-7","outcomes": [{ "name": "Yes", "price": 0.135, "implied_probability_pct": 13.5 },{ "name": "No", "price": 0.865, "implied_probability_pct": 86.5 }],"best_bid": 0.13,"best_ask": 0.14,"mid_price": 0.135,"spread": 0.01,"last_trade_price": 0.14,"price_change_1h": -0.004,"price_change_24h": 0.021,"price_change_1w": -0.083,"volume_usd": 4821330.4,"volume_24h_usd": 193660.2,"volume_1w_usd": 1044201.8,"liquidity_usd": 88214.0,"start_date": "2026-08-01T00:00:00Z","end_date": "2026-08-07T23:59:59Z","active": true,"closed": false,"accepting_orders": true,"event_title": "Bitcoin price on August 7","event_slug": "bitcoin-above-68000-august-7","tags": ["Crypto", "Bitcoin"],"resolution_source": "","condition_id": "0x…","market_id": "512345"}
Input reference
| Field | Type | Default | What it does |
|---|---|---|---|
query | string | — | Free-text search over live events. Ignored if slugs is set. |
slugs | string[] | — | Exact market lookup. Takes priority over query. |
maxMarkets | integer | 100 | Hard cap on rows — and therefore your spending cap. |
sortBy | enum | volume24hr | volume24hr, volume, liquidity, endDate, priceChange24h. Board mode only. |
ascending | boolean | false | Reverse the sort. Pair with endDate for "resolving soonest". |
minVolume24hUsd | integer | 0 | Drop illiquid markets. |
minLiquidityUsd | integer | 0 | Order-book depth floor. |
minSpread | number | 0 | Keep only markets at least this wide. |
includeClosed | boolean | false | Include settled markets, for backtesting. |
tagId | string | — | Restrict to one Polymarket tag by numeric id. |
Things this Actor is careful about
These are the details that decide whether prices data is usable or quietly wrong.
- Outcome prices are paired positionally, or not at all. Gamma sends
outcomesandoutcomePricesas two separate JSON-encoded strings. If their lengths ever disagree, the mapping is unknowable, sooutcomescomes back empty rather than guessed — a swapped Yes/No price is the one error that still looks completely plausible downstream. - No order book means
null, not0. Markets with no live quotes getbest_bid: null,spread: null,mid_price: null. A fabricated0.0spread would read as a perfectly liquid market. - You are never charged twice for one market. Rows are de-duplicated by market id before anything is billed.
- Pagination is real. Gamma silently caps every response at 100 rows regardless of the
limit requested; this Actor pages past that, so
maxMarkets: 2000returns 2000. - Filters are honest. A high
minVolume24hUsdcan legitimately return zero rows — most of the board trades under $1,000 a day. The log says so instead of failing quietly.
Limits
- Prices are the Gamma API's published quotes, refreshed per run. This is not a websocket feed — for sub-second data use Polymarket's CLOB stream directly.
- Free-text
querysearches live events only; useincludeClosedwith board mode to reach settled markets. tagsare only populated for markets whose parent event carries them.