Signals
Cross-Platform Spreads
Spread endpoints are the fastest way to find price gaps between Kalshi and Polymarket.
Real response from production APICross-platform spread example
Find live Kalshi/Polymarket price gaps
This request returns real data captured from production. Prices and spreads change over time.
Request
curl 'https://api.thepredictionmarkets.com/api/v2/spreads/top?limit=5&window=24' \
-H 'X-API-Key: YOUR_TPM_API_KEY'Response200 OK
{
"data": [
{
"event_slug": "top-artist-on-spotify-us-in-2026",
"event_title": "Top Artist on Spotify U.S. in 2026?",
"outcome_title": "Drake",
"platform_a": "polymarket",
"platform_b": "kalshi",
"price_a": 0.1055,
"price_b": 0.79,
"spread_bps": 6845,
"confidence": 0.628,
"is_stale": false,
"updated_at": "2026-04-22T02:30:53.049830",
"platform_a_url": "https://polymarket.com/event/top-spotify-artist-2026",
"platform_b_url": "https://kalshi.com/markets/kxtopartistusa",
"matching_strategy": "normalized_title_fallback",
"match_quality": "auto_medium"
},
{
"event_slug": "which-bills-will-become-law-in-2026-1",
"event_title": "Which bills will become law in 2026?",
"outcome_title": "Credit-card routing competition",
"platform_a": "kalshi",
"platform_b": "polymarket",
"price_a": 0.08,
"price_b": 0.44,
"spread_bps": 3600,
"confidence": 0.628,
"is_stale": false,
"updated_at": "2026-04-22T02:30:53.049830",
"platform_a_url": "https://kalshi.com/markets/kxbills",
"platform_b_url": "https://polymarket.com/event/which-bills-will-become-law-in-2026",
"matching_strategy": "normalized_title_fallback",
"match_quality": "auto_medium"
}
],
"count": 2
}Get top cross-platform spreads
Returns the strongest current Kalshi/Polymarket spread opportunities ranked by confidence. Use this for dashboards and alerts.
Live GET Request
Try it
Live Response
Click Try It to run this GET request against the API.Request
curl 'https://api.thepredictionmarkets.com/api/v2/spreads/top?limit=5&window=24' \
-H 'X-API-Key: YOUR_TPM_API_KEY'Response
{
"data": [
{
"event_slug": "top-artist-on-spotify-us-in-2026",
"event_title": "Top Artist on Spotify U.S. in 2026?",
"outcome_title": "Drake",
"platform_a": "polymarket",
"platform_b": "kalshi",
"price_a": 0.1055,
"price_b": 0.79,
"spread": 0.6845,
"spread_bps": 6845,
"confidence": 0.628,
"is_stale": false,
"updated_at": "2026-04-22T02:30:53.049830",
"platform_a_url": "https://polymarket.com/event/top-spotify-artist-2026",
"platform_b_url": "https://kalshi.com/markets/kxtopartistusa",
"matching_strategy": "normalized_title_fallback",
"match_quality": "auto_medium"
}
],
"count": 1
}Query Parameters
| Name | Type | Required | Default | Example | Description |
|---|---|---|---|---|---|
| limit | integer | No | 20 | 5 | Number of opportunities to return. |
| window | integer | No | 24 | 24 | Freshness window in hours used for top-spread ranking. |
Response Fields
| Field | Type | Example | Description |
|---|---|---|---|
| event_slug | string | top-artist-on-spotify-us-in-2026 | TPM event slug for event detail and history routes. |
| event_title | string | Top Artist on Spotify U.S. in 2026? | Market or event title. |
| outcome_title | string | Drake | Outcome being compared across venues. |
| platform_a | string | polymarket | Platform slug with the lower price. |
| platform_b | string | kalshi | Platform slug with the higher price. |
| price_a | number | 0.1055 | Normalized probability on platform_a (0 to 1). |
| price_b | number | 0.79 | Normalized probability on platform_b (0 to 1). |
| spread | number | 0.6845 | Absolute price difference as a decimal. |
| spread_bps | number | 6845 | Price difference in basis points (spread × 10,000). |
| confidence | number | 0.628 | TPM composite score (0–1) factoring spread size, volume, liquidity, and freshness. |
| is_stale | boolean | false | True when one or both platform quotes exceed the stale cutoff. |
| updated_at | string | 2026-04-22T02:30:53.049830 | ISO timestamp of the most recent platform quote. |
| platform_a_url | string | - | Direct link to the market page on platform_a. |
| platform_b_url | string | - | Direct link to the market page on platform_b. |
| matching_strategy | string | - | How the cross-platform match was established: auto_canonical, manual_override, normalized_title_fallback, or event_key. |
| match_quality | string | - | Match confidence tier: manual, auto_high, or auto_medium. |
Build with TPM
Get your API key
Start with Kalshi and Polymarket market data, then add unified spreads, signals, alerts, and watchlists as your workflow grows.