Our methodology
How we calculate what you see
Every probability on Predictboard is sourced directly from exchange APIs, normalised to a consistent format, and refreshed every two minutes. No editorialising, no interpolation, no invented numbers. Here is exactly how that pipeline works.
A
Fetch & normalise
Every 2 minutes, we pull all active markets from each connected exchange via their official API. Polymarket returns prices as decimals (0.68); Kalshi returns integers or decimals. We normalise everything to a consistent percentage. Always rounded to 2 decimal places.
B
Match & aggregate
When a market appears on multiple exchanges, we classify the match as Verified (same underlying contract) or Similar (same event, different structure). Verified matches produce a volume-weighted average probability. Similar matches are displayed side by side, not averaged.
C
Display & flag
Cross-exchange spread is calculated as the absolute difference between platform probabilities. Divergences above threshold are flagged on Verified pairs and surfaced on Markets pages for traders to investigate. We do not infer cause or recommend action.
Data sources: official exchange APIs only · Refresh cycle: every 2 minutes · No third-party data providers, no scraping, no interpolation.