Skip to main content
A cross-venue pair is a proven relation between a Kalshi market and a Polymarket market. This page covers how to list pairs, how to read one, exactly which games and economic releases are matched today, and why some markets that look identical are never paired. You need it when comparing prices across venues or building on equivalent pairs.

Three ways in

Events do the same for browsing: when both venues list the same event, GET /v1/events returns it once with a twin and both venues’ asks on each outcome. See Events and markets.

Reading a pair

Pairs are stated from the left market’s side:
Each pair carries evidence, the facts the match rests on, and both markets in full, with their strikes, quotes and liquidity fields. Both venues’ markets appear whatever their volume, so read liquidity before treating a pair as tradeable.

Sports: matched games

A cross-venue proof needs the same real-world quantity and the same settlement scope on both sides. For games, that means two full-game lines on the same match. What is matched: Winner (moneyline) markets, team totals, first-half and other period lines, and draws are not matched across venues; period series such as KXNFL1HTOTAL never enter the matcher. Moneyline markets are read only to learn each venue’s team order.

Leagues

Eighteen leagues are matched, each with its own alias table of team names: Soccer lines exclude extra time and penalties on both venues. An NHL line on Kalshi is refused unless its rules state the shootout convention; a Polymarket line is refused when its shootout or 90-minute wording does not fit its league.

When two lines are the same game

All of the following must hold:
  1. Same league, identified from the Kalshi series token and the Polymarket slug prefix.
  2. Same scheduled date in US Eastern time. Kalshi’s date comes from the event ticker and must agree with its rules text; Polymarket’s comes from the recorded game start, which must agree with its description. A reused slug with a stale date is refused.
  3. Same settlement scope, from the table above.
  4. Start times within 90 minutes of each other when both are known, so a doubleheader’s two games stay apart.
  5. Same teams, decided by team codes, by team names, or both. Codes are the letters in the Kalshi ticker against the Polymarket slug; names are resolved through the league’s alias table, which knows city, nickname and abbreviation forms (Kansas City, Chiefs and KC are one team; Athletics covers Oakland, Sacramento and Las Vegas). A name that could be two teams matches nothing, and when codes and names disagree on which team is which, the pair is refused.
  6. One candidate on each side. A game that could pair with two games on the other venue pairs with neither.
Every Kalshi and Polymarket line must also match its venue’s exact rules or title template with the line’s number spelled out; a market whose text does not fit is refused rather than read loosely.

Spreads and team order

Kalshi’s spread names the team whose margin is measured; Polymarket’s spread names a team and a handicap. When the two contracts name opposite teams, the Polymarket range is mirrored about zero before comparing: a Broncos margin of (1.5, ∞) is (-∞, -1.5) on Kansas City’s margin. The proof trail shows this as an orient_margin step with the result negated.

Economics: matched releases

Five economic series are matched across venues. Each pairs a Kalshi series with Polymarket markets whose question, slug, group title and description all fit one template and agree with each other: Both sides must name the same variable and period, the same settlement source and the same observation time: the Bureau of Labor Statistics release for the reference month, or the FOMC statement for that meeting. Headline and core, or monthly and annual, are different variables and never pair. Polymarket’s Fed markets round to 25 basis points; that rounding is folded into their ranges, so the option 4.0% covers upper bounds from 3.875 up to but not including 4.125. Kalshi’s economic markets are thresholds (more than 0.1%); Polymarket’s are exact values (0.2%) or one-sided buckets. So the relations you will see are mostly subset, superset, contradicts and overlaps rather than equivalent:
Every economic pair’s evidence ends with informational until a release guard exists. The venues settle a delayed or cancelled release by different rules, so leads on these relations are shown with limited_by set to informational and are never offered as executable.

Why Bitcoin and Ether are not paired

Both venues list price markets on Bitcoin and Ether, and both are read by the matcher. They are refused because the settlement sources differ: Kalshi settles on the CF Benchmarks real-time index averaged over the 60 seconds before the hour named in the ticker, while Polymarket settles on the close of the Binance BTC/USDT or ETH/USDT one-minute candle at noon Eastern. Different index, different minute: not the same quantity. GET /v1/status counts these under cross_venue_econ_settlement_source_differs.

What the matcher never does

  • It never pairs on a title. Two questions with the same wording and no matched game or release are unrelated.
  • It never pairs a market whose rules text or description does not fit the venue’s template exactly.
  • It never guesses between two candidates.
Any market can still be related to others on its own venue, and the proof for any pair can be read in full through the proof trail.