How Betting Exchanges Work: The Spread, the Fee, the Real Cost

Two rooms. In one, Brian takes the other side of your bet himself. In the other, he just takes a cut for introducing you to a classmate.

Meet your classmates

Same five, two different rooms.

Room 1: you against the house

Bookie Brian writes the price. Then he takes your bet himself. If you win, he pays you out of his own pocket.

So he is not neutral. He wrote both numbers and padded both of them. That padding is the vig, and it is why a coin flip gets priced at −110 instead of +100.

He decides how much you may bet, too. Win often enough and he cuts you to five dollars a game. A 2% edge on five dollars is ten cents.

Room 2: you against a classmate

Same race, different arrangement. You are not betting Brian in here. You are betting whoever in the class thinks the opposite, and Brian just runs the room.

Nobody wrote this price. It is a list of standing offers: the best anyone will buy at, the best anyone will sell at, and how much is on the table at each. That list is the order book, and it is the price.

Brian still gets paid. He charges a fee on the match. He has no stake in who wins, so he has no reason to limit anybody either.

Either way, you pay in the price

The spread. The best bid and the best ask are never the same number. Grab whatever is showing and you pay the gap from the middle. Post your own price and wait, and you can collect that gap instead.

The fee. Kalshi charges a taker 0.07×C×P×(1P)0.07 \times C \times P \times (1-P) per contract, rounded up to the cent. It is worst on a coin flip and cheapest out at the tails, which is exactly backwards from a book’s vig.

It lands twice, going in and coming out. Settlement is free, so holding to the end is the cheaper exit.

Kalshi is not the only exchange. Novig, a newer one, charges no fee on a straight trade (one game, one side) placed before the game starts; once the game is live, grabbing whatever is showing costs a smaller fee with the same coin-flip shape, as of September 2026. Nobody runs a room for free, though: Novig’s cut mostly hides in the spread, and a thin market can stretch that gap wide with no fee in sight.

Watch a season of it

Three bettors, a hundred races, and all of them buy the same thing every time: $100 if their hamster wins. Joe bets at the book. Then Joe walks across to the exchange and grabs whatever is showing. Evan posts his own price and waits.

Room 1 · the book −110 / −110 Average Joe Bookie Brian he writes the price and takes the bet himself Room 2 · the exchange bid 49 · ask 51 Average Joe +EV Evan they bet each other his fee Joe, at the book Joe, exchange, taking Evan, exchange, posting $0 $350 $259 $284 $32 100 races. The book took $259. Taking at the exchange, $284. $278 $300 $29 100 races. The book took $278. Taking at the exchange, $300. $265 $293 $29 100 races. The book took $265. Taking at the exchange, $293. $295 $319 $28 100 races. The book took $295. Taking at the exchange, $319. $265 $282 $31 100 races. The book took $265. Taking at the exchange, $282. $291 $272 $30 100 races. The book took $291. Taking at the exchange, $272. Other way round this season. Still the price, not the room. Left, Brian takes the other side. Right, he just runs the room. Both rooms sell the same thing: $100 if your hamster wins. The room did not decide that. The price did.
A real simulation, and one season out of six picked at random. All three buy the same thing every race, $100 if the hamster wins, and the charts track only what they paid above the fair 50¢. At the book that is $2.38 at −110, more at −120, less at −105. Taking the exchange's offer is $1.75 of fee plus however far the ask sits above fair. Posting your own price and waiting is $0.44, on the races where somebody takes it, which is why Evan's line has flat stretches: those are races he never got on. Every price here sits at a coin flip, which is where Kalshi's fee is at its worst and a book's vig at its mildest. Out at the tails the two swap places.

Joe changed rooms and it barely changed the bill. Evan changed the price, and that changed everything.

Over a hundred races the two steep charts finish within about thirty dollars of each other, and some seasons the book is the dearer one. Thirty dollars is roughly Evan’s whole season. Per race it is about $2.90 to take whatever the exchange was showing, against $0.44 each time somebody takes his.

None of that says an exchange is cheap. Taking whatever shows on a coin flip runs about what a book charges, and with no edge a cheaper room only takes your money more slowly. What it does give you is a room where the $0.44 price exists at all, and nobody to stop you using it twice.

