The Market Making Book

9. Kalshi: Regulated Event Contracts

A CFTC-regulated exchange where every market is a binary probability — and the fee curve is the strategy.

Part III · Chapter 9
Instrument
Binary YES/NO, settle $0 or $1
Identity
YES + NO = $1.00
Regulation
CFTC (US legal)
Taker fee
⌈0.07·C·p·(1−p)⌉
Maker fee
0 on most markets*
API
REST · WebSocket · FIX (FIXT.1.1 / FIX50SP2)

*Some series — notably the S&P 500 / Nasdaq-100 index markets — carry maker fees: since July 2025 a quadratic schedule of ⌈0.0175·C·p·(1−p)⌉, exactly a quarter of the taker fee (it replaced the old flat 0.25¢-per-contract maker fee). Those same index series also take at a halved 0.035 multiplier. Kalshi's 2025 fee-generating volume: $22.9B, with sports ≈ 89% of fee revenue; the venue raised $1B at a $22B valuation in May 2026 and was reportedly seeking ~$40B by June 2026 — young terrain, fast-changing rules. Always re-read the fee schedule.

The mechanics that matter

  • One book, two views. The book stores YES bids and NO bids; a YES bid at 7¢ is a NO ask at 93¢. "Buying NO" and "selling YES" are the same act.
  • Prices are probabilities. 1¢–99¢, tick = 1¢ (with finer sub-penny structures rolling out via price_ranges[].step).
  • MM-friendly API. Amend Order (keep the order's identity; note the fine print — only a size decrease preserves your FIFO spot; a reprice goes to the back of the queue, Ch. 7), batch create/cancel, queue-position endpoint (you can see your FIFO position), self-trade prevention modes (taker_at_cross / maker), cancel_order_on_pause. These exist because Kalshi wants makers.
  • Idle cash earns interest (3.25% APY, variable — and it accrues on open-position collateral too), softening the cost of parked capital.

The taker fee: a parabola that designs your strategy for you

Kalshi's taker fee per contract is 0.07·p·(1−p) — a parabola peaking exactly at p = 50¢, where it costs ~1.75¢ per contract. Explore it:

interactive — kalshi taker fee curve
Taker fee / contract
As % of price
Ticks of spread eaten
At 50¢ a round trip as taker costs ~3.5¢ — more than the entire 1–2¢ spread you were hoping to earn. The shaded 30–70¢ band is where two-sided quoting is attractive (real uncertainty, real flow, workable spread-to-tick ratio); the parabola is why maker-only is not a preference on Kalshi — it's a law of survival.

Why quote only the 30–70¢ band?

  • Tail asymmetry: sell a 95¢ YES that resolves against you and you lose 95¢ to win 5¢ — one informed counterparty erases 19 good trades.
  • Tick coarseness: at 3¢, one tick is 33% of the price; spreads can't compress to fair levels.
  • Flow quality: the center is where genuine two-way uncertainty (and noise flow) lives; the tails attract precisely the flow that knows something.
Kalshi MM doctrineMaker-only, center-band, model-anchored, queue-aware (shrink in place when you can; accept that any reprice pays the back-of-queue toll), with hard inventory caps per market. The venue's API was practically designed for this playbook. (One 2026 footnote: Kalshi now also lists perpetual futures — everything in this chapter is about its event contracts.)

On this page

GitHubGitHub repository