# Polymarket Market Stats — Odds, Volume & Liquidity by Topic (`jpmarketdata/polymarket-market-stats`) Actor

Get instant prediction-market statistics for any topic: odds snapshot, volume & liquidity stats, top markets. One call answers: what does Polymarket think about X?

- **URL**: https://apify.com/jpmarketdata/polymarket-market-stats.md
- **Developed by:** [h ichi](https://apify.com/jpmarketdata) (community)
- **Categories:** Other
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $20.00 / 1,000 topic market analyses

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## Polymarket Market Stats — Odds, Volume & Liquidity by Topic

**One call answers: "What does the prediction market actually think about X?"**

Instead of dumping raw market listings on you, this Actor searches Polymarket for your topics and returns a ready-to-use statistical snapshot — total and per-market volume, liquidity, how one-sided the odds are, time to resolution, and the top markets — plus every individual market if you want it.

**Try it free in 30 seconds:** hit *Start* with the prefilled example — one topic costs a flat **$0.02**, covered many times over by the **$5 free usage credit** every Apify account gets each month.

### Why market stats?

Polymarket is the world's largest prediction market: real people betting real money on elections, crypto, sports, AI milestones, and world events. Its odds are widely cited as a live probability signal — but the raw API returns hundreds of markets per topic, in inconsistent formats. This Actor turns one topic keyword into structured market intelligence:

- **Track a narrative** — total volume and liquidity behind a topic, in one number
- **Get the odds snapshot** — leading-outcome probabilities across all matched markets
- **Feed your AI agent, model, or dashboard** — clean JSON, USD-native
- **Monitor resolution timing** — median days until the matched markets resolve

### Pricing — know your cost before you run

No subscription, no monthly rental — you pay per call:

| Event | Price |
|---|---|
| Market summary (one per topic) | **$0.02** |
| Individual market record (optional, off by default) | $0.002 each |

- **A default run costs a flat $0.02 per topic** — the summary is the product. 10 topics = $0.20.
- Want every matched market too? Turn on *Include individual markets*: e.g. 25 markets add $0.05.
- Topics with no matched markets are never charged.
- Apify's free plan includes **$5 of usage credit every month** — about **250 topic checks** at no cost.

### Input example

```json
{
    "topics": ["bitcoin", "fed rate cut"],
    "activeOnly": true,
    "maxMarketsPerTopic": 25
}
```

### Output

One `market_summary` record per topic:

```json
{
    "type": "market_summary",
    "topic": "bitcoin",
    "eventsFound": 14,
    "sampledMarkets": 25,
    "totalVolumeUsd": 48210344,
    "totalLiquidityUsd": 9153200,
    "volumeStatsUsd": { "min": 12040, "p25": 88113, "median": 401220, "p75": 1608114, "max": 21042001, "average": 1928413 },
    "leadingOutcomePctStats": { "min": 52, "p25": 71, "median": 88, "p75": 96, "max": 99, "average": 83 },
    "medianDaysToResolution": 9,
    "topMarketsByVolume": [
        { "question": "Bitcoin above $150k on December 31?", "leadingOutcomePct": 71.5, "volumeUsd": 21042001, "url": "https://polymarket.com/event/..." }
    ],
    "checkedAt": "2026-07-03T12:00:00+00:00"
}
```

Plus (optional) every sampled market with question, outcomes, probabilities, bid/ask, volume, liquidity, end date, and a direct polymarket.com URL.

### Use with AI agents

Works out of the box with the [Apify MCP server](https://mcp.apify.com), so Claude, ChatGPT, and other MCP-enabled agents can check live prediction-market sentiment autonomously — for example inside a research, trading-signal, or news-monitoring workflow.

### Fair use & data

- Uses only Polymarket's **official public API** (Gamma) — no login, no personal data
- Requests are throttled; the load on Polymarket is negligible
- Not affiliated with Polymarket. Odds are market prices, not guaranteed probabilities; do your own research

### Roadmap

Kalshi comparison, historical odds tracking, and topic-level alerting. Feedback via issues is very welcome — tell me what your workflow needs.

# Actor input Schema

## `topics` (type: `array`):

One or more search topics (e.g. 'bitcoin', 'fed rate', 'US election'). Each topic gets its own market\_summary.

## `activeOnly` (type: `boolean`):

If enabled (default), only open markets are analyzed. Disable to include resolved/closed markets in the search results.

## `maxMarketsPerTopic` (type: `integer`):

How many markets to sample per topic, highest volume first. More markets = broader statistics. Affects cost only when 'Include individual markets' is enabled (+$0.002 per market).

## `includeIndividualMarkets` (type: `boolean`):

Off by default: a run costs a flat $0.02 per topic (market summary only). Enable to also get every sampled market (question, outcomes, probabilities, volume, liquidity, end date, URL) at +$0.002 per market.

## Actor input object example

```json
{
  "topics": [
    "bitcoin"
  ],
  "activeOnly": true,
  "maxMarketsPerTopic": 25,
  "includeIndividualMarkets": false
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "topics": [
        "bitcoin"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("jpmarketdata/polymarket-market-stats").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "topics": ["bitcoin"] }

# Run the Actor and wait for it to finish
run = client.actor("jpmarketdata/polymarket-market-stats").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "topics": [
    "bitcoin"
  ]
}' |
apify call jpmarketdata/polymarket-market-stats --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=jpmarketdata/polymarket-market-stats",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/Nr39aAmv1hzwaaWuV/builds/HxUQYK5hN0X5MOQw1/openapi.json