Want more math?the Nerd Corner

Nerd Corner

Advanced material. Nothing above depends on it.

Cost one: the spread you cross

An exchange has no padding baked into its price. Its version of the vig is the gap between the best bid and the best ask, and a taker pays half of it:

taker’s spread cost=askmid=spread2 per contract\text{taker’s spread cost} = \text{ask} - \text{mid} = \tfrac{\text{spread}}{2} \ \text{per contract}

A 2 cent spread costs a taker 1 cent per contract, which is one probability point. Busy markets run a cent wide. Thin ones run several, and there the spread is basically the entire cost.

The flip side is the part people skip past. A maker earns that half instead of paying it. Rest an order, get filled at your own price, and the half-spread lands on your side of the ledger. That is the whole difference between Joe’s line and Evan’s line in the chart above.

Cost two: the fee, to the cent

The body gave the shape of the taker fee. This is the published version, rounding included:[1]

taker fee=0.07CP(1P)centC=contracts, P=price in dollars\text{taker fee} = \left\lceil\, 0.07\,C\,P\,(1-P) \,\right\rceil_{\text{cent}} \qquad C = \text{contracts},\ P = \text{price in dollars}

That ceiling is charged on the order, and it always rounds up. On big orders it is a rounding detail. On small ones it is most of the story: one contract at 50 cents owes 1.75 cents of fee and gets charged 2.

Now the number that actually decides anything. Buy YES at PP, pay the fee going in, and the contract has to come in more often than the all-in cost:

ptrueP+0.07P(1P)p_{\text{true}} \ge P + 0.07\,P(1-P)

At 50 cents that break-even is 51.75%. At 5 cents it is 5.33%, which sounds like nothing until you notice it is a 6.7% surcharge on what you paid.

A resting maker order pays about a quarter of the taker rate. A few major events instead charge a flat 0.25% maker fee, which is a large fraction of the price on a contract under 5 cents and trivial anywhere else. Read the contract terms.[1]

Cost two, one room over: Novig’s version

Novig, a second CFTC-regulated exchange (real money since its August 2026 relaunch), runs the same curve with two twists: the coefficient is 0.03, not 0.07, and it hits only takers while the game is live. Pregame straight trades are free for both sides, makers never pay, and the maker-credit program pays a maker back half the taker fee their resting order generated.[7][8]

Novig taker fee, live=0.03CP(1P)pregame or maker: $0\text{Novig taker fee, live} = 0.03\,C\,P\,(1-P) \qquad \text{pregame or maker: } \$0

No ceiling, no minimum: where Kalshi rounds every fee up to the cent, Novig charges the exact fraction (the ledger keeps five decimal places). One contract at 50¢: Kalshi charges 2¢, which is 1.75¢ rounded up. Novig live charges 0.75¢ exactly. Novig pregame charges nothing. Scaled to a real stake:

$100 @ 50¢=200 contracts:Kalshi taker $3.50Novig live taker $1.50Novig pregame $0\$100 \text{ @ } 50\text{¢} = 200 \text{ contracts:} \qquad \text{Kalshi taker } \$3.50 \qquad \text{Novig live taker } \$1.50 \qquad \text{Novig pregame } \$0

Watch the units. Per contract both fees peak at even money; that is the body’s “worst on a coin flip.” Per dollar staked, contracts = stake / P, so the fee is 0.03 × (1−P) of the stake: hardest on longshots, the same flip that “Cheap in cents, expensive in percent” works out for Kalshi below.

A fee schedule this light means the cost you actually pay mostly hides in the spread: a thin market can run a wide gap with no fee attached. Parlays and RFQ trades (you request a price instead of taking one off the book) fold a 0.10 coefficient into the displayed price rather than itemizing it, so you find that fee the way you find any vig: de-vig it. And exiting a live position early is just another trade. Each live fill is charged on its own, so a round trip can pay the taker fee twice. Pregame it is free both ways.

Apples to apples: what a coin flip costs

Put both rooms in the same units. You want a claim that pays $100 if your side wins, on a game that genuinely is a coin flip, so the claim is worth $50. What do you pay above that?

