Skip to main content

How We Aggregate Odds Across Kalshi, Polymarket & More

A look under the hood at how Evens normalizes and matches markets from different prediction market platforms into a unified view.

Every prediction market platform structures its data differently. Kalshi uses ticker-based series. Polymarket uses CLOB token pairs. Smarkets uses decimal odds with commission. Matching equivalent markets across these platforms is a non-trivial engineering challenge.

Template-Based Matching

At the core of our aggregation pipeline is a template matching system. We define patterns that describe how each provider names their markets — capturing structured elements like team names, player names, thresholds, and outcomes.

When new market data arrives from a provider, our pipeline:

  • Parses the raw title against known patterns
  • Extracts entity references (teams, players, competitions)
  • Matches to a canonical market definition
  • Normalizes prices to a consistent format

Entity Resolution

A team called "LA Lakers" on Kalshi might appear as "Los Angeles Lakers" on Polymarket and "L.A. Lakers" on Smarkets. Our entity resolution system maintains canonical records with known aliases, ensuring accurate cross-platform matching.

Continuous Sync

Provider data is synced on regular intervals, with priority given to active, high-volume markets. Each sync cycle fetches the latest prices, volumes, and market status — keeping your view current without overwhelming provider APIs.

The result: a single market page that shows you every provider's price for the same underlying question, updated in near real-time.

Related

— Premium Feature

Upgrade to Premium