Kalshi-Polymarket Arbitrage: Examples
Most apparent arbitrage between Kalshi and Polymarket evaporates once fees and slippage are applied. These scenarios show where edge survives and where it does not. The structure is the same in all: Yes and No ask prices from both venues, fees and slippage in basis points. Both pairings are checked, the cheaper one kept, and gross edge is one minus combined cost. Net edge subtracts fees and slippage; only positive net edge counts.
Worked Examples
See the inputs and outcome together
Each scenario keeps the starting point, the outcome, and the actual lesson in one place so the page reads like a decision notebook, not a data dump.
- 1
Clean arbitrage, no costs
Kalshi No at 0.46 and Polymarket Yes at 0.48 combine to 0.94, well under a dollar. No fees or slippage modeled, the idealized case.
Buy Kalshi No plus Polymarket Yes, gross and net edge 600 bps, capital required $940, expected P&L $60.
Kalshi Yes / No
0.55 / 0.46
Polymarket Yes / No
0.48 / 0.49
Fees / slippage
0 / 0 bps
Capital
$1,000
Combined cost of 0.94 leaves a 6 percent locked-in edge, $60 on $940 deployed. The tool automatically picks the cheaper pairing; the other side (Kalshi Yes 0.55 plus Polymarket No 0.49) sums above one and is rejected.
- 2
Same quotes, fees eat most of it
Identical prices, but now 300 bps of fees and 200 bps of slippage. This is what the trade looks like once real frictions apply.
Gross edge 600 bps, net edge 100 bps after costs, expected P&L $10.
Kalshi Yes / No
0.55 / 0.46
Polymarket Yes / No
0.48 / 0.49
Fees / slippage
300 / 200 bps
Capital
$1,000
Five hundred basis points of fees and slippage shrink the 600 bps gross edge to 100 bps net, cutting expected profit from $60 to $10. The gross edge is a mirage; only the net figure after frictions is tradeable, and it is now barely worth the execution risk.
- 3
No arbitrage on either side
Both venues price the contract near 0.51 to 0.52, so every Yes-plus-No pairing sums above a dollar. There is nothing to arbitrage.
Direction none, gross edge minus 300 bps, expected P&L minus $30.
Kalshi Yes / No
0.52 / 0.52
Polymarket Yes / No
0.51 / 0.51
Fees / slippage
0 / 0 bps
Capital
$1,000
The best available pairing still costs 1.03, a negative 300 bps edge, so the tool returns a direction of none. A negative gross edge means the two markets agree and there is no free money; forcing the trade would lock in a loss.
- 4
Small but real edge at scale
Kalshi No at 0.47 and Polymarket Yes at 0.49 combine to 0.96, a thinner 4 percent gross edge, with modest 100 bps fees and 50 bps slippage on $5,000.
Gross edge 400 bps, net edge 250 bps, capital required $4,800, expected P&L $125.
Kalshi Yes / No
0.55 / 0.47
Polymarket Yes / No
0.49 / 0.49
Fees / slippage
100 / 50 bps
Capital
$5,000
A 4 percent gross edge survives at 250 bps net because the frictions are small, and on $5,000 that is $125. The lesson is that thin edges only pay when fees and slippage are tightly controlled; the same trade at example 2's cost level would vanish.
Patterns
Try These Tools
Run the numbers next
Execution Simulator
Model realistic order fills — square-root market impact, linear temporary impact, latency jitter, partial fills, and queue position. See the real cost.
Forecast Scoring Sandbox
Paste a forecast stream (probability + outcome) and see Brier score with full decomposition, log loss, reliability diagram, and bootstrap confidence.
Sources & References
- Prediction Markets — Wolfers, J. and Zitzewitz, E., Journal of Economic Perspectives (2004)
- Kalshi Trading Fees — Kalshi (2026)
Related Content
Keep the topic connected
Maker-Taker
Maker-taker fee model: makers get a rebate, takers pay. Why the model exists, what it incentivizes, and how to size up real net cost.
Slippage
Slippage as the gap between expected and executed price: the components (spread, market impact, latency), and how to model each in a backtest.
Bid-Ask Spread
Bid-ask spread defined: quoted vs effective vs realized spread, why the touch isn't the cost you actually pay, and how to measure each.