// EXECUTION & FEES
Kalshi fees explained (with worked examples)
2026-07-16 · Mithril
Kalshi's trading fee is not a flat rate, not a percentage of notional, and not a per-order charge. It is a formula that depends on the contract price — and if you trade without internalizing its shape, you will systematically overpay in exactly the markets where most of the volume is. This post walks through the formula, the rounding rule that bites small orders, how makers are treated, and worked examples at three price points.
The formula
Kalshi's standard taker fee is:
fee = 0.07 × contracts × price × (1 − price)
with price expressed in dollars (a 42¢ contract is 0.42), and the result rounded up to the next cent. A few fee schedules differ by market series, so treat 0.07 as the standard rate and check the venue's fee schedule for the specific market you trade.
The interesting part is the price × (1 − price) term. It is the variance
of a binary contract, and it peaks at 0.25 when
the price is 50¢, falling toward zero at both tails:
| Price | price × (1 − price) | Fee per contract (before rounding) |
|---|---|---|
| 5¢ | 0.0475 | $0.003325 |
| 10¢ | 0.09 | $0.0063 |
| 30¢ | 0.21 | $0.0147 |
| 50¢ | 0.25 | $0.0175 |
| 70¢ | 0.21 | $0.0147 |
| 90¢ | 0.09 | $0.0063 |
| 95¢ | 0.0475 | $0.003325 |
The fee is symmetric — buying YES at 90¢ costs the same fee as buying YES at 10¢ — and it is nearly three times larger at 50¢ than at 10¢. Coin-flip markets are the most expensive place on the exchange to take liquidity.
Worked examples
All examples use the standard 0.07 rate and 100 contracts.
100 contracts at 10¢
fee = 0.07 × 100 × 0.10 × 0.90 = $0.63
Notional at risk is $10.00, so the fee is 6.3% of premium — but only 0.63¢ per contract, or 0.63% of the $100 maximum payout.
100 contracts at 50¢
fee = 0.07 × 100 × 0.50 × 0.50 = $1.75
That is 1.75¢ per contract. If your modeled edge on a 50¢ market is 2¢, the taker fee just consumed most of it — before spread and impact.
100 contracts at 90¢
fee = 0.07 × 100 × 0.90 × 0.10 = $0.63
Identical to the 10¢ case. Note, though, that as a fraction of possible profit it stings more: buying at 90¢ your maximum gain is 10¢ per contract, and the fee eats 6.3% of it.
The round-up rule punishes small orders
The fee is rounded up to the next cent on the order. One contract at 50¢ has a raw fee of $0.0175, which rounds up to $0.02 — an effective rate of 0.08, not 0.07. One contract at 10¢ has a raw fee of $0.0063, rounding up to $0.01 — an effective rate near 0.111, roughly 59% above the nominal rate.
The distortion shrinks as size grows (the round-up is at most one cent per order), but it means two things for small traders and for bots that slice orders into many child orders: per-order rounding is a real cost, and slicing an order into N pieces can add up to N−1 extra cents of rounding. Batch where you can.
Makers generally pay nothing
On most Kalshi markets, resting limit orders that provide liquidity pay no trading fee — the taker on the other side pays. (A small set of market series has maker fees; check the fee schedule for your specific market.)
This asymmetry is large. On a 50¢ market, crossing the spread costs you the spread plus 1.75¢ per contract in fees; posting at the bid and getting filled costs you neither. The catch is the usual maker's dilemma: you may not get filled, and when you do get filled quickly it is often because the market moved against you. But for any strategy that is not latency-sensitive, defaulting to passive orders on Kalshi is close to free money relative to habitual taking.
Settlement and other fees
Kalshi has historically not charged a fee for holding contracts to settlement on most markets — your 100 YES contracts that resolve in your favor pay $100 with the trading fee having been charged at trade time. Specific series and fee schedules have changed over time, so verify the current schedule in Kalshi's documentation rather than assuming.
Withdrawal and funding mechanics (ACH, wire, debit) carry their own costs and are outside the trading fee schedule entirely.
What this means for how you trade
- The fee curve should shape your expression. If two markets express the same view — one near 50¢, one near a tail — the tail market is taxed at a fraction of the rate.
- Post when you can, take when you must. Maker treatment on most markets makes passive orders dramatically cheaper.
- Batch child orders. The round-up rule charges per order.
- Compare net, not displayed, prices across venues. Kalshi's fee can make its displayed-cheaper price net-more-expensive than Polymarket's — the crossover math is in Kalshi vs Polymarket fees.
To sanity-check any specific trade, plug the numbers into the Kalshi fee calculator — it applies the formula and the round-up rule for you.
If you trade both venues, this comparison is worth automating: Mithril's router computes the net price after fees on Kalshi and Polymarket for every order and fills wherever it is actually cheaper, with the fee itemized on the execution receipt. It is free during beta.
Fee schedules change. Figures above reflect Kalshi's public documentation as of July 2026 — always confirm against the venue's own fee schedule 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.