Guide

Kalshi fees explained, with examples

Kalshi charges a trading fee that depends on the price and the number of contracts. It's highest at 50¢ and lowest near 1¢ or 99¢. Here is the formula, a table of real numbers, and what it means for arbitrage.

The formula

Fee = 0.07 × contracts × P × (1 − P), rounded up to the next cent, per order.

P is the price in dollars (47¢ = 0.47). This is the taker fee for orders that fill right away. Under the fee schedule effective July 7, 2026 the same 0.07 applies across series; a few long-dated series charge no taker fee. Always check the market page, since Kalshi can change its schedule.

Kalshi fee table

Price1 contract101001,000
5¢$0.01$0.04$0.34$3.33
10¢$0.01$0.07$0.63$6.30
25¢$0.02$0.14$1.32$13.13
50¢$0.02$0.18$1.75$17.50
75¢$0.02$0.14$1.32$13.13
90¢$0.01$0.07$0.63$6.30
95¢$0.01$0.04$0.34$3.33

Computed with the formula above, rounded up to the cent per order.

What it means in practice

Fees and arbitrage

For a two-sided trade, add the fee on each side to the prices. A Kalshi YES at 47¢ plus a fee-free Polymarket NO at 50¢ is 97¢, plus about 1.75¢ in Kalshi fees: still under $1, so about $1.25 profit per 100 pairs. The same gap against Polymarket US, which also charges a fee, can lose money. Run your own numbers in the calculator.

Common questions

How much does Kalshi charge per trade?

0.07 times contracts times price times (1 minus price), rounded up to the cent, per order. At 50 cents that's 1.75 cents per contract; near 5 or 95 cents it's about a third of a cent.

Does Kalshi charge a fee when a contract settles?

No. The trading fee is charged when the order fills. A winning contract pays out the full $1.

Why do small Kalshi orders pay more in fees?

Each order's fee is rounded up to the next cent, so tiny orders pay a full cent even when the formula gives a fraction of one.

ArbTrader scans 30,000+ Kalshi, Polymarket and Polymarket US events about every 15 seconds and does this math for you.

Find my first winning trade

More guides