RouteSpreadFeeCost above fair
Sportsbook at −110baked into the price$2.38
Kalshi taker, 2¢ spread (49/51)$1.00$1.75$2.75
Kalshi taker, 1¢ spread$0.50$1.75$2.25
Kalshi maker, filled at the mid$0.00$0.44$0.44
Novig taker, live, 2¢ spread$1.00$0.75$1.75
Novig taker, pregame, 2¢ spread$1.00$0.00$1.00
book: 100×110210=$52.38taker: $51+$1.75=$52.75maker: $50+$0.44=$50.44\text{book: } 100\times\tfrac{110}{210} = \$52.38 \qquad \text{taker: } \$51 + \$1.75 = \$52.75 \qquad \text{maker: } \$50 + \$0.44 = \$50.44

Read that straight, because it is not the answer people expect. A taker crossing a wide spread at even money pays sportsbook prices. The exchange’s discounts are structural, not automatic. Resting an order costs $0.44, a fifth of the book. Holding to settlement skips the exit fee entirely. And out at the tails the fee drops to 0.63 cents a contract, and the tails are exactly where a book shades longshots hardest.

Trading out against holding to settlement

Trade out vs. hold

Enter: 100 @ 50¢    0.07×100×0.50×0.50=$1.75\text{Enter: } 100 \text{ @ } 50\text{¢} \;\Rightarrow\; \lceil 0.07 \times 100 \times 0.50 \times 0.50 \rceil = \$1.75
Sell at 60¢:  0.07×100×0.60×0.40=$1.68    round trip $3.43\text{Sell at } 60\text{¢}: \; \lceil 0.07 \times 100 \times 0.60 \times 0.40 \rceil = \$1.68 \;\Rightarrow\; \text{round trip } \$3.43
Hold to settlement: $1.75 total(settlement fee=$0)\text{Hold to settlement: } \$1.75 \text{ total} \qquad (\text{settlement fee} = \$0)
Same position, same exit value. The trader paid double. Patience is subsidized; scalping is taxed.

The two-way margin, with a letter attached

Add both sides of a venue’s price as probabilities and subtract 100%. That is m, the two-way margin, and it is the same object whether the venue is a book or an exchange:

m=qa+qb1-110/-110:110210+110210=104.76%    m=4.76%m = q_a + q_b - 1 \qquad \text{-110/-110:}\quad \tfrac{110}{210} + \tfrac{110}{210} = 104.76\% \;\Rightarrow\; m = 4.76\%

On an exchange quote that same sum turns out to be exactly the spread, which the prediction markets lesson works out line by line. Which is why Kalshi measures around 0.21% and a book measures roughly twenty times that.

Near even odds the margin comes straight off whatever real edge you brought. Call the edge gg:

EVnetgm\mathrm{EV}_{\text{net}} \approx g - m
g=2.5%:+2.3% (exchange)+0.1% (sharp book)2.3% (typical book)g = 2.5\%:\quad +2.3\%\ \text{(exchange)} \qquad +0.1\%\ \text{(sharp book)} \qquad -2.3\%\ \text{(typical book)}

Same edge, three rooms, and one of them turns it negative. Then look at the first column again with nothing in your hand. Set g=0g = 0 and the whole thing is m-m. Cheap is not an edge. A cheaper room you bring nothing to just takes your money more slowly.

Cheap in cents, expensive in percent

At the tails the fee is small in cents but your outlay shrinks faster:

feeoutlay=0.07P(1P)P=0.07(1P)\frac{\text{fee}}{\text{outlay}} = \frac{0.07\,P(1-P)}{P} = 0.07\,(1-P)
P=0.05: 6.7% of outlayP=0.50: 3.5%P=0.90: 0.7%P=0.05:\ 6.7\% \text{ of outlay} \qquad P=0.50:\ 3.5\% \qquad P=0.90:\ 0.7\%

A 5¢ contract’s fee is a third of a cent, and 6.7% of every dollar staked. It stacks with something worse:

Don’t read tail prices as gospel

Longshots are systematically overpriced, the oldest measured anomaly in betting markets: found at 1949 racetracks,[3] across every parimutuel pool since,[4] and best explained by bettors misjudging small probabilities.[5] It holds on Kalshi itself: a 2026 GWU study of 300,000+ settled contracts found prices informative and sharpening toward close, but low-priced contracts winning less than the fee-adjusted break-even requires.[2]

