// EXECUTION & FEES · PILLAR GUIDE
Execution quality in prediction markets: fees, slippage, and routing
2026-07-16 · Mithril
Most prediction-market traders obsess over one number — the displayed price — and ignore three others that determine what a position actually costs. If you buy YES at a displayed 42¢ on Kalshi, you did not pay 42¢. You paid 42¢ plus a taker fee, plus whatever price impact your size caused, and you crossed half a spread to get there. On any individual trade these look like rounding errors. Across hundreds of fills they are frequently the difference between a profitable strategy and a losing one.
This is the pillar guide to execution quality in prediction markets: what the total cost of a fill is made of, how the two live US-relevant venues — Kalshi and Polymarket — charge you differently, and what routing, order working, and measurement can do about it.
The total cost of a fill
The honest accounting identity is:
total cost = displayed price
+ explicit fees (exchange fees, gas)
+ spread cost (distance from mid to your side)
+ market impact (levels you swept beyond the touch)
Each term behaves differently, and each is minimized by a different tactic.
1. Explicit fees
Kalshi charges a formula-based taker fee — roughly
0.07 × contracts × price × (1 − price) with price in dollars, rounded up
to the next cent — while resting orders that add liquidity generally pay no
trading fee on most markets. The formula peaks at 50¢ and shrinks toward the
tails, which has real strategic consequences: the same dollar of edge is
taxed hardest exactly where most trading happens. The full treatment, with
worked examples, is in Kalshi fees explained.
Polymarket charges no exchange trading fee on most markets. That is not the same as free execution: you still pay the spread, price impact in thin books, and (depending on how you transact) Polygon gas and USDC bridging costs. Details in Polymarket fees and gas explained.
2. Spread
Every marketable order crosses the bid–ask spread. In a liquid equity that might be a basis point; in a prediction market it is routinely 1–3¢ on a contract worth at most $1 — often the single largest cost component. Posting passively instead of taking captures the spread rather than paying it, at the cost of fill uncertainty and adverse selection. The maker–taker distinction matters doubly on Kalshi, where the fee treatment differs too.
3. Market impact
Prediction-market books are thin. The displayed best offer might show a few hundred contracts; a 2,000-contract market order walks the order book and fills each successive level at a worse price. That gap between the price you saw and the average price you got is slippage, and in thin markets it dwarfs fees. How to measure and avoid it is the subject of Slippage in thin prediction markets.
Why cross-venue comparison is the interesting problem
Kalshi and Polymarket list overlapping events at prices that rarely agree to the cent. Naively you buy wherever the displayed price is lower. But the two venues price and charge differently:
- Kalshi quotes in cents (1–99¢) and adds a taker fee on top.
- Polymarket quotes in decimal probabilities (0.01–0.99) with no exchange trading fee on most markets, but its books for the same event can be thinner or wider.
So a displayed 41¢ on Kalshi can be net more expensive than a displayed 0.42 on Polymarket once the fee lands — and the crossover point moves with price and size, because Kalshi's fee is largest near 50¢. Side-by-side worked examples are in Kalshi vs Polymarket fees: the total cost of a fill, and you can run your own numbers in the arbitrage calculator.
Doing that comparison on every order, automatically, is what smart order routing means in this asset class: compute the net price after fees at each venue for your actual size, and send the order — or split it — accordingly.
The execution toolkit
Roughly in order of impact for a typical taker:
| Tactic | Attacks | Costs you |
|---|---|---|
| Route to the net-cheapest venue | Fees + spread | Integration work (two APIs) |
| Slice large orders over time | Market impact | Time risk; price can move away |
| Post passively at or inside the touch | Spread + (on Kalshi) taker fee | Fill uncertainty, adverse selection |
| Set slippage caps / limit prices | Tail-risk fills | Occasional missed trades |
| Prefer tails over 50¢ when expressing the same view | Kalshi's fee curve | Not always possible |
None of these is exotic — they are the standard equities execution playbook scaled down to books measured in hundreds of contracts. The difference is that in prediction markets almost nobody applies them, which is exactly why they are worth applying.
Measuring it: best execution and receipts
You cannot improve what you do not measure. Traditional finance formalized this as best execution: benchmark every fill against the arrival mid and against what a naive order would have gotten, and itemize the fees. The same discipline transfers directly to prediction markets, and it is cheap to implement — capture the book snapshot at order arrival, record the fill prices and fees, and compute the difference.
That is the idea behind execution receipts: a per-fill record showing the benchmark, the fill, and the fee itemization, so the quality of your execution is a number you can audit rather than a feeling. The concept, and what a meaningful benchmark looks like, is covered in Execution receipts: what best execution means in prediction markets.
Where Mithril fits
Mithril is one REST API (and a hosted MCP server) over Kalshi and Polymarket that does the above by default: it computes the net price after fees across both venues on every order, works large orders against thin books, enforces server-side slippage bounds, and attaches an execution receipt to every fill so the savings — if any — are your number, not our claim. It is free during beta.
Read the rest of the series
- Kalshi fees explained (with worked examples)
- Polymarket fees and gas explained
- Kalshi vs Polymarket fees: the total cost of a fill
- What is smart order routing? Applied to prediction markets
- Slippage in thin prediction markets and how to avoid it
- Execution receipts: what best execution means in prediction markets
And the calculators: Kalshi fee calculator, Polymarket fee calculator, arbitrage calculator.
Fee schedules and venue mechanics change. Details above reflect public documentation as of July 2026 — always confirm against the venues' own docs before trading real money.
One API + MCP for Kalshi and Polymarket
Fee-aware routing, unified market IDs, and hard server-side risk limits — live today, free during beta.
Keep reading
- Kalshi fees explained (with worked examples)
- Polymarket fees and gas explained
- Kalshi vs Polymarket fees: the total cost of a fill
- What is smart order routing? Applied to prediction markets
- Slippage in thin prediction markets and how to avoid it
- Execution receipts: what best execution means in prediction markets
Terms used