ProbBrain
⚖ Tool
Live

Polymarket × Kalshi Arbitrage Scanner

Cross-platform mispricings with honest weakest-link summaries. Tier 1 (true risk-free arbs) is rare — that's correct. Numbers are gross, with a conservative net estimate after fees, depth, and capital cost.

Tier 1 = risk-free arb · Tier 2 = inconsistency / fee-thin · Tier 3 = signal only· weakest_link_summary on every card — if we can't write one, it's not Tier 1· fees model: Poly dynamic taker + Kalshi 0.07·C·P·(1−P) + 1–3% spread + capital cost· not financial advice · scanner runs on a schedule· Tier 1 = risk-free arb · Tier 2 = inconsistency / fee-thin · Tier 3 = signal only· weakest_link_summary on every card — if we can't write one, it's not Tier 1· fees model: Poly dynamic taker + Kalshi 0.07·C·P·(1−P) + 1–3% spread + capital cost· not financial advice · scanner runs on a schedule·
Last scan
Markets scanned
Errors
none
Bankroll (USD) $1,000
$100$50,000
Tier 1 — risk-free
0
deep, fresh, fees survive
Tier 2 — inconsistency
0
edge thin after fees / depth
Tier 3 — signal
0
stale or low-volume
Underlying:
Platform:
Tier 1 — Actionable
Tier 2 — Inconsistencies
Tier 3 — Signals

Tier 1 vs Tier 2 vs Tier 3 — what each gate means

Tier 1 is the tightest band. To clear it, an opportunity has to be cross-platform (Polymarket × Kalshi), survive fees and depth, have fresh quotes on both legs, and pass our weakest-link check. Net edge has to be positive after the conservative fee model — not gross. We hit Tier 1 rarely. That's the right shape: if the gate were loose, Tier 1 would be noise.

Tier 2 covers everything that is structurally a mispricing but doesn't survive Tier 1's gates — usually because spread eats the edge, depth is thin, or one leg has stale quotes. Worth watching, not worth firing.

Tier 3 surfaces single-platform inconsistencies (Polymarket sum violations, Kalshi monotonicity breaks) and low-volume or stale signals. Useful as a market-quality canary even if you don't trade them.

How fees and net edge are modeled

Gross edge is what a naive arbitrage calculator would show. Net edge is what's left after you actually trade. We model:

Tier 1 requires net edge to clear a positive threshold after all four. Tier 2 includes opportunities where gross edge looks fine but net edge is fee-tight. The gross/net split is shown on every card so you can see the haircut, not just the headline number. Once you've picked a Tier 1 to hit, size the position with the Polymarket Kelly calculator — it pulls the live opportunity data and applies credible-bound shrinkage.

Detection types — sum violation, monotonicity, cross-platform

The scanner runs six detection passes against canonical-key matched events between Polymarket and Kalshi.

Every detection is logged with the underlying event, leg prices, and the canonical key used to match. The full methodology page covers the gate thresholds, fee-model derivation, and how canonical keys are constructed for cross-platform matching.

Weakest-link transparency — and why it's the rule

Every Tier 1 card carries a weakest_link_summary — the single weakest input to the trade. It might be "Polymarket leg has a 12-second stale quote", "Kalshi depth caps you at $340 net edge", or "implied YES on Poly equals 1 − NO sum but resolution language differs by 2 days".

If the scanner can't write a weakest-link summary, the opportunity does not promote to Tier 1. That's the rule, not a guideline. The weakest link is the actual edge you're betting on — surfacing it lets you decide if you're comfortable owning it. We'd rather show fewer Tier 1s than show a confident card whose weakest link was a stale quote we hid.