Below ~15¢, the fee takes its biggest bite of outlay and the price itself leans against you. Treat a tail price as information, not fair value. Our fair-line machinery shades longshots down for exactly this reason.

Markets that outlive their games

A postponed game’s market can stay open and settle on the makeup date, still listed under the original day’s event, while its order book goes quiet: unrefreshed resting orders, one-sided depth, a price that’s a fossil. We watched one manufacture a phantom 4.7% “arbitrage” on our own board. Any exchange quote that hasn’t printed in hours is decoration, not price.

Open the free Kalshi fee calculator →Fee, true break-even, round trip vs. hold. Any price and size, every step shown.

Honest caveats

Staleness: a tight spread on a quote nobody updates is a trap, which is why every number here carries its timestamps. Depth: a thin book moves against your size; the honest price is the size-weighted microprice, not top-of-book.[6] Reach: Kalshi is CFTC-regulated; Polymarket is US-restricted; Betfair is US-unavailable. And the line that matters most: cheap is not an edge.

no edge    even m=0.21% is a slow loss, not a win\text{no edge} \;\Rightarrow\; \text{even } m = 0.21\% \text{ is a slow loss, not a win}

Nothing here says exchanges guarantee a profit, or that anyone should place any bet.

Where these numbers come from

  1. Kalshi. “Fee Schedule” (July 2026 revision). – taker/maker formulas, the rounding rule, the zero settlement fee.
  2. Burgi, C., Deng, W. & Whelan, K. (2026). “Makers and Takers: The Economics of the Kalshi Prediction Market.” GWU Working Paper 2026-001. PDF. – 300k+ settled contracts: informative prices, favorite–longshot bias after fees.
  3. Griffith, R. M. (1949). “Odds Adjustments by American Horse-Race Bettors.” American Journal of Psychology 62(2), 290–294.
  4. Thaler, R. H. & Ziemba, W. T. (1988). “Anomalies: Parimutuel Betting Markets: Racetracks and Lotteries.” Journal of Economic Perspectives 2(2), 161–174.
  5. Snowberg, E. & Wolfers, J. (2010). “Explaining the Favorite–Long Shot Bias: Is it Risk-Love or Misperceptions?” Journal of Political Economy 118(4), 723–746.
  6. Stoikov, S. (2018). “The Micro-Price: A High-Frequency Estimator of Future Prices.” Quantitative Finance 18(12), 1959–1966.
  7. Novig. “Fees”, developer docs (September 2026). – the live-only 0.03 taker coefficient, exact sub-cent charging, the 0.10 RFQ/parlay coefficient.
  8. Novig. “Maker Credit Program”, developer docs (September 2026). – makers pay no fee and are paid half the taker fee their resting order generated.

Every formula here lives on the Formula Sheet for quick reference.

Check your understanding

Frequently asked questions

How does a betting exchange like Kalshi work?

A contract pays $1 if YES and $0 if NO, so its price in cents is the market's probability. An order book holds resting bids and asks from other bettors; the exchange matches YES against NO, charges a small fee, and never takes a position. Buying NO at 49¢ is the same trade as selling YES at 51¢.

What does a Kalshi trade actually cost?

Two things: the spread and the fee. Taking immediately costs half the bid–ask spread versus the mid, plus the taker fee 0.07 × C × P × (1−P): 1.75¢ per contract at a 50¢ price. Per $100 claim at a coin flip: about $2.75 all-in across a 2¢ spread, close to a −110 book's $2.38. But a maker filled at the mid pays ~$0.44, and settlement is free.

Does a lower vig guarantee I will win?

No. Lower cost is not an edge. With no edge, a cheap venue just loses you money more slowly. Everything here is a calculation about cost, not advice or a prediction.

Why do sportsbooks limit winning bettors but exchanges don't?

A book is your counterparty, so a winning account is a liability it limits or bans. An exchange matches bettors and skims a fee either way, so it does not limit winners. A capped stake turns any percentage edge into pocket change; an exchange lets a real edge scale.