Fair prices · Lab

Settlis Lab: untailored analytics, built to be shared

What it costs to trade on Kalshi, Polymarket and Novig, where the retail flow is, and what crossing the spread has cost against fair, measured from each exchange's own trades. The same numbers for every visitor, published once a night.

  • Version 2026-10-15
  • 90-day trailing window, trading before each start
  • Updated nightly ~15:30 UTC
  • Published 15 Oct 2026, 15:32 UTC (6h ago)
  • Methodology lab-m1
  • Kalshi · 5h old
  • Polymarket · 11h old
  • Novig · 5h old

Age of each exchange’s newest trade when this edition was published.

What it costs to trade

Each exchange's published fee per contract on a 100-contract order, across the price of a contract. Move the slider to compare them at one price.

  • Kalshi
  • Polymarket
  • Novig
Taker feeYour order trades at once, at a price already offered.
Taker fee per contract by price, 100-contract orderKalshi from 0.07¢ to 1.75¢; Polymarket from 0.07¢ to 1.74¢; Novig 0¢ at every price.−0.5¢0¢0.5¢1¢1.5¢0¢25¢50¢75¢100¢
  • 1.75¢Kalshi
  • 1.74¢Polymarket
  • 0¢Novig
Maker feeYour order waits until someone else trades against it. A negative fee is a rebate.
Maker fee per contract by price, 100-contract orderKalshi from 0.02¢ to 0.44¢; Polymarket from −0.31¢ to −0.01¢; Novig 0¢ at every price.−0.5¢0¢0.5¢1¢1.5¢0¢25¢50¢75¢100¢
  • 0.44¢Kalshi
  • −0.31¢Polymarket
  • 0¢Novig

Lowest taker fee at 50¢: Novig, no fee.

Lowest maker fee at 50¢: Polymarket, 0.31¢ rebate.

Fees only. The price on offer differs from one exchange to the next, so the lowest fee is not always the lowest cost. Kalshi’s maker fee applies only on series that charge one (see how each exchange charges, below).

Fee per contract on a 100-contract order, at a few prices. A negative fee is a rebate.
ExchangeOrder10¢25¢50¢75¢90¢
KalshiTaker0.63¢1.32¢1.75¢1.32¢0.63¢
Maker0.16¢0.33¢0.44¢0.33¢0.16¢
PolymarketTaker0.63¢1.3¢1.74¢1.3¢0.63¢
Maker−0.11¢−0.23¢−0.31¢−0.23¢−0.11¢
NovigTaker0¢0¢0¢0¢0¢
Maker0¢0¢0¢0¢0¢

How each exchange charges

Kalshi

Taker: 0.07 × contracts × P × (1 − P) dollars, rounded up to the next cent per order.

Maker: 0.0175 × contracts × P × (1 − P) dollars, rounded up to the next cent per order, only on series whose exchange fee type includes maker fees. Series in this window confirmed to charge maker fees are listed; the list may be incomplete, so check the exchange's fee type for a given series.

  • Fees round up per order, so any order that pays a fee pays at least 1¢.
  • Shown per contract for a 100-contract order; a smaller order can pay more per contract because of rounding.
  • Some series carry a fee multiplier that scales both fees; the curve shows a multiplier of 1.
  • Series in this window with a fee multiplier other than 1: KXMLBEXTRAS 0.5×, KXMLBF3 0.5×, KXMLBF5 0.5×, KXMLBF5SPREAD 0.5×, KXMLBF5TOTAL 0.5×, KXMLBF7 0.5×, KXMLBGAME 0.5×, KXMLBHIT 0.5×, KXMLBHR 0.5×, KXMLBHRR 0.5×, KXMLBKS 0.5×, KXMLBOUTS 0.5×, KXMLBRBI 0.5×, KXMLBRFI 0.5×, KXMLBSB 0.5×, KXMLBSPREAD 0.5×, KXMLBTB 0.5×, KXMLBTEAMTOTAL 0.5×, KXMLBTOTAL 0.5×.
  • The exchange's own series fee type is authoritative.

Series in this window confirmed to charge maker fees: KXATPMATCH, KXBUNDESLIGAGAME, KXEPLGAME, KXF1RACE, KXF1RACEPODIUM, KXLALIGAGAME, KXLIGUE1GAME, KXMLB, KXMLBGAME, KXMLBSERIES, KXNASCARRACE, KXNBAGAME, KXNBASPREAD, KXNBATOTAL, KXNCAAFGAME, KXNCAAFSPREAD, KXNCAAFTOTAL, KXNFLFIRSTTD, KXNFLGAME, KXNFLSPREAD, KXNFLTOTAL, KXNHLGAME, KXPGATOUR, KXSERIEAGAME, KXUCLGAME, KXWNBAGAME, KXWTAMATCH.

Polymarket

Taker: Θ × contracts × P × (1 − P) dollars, rounded to the nearest cent (half to even); Θ = 0.0695 since 2026-09-17 03:59 UTC (0.06 before).

Maker: A rebate of 0.0125 × contracts × P × (1 − P) dollars, applied at the trade (shown as a negative fee).

  • Shown per contract for a 100-contract order.
  • The taker coefficient follows the published schedule below; the curve uses the one in force at publication.
  • From 1 Jul 2026: taker Θ 0.06, maker Θ −0.0125 (a rebate when negative).
  • From 17 Sep 2026, 03:59 UTC: taker Θ 0.0695, maker Θ −0.0125 (a rebate when negative).

Novig

Taker: No fee on fills before the event starts.

Maker: No fee.

  • Novig charges takers only on fills while the event is live; the Lab covers fills before the start only.

Where the flow is

How many contracts change hands in retail-sized orders, league by league and exchange by exchange, and how much trades in blocks.

Retail flow by league and exchange, in 90 days, before each start. Each figure adds up the market families and time-to-start windows with at least 20 events; thinner ones are left out. Counts include every participant's trades, Settlis's among them.
ExchangeRetail contractsBlockEvents
Football
NFL
Kalshi≈ 3,959,013 per slate102,934,336 in 90 daysat least87%≥ 111
Polymarket≈ 6,689,644 per slate127,103,242 in 90 daysat most—≥ 92
Novig≈ 1,248,715 per slate28,720,441 in 90 daysmeasured93%≥ 108
Soccer
La Liga
Kalshi≈ 332,357 per slate11,632,503 in 90 daysat least87%≥ 80
Polymarket≈ 10,776 per slate150,859 in 90 daysat most—≥ 30
Novig≈ 22,069 per slate463,449 in 90 daysmeasured92%≥ 50
Premier League
Kalshi≈ 497,620 per slate9,952,394 in 90 daysat least87%≥ 60
Polymarket≈ 11,437 per slate102,936 in 90 daysat most—≥ 27
Novig≈ 44,311 per slate664,670 in 90 daysmeasured90%≥ 49
Liga MX
Kalshi≈ 265,696 per slate9,565,054 in 90 daysat least77%≥ 94
Champions League
Kalshi≈ 536,735 per slate8,587,763 in 90 daysat least87%≥ 70
Novig≈ 118,433 per slate710,600 in 90 daysmeasured90%≥ 36
MLS
Kalshi≈ 269,280 per slate8,078,387 in 90 daysat least85%≥ 214
Polymarket≈ 3,810 per slate49,530 in 90 daysat most—≥ 49
Novig≈ 29,754 per slate505,816 in 90 daysmeasured92%≥ 105
Serie A
Kalshi≈ 122,110 per slate2,197,979 in 90 daysat least90%≥ 52
Novig≈ 13,459 per slate174,966 in 90 daysmeasured90%≥ 32
Ligue 1
Kalshi≈ 68,100 per slate1,293,900 in 90 daysat least87%≥ 53
Novig≈ 9,482 per slate142,226 in 90 daysmeasured89%≥ 35
Bundesliga
Kalshi≈ 87,944 per slate1,055,326 in 90 daysat least91%≥ 36
Novig≈ 10,034 per slate110,371 in 90 daysmeasured87%≥ 27
EFL Championship
Kalshi≈ 33,913 per slate440,873 in 90 daysat least83%≥ 60
UEFA Nations League
Polymarket≈ 16,659 per slate199,912 in 90 daysat most—≥ 79
Novig≈ 35,165 per slate210,991 in 90 daysmeasured90%≥ 49
Europa League
Novig≈ 10,042 per slate20,084 in 90 daysmeasured76%≥ 27
Baseball
MLB
Kalshi≈ 1,945,198 per slate169,232,204 in 90 daysat least88%≥ 1,015
Polymarket≈ 191,051 per slate12,227,283 in 90 daysat most—≥ 573
Novig≈ 736,256 per slate34,604,052 in 90 daysmeasured92%≥ 546
at least:
A floor. Kalshi's trade record here comes from a crawl that stops early on busy markets, so the true count is higher.
at most:
A ceiling. Polymarket's data comes as volume bars, which cannot separate block trades from retail ones, so all of its volume is counted as retail.
measured:
Measured. Novig's trades are recorded in full.
≈ per slate:
An estimate: retail contracts in the window divided by the slates (game days, by US Eastern start date) counted. The slate count is a lower bound, so this figure can read high.
Total in 90 days:
Contracts traded in retail-sized orders in the window, before each start. The label says how complete the exchange's record is.
Block:
The share of contracts that traded in large clips (block trades) rather than retail-sized orders. A dash means the data cannot split them.
Events:
Distinct events with trades in the window: at least this many.

Crossing vs fair

What a taker order has cost against the Settlis fair price, after the exchange's fee, in cents a contract. For each trade it is the fair price at that moment, minus the price paid, minus the fee. A negative number is a cost.

The dot is the average and the line is its 95% range, worked out event by event. Every bar sits on one cents scale. A time window needs at least 20 events for a figure; a thinner one says so and shows no number.

NFL · Kalshi15 figures in 4 market families · averages from −2.60¢ to −1.31¢
NFL on Kalshi: net cents a contract against fair after fees, by market family and time to start
Time to startNet against fair after fees, in cents a contract: the average and its 95% range
KXNFLGAME
More than 72h
−1.64¢−1.92 to −1.37 · ≥ 53 events
24 to 72h
−1.69¢−2.04 to −1.33 · ≥ 56 events
6 to 24h
−1.65¢−2.12 to −1.19 · ≥ 59 events
1 to 6h
−1.70¢−1.92 to −1.48 · ≥ 63 events
Last hour
−2.05¢−2.31 to −1.80 · ≥ 66 events
KXNFLPASSTDS
More than 72hToo few events
24 to 72h
−2.43¢−3.52 to −1.34 · ≥ 24 events
6 to 24h
−2.25¢−2.80 to −1.69 · ≥ 34 events
1 to 6h
−2.08¢−2.76 to −1.41 · ≥ 42 events
Last hour
−2.60¢−3.37 to −1.84 · ≥ 43 events
KXNFLREC
24 to 72h
−1.31¢−3.64 to +1.03 · ≥ 32 events
6 to 24h
−1.84¢−2.83 to −0.85 · ≥ 32 events
1 to 6h
−1.66¢−2.86 to −0.46 · ≥ 40 events
Last hour
−1.71¢−2.46 to −0.97 · ≥ 40 events
KXNFLTOTAL
More than 72hToo few events
24 to 72hToo few events
6 to 24hToo few events
1 to 6h
−1.99¢−2.39 to −1.58 · ≥ 21 events
Last hour
−2.37¢−2.84 to −1.90 · ≥ 22 events
KXNFLRECYDS
All 5 windowsToo few events
KXNFLRSHYDS
All 5 windowsToo few events
KXNFLPASSYDS
4 windowsToo few events · 24 to 72h, 6 to 24h, 1 to 6h, Last hour
Champions League · Kalshi12 figures in 3 market families · averages from −2.53¢ to −1.67¢
Champions League on Kalshi: net cents a contract against fair after fees, by market family and time to start
Time to startNet against fair after fees, in cents a contract: the average and its 95% range
KXUCLGAME
More than 72h
−2.14¢−3.47 to −0.82 · ≥ 27 events
24 to 72h
−2.35¢−3.01 to −1.68 · ≥ 39 events
6 to 24h
−1.94¢−2.44 to −1.44 · ≥ 45 events
1 to 6h
−1.83¢−2.20 to −1.46 · ≥ 44 events
Last hour
−2.15¢−2.47 to −1.83 · ≥ 44 events
KXUCLBTTS
24 to 72h
−1.67¢−2.97 to −0.36 · ≥ 23 events
6 to 24h
−1.85¢−2.23 to −1.47 · ≥ 36 events
1 to 6h
−1.95¢−2.74 to −1.16 · ≥ 36 events
Last hour
−2.39¢−2.84 to −1.95 · ≥ 36 events
KXUCLTOTAL
24 to 72hToo few events
6 to 24h
−2.04¢−2.92 to −1.16 · ≥ 21 events
1 to 6h
−2.06¢−2.44 to −1.68 · ≥ 20 events
Last hour
−2.53¢−3.03 to −2.03 · ≥ 21 events
La Liga · Kalshi12 figures in 3 market families · averages from −3.27¢ to −2.27¢
La Liga on Kalshi: net cents a contract against fair after fees, by market family and time to start
Time to startNet against fair after fees, in cents a contract: the average and its 95% range
KXLALIGAGAME
More than 72h
−2.61¢−3.35 to −1.87 · ≥ 49 events
24 to 72h
−2.81¢−3.30 to −2.31 · ≥ 52 events
6 to 24h
−2.71¢−3.28 to −2.15 · ≥ 53 events
1 to 6h
−2.43¢−2.97 to −1.89 · ≥ 53 events
Last hour
−2.42¢−2.79 to −2.04 · ≥ 54 events
KXLALIGABTTS
More than 72hToo few events
24 to 72h
−3.27¢−4.96 to −1.57 · ≥ 22 events
6 to 24h
−2.57¢−3.09 to −2.05 · ≥ 47 events
1 to 6h
−2.46¢−2.89 to −2.02 · ≥ 47 events
Last hour
−2.77¢−3.15 to −2.39 · ≥ 48 events
KXLALIGATOTAL
More than 72hToo few events
24 to 72hToo few events
6 to 24h
−2.39¢−2.92 to −1.85 · ≥ 29 events
1 to 6h
−2.65¢−3.07 to −2.24 · ≥ 33 events
Last hour
−2.27¢−2.52 to −2.01 · ≥ 34 events
MLS · Kalshi12 figures in 3 market families · averages from −2.94¢ to +0.53¢
MLS on Kalshi: net cents a contract against fair after fees, by market family and time to start
Time to startNet against fair after fees, in cents a contract: the average and its 95% range
KXMLSGAME
More than 72h
−2.52¢−3.39 to −1.65 · ≥ 83 events
24 to 72h
−1.82¢−2.57 to −1.08 · ≥ 109 events
6 to 24h
−1.99¢−2.43 to −1.54 · ≥ 135 events
1 to 6h
−2.38¢−2.63 to −2.13 · ≥ 127 events
Last hour
−2.66¢−3.08 to −2.25 · ≥ 132 events
KXMLSBTTS
More than 72hToo few events
24 to 72h
+0.53¢−0.76 to +1.83 · ≥ 22 events
6 to 24h
−2.02¢−2.41 to −1.62 · ≥ 71 events
1 to 6h
−2.64¢−3.07 to −2.21 · ≥ 92 events
Last hour
−2.68¢−2.98 to −2.38 · ≥ 103 events
KXMLSTOTAL
More than 72hToo few events
24 to 72hToo few events
6 to 24h
−2.25¢−3.67 to −0.83 · ≥ 36 events
1 to 6h
−2.94¢−3.21 to −2.67 · ≥ 54 events
Last hour
−2.40¢−2.87 to −1.92 · ≥ 68 events
Premier League · Kalshi12 figures in 3 market families · averages from −2.86¢ to −2.16¢
Premier League on Kalshi: net cents a contract against fair after fees, by market family and time to start
Time to startNet against fair after fees, in cents a contract: the average and its 95% range
KXEPLGAME
More than 72h
−2.78¢−3.34 to −2.23 · ≥ 46 events
24 to 72h
−2.80¢−3.34 to −2.25 · ≥ 46 events
6 to 24h
−2.53¢−2.86 to −2.20 · ≥ 47 events
1 to 6h
−2.28¢−2.66 to −1.89 · ≥ 47 events
Last hour
−2.34¢−2.59 to −2.09 · ≥ 47 events
KXEPLBTTS
More than 72hToo few events
24 to 72h
−2.54¢−3.02 to −2.07 · ≥ 26 events
6 to 24h
−2.46¢−2.82 to −2.09 · ≥ 40 events
1 to 6h
−2.46¢−2.86 to −2.06 · ≥ 38 events
Last hour
−2.86¢−3.20 to −2.52 · ≥ 40 events
KXEPLTOTAL
More than 72hToo few events
24 to 72hToo few events
6 to 24h
−2.39¢−2.75 to −2.03 · ≥ 27 events
1 to 6h
−2.16¢−2.47 to −1.84 · ≥ 31 events
Last hour
−2.47¢−2.76 to −2.17 · ≥ 33 events
Serie A · Kalshi11 figures in 3 market families · averages from −2.62¢ to −1.79¢
Serie A on Kalshi: net cents a contract against fair after fees, by market family and time to start
Time to startNet against fair after fees, in cents a contract: the average and its 95% range
KXSERIEAGAME
More than 72h
−1.79¢−2.94 to −0.63 · ≥ 31 events
24 to 72h
−2.17¢−2.58 to −1.76 · ≥ 23 events
6 to 24h
−2.48¢−2.91 to −2.06 · ≥ 35 events
1 to 6h
−2.41¢−2.83 to −2.00 · ≥ 34 events
Last hour
−2.59¢−3.10 to −2.07 · ≥ 35 events
KXSERIEABTTS
More than 72hToo few events
24 to 72hToo few events
6 to 24h
−2.51¢−2.84 to −2.17 · ≥ 30 events
1 to 6h
−2.33¢−3.06 to −1.60 · ≥ 32 events
Last hour
−2.62¢−3.19 to −2.06 · ≥ 32 events
KXSERIEATOTAL
24 to 72hToo few events
6 to 24h
−1.99¢−2.50 to −1.48 · ≥ 22 events
1 to 6h
−2.59¢−3.22 to −1.96 · ≥ 23 events
Last hour
−2.33¢−2.78 to −1.87 · ≥ 25 events
Liga MX · Kalshi10 figures in 3 market families · averages from −2.90¢ to −2.14¢
Liga MX on Kalshi: net cents a contract against fair after fees, by market family and time to start
Time to startNet against fair after fees, in cents a contract: the average and its 95% range
KXLIGAMXGAME
More than 72h
−2.14¢−2.83 to −1.44 · ≥ 45 events
24 to 72h
−2.55¢−3.14 to −1.96 · ≥ 43 events
6 to 24h
−2.58¢−3.22 to −1.94 · ≥ 50 events
1 to 6h
−2.55¢−2.96 to −2.15 · ≥ 50 events
Last hour
−2.41¢−2.77 to −2.04 · ≥ 50 events
KXLIGAMXBTTS
More than 72hToo few events
24 to 72hToo few events
6 to 24h
−2.49¢−3.25 to −1.74 · ≥ 29 events
1 to 6h
−2.90¢−3.29 to −2.52 · ≥ 39 events
Last hour
−2.80¢−3.14 to −2.47 · ≥ 41 events
KXLIGAMXTOTAL
24 to 72hToo few events
6 to 24hToo few events
1 to 6h
−2.45¢−2.99 to −1.91 · ≥ 31 events
Last hour
−2.56¢−2.73 to −2.39 · ≥ 38 events
Ligue 1 · Kalshi10 figures in 3 market families · averages from −2.95¢ to −1.66¢
Ligue 1 on Kalshi: net cents a contract against fair after fees, by market family and time to start
Time to startNet against fair after fees, in cents a contract: the average and its 95% range
KXLIGUE1GAME
More than 72h
−2.95¢−3.37 to −2.53 · ≥ 21 events
24 to 72h
−1.79¢−2.53 to −1.06 · ≥ 21 events
6 to 24h
−2.45¢−3.21 to −1.69 · ≥ 40 events
1 to 6h
−2.48¢−3.00 to −1.96 · ≥ 40 events
Last hour
−2.90¢−3.26 to −2.54 · ≥ 40 events
KXLIGUE1BTTS
More than 72hToo few events
24 to 72hToo few events
6 to 24h
−2.13¢−2.44 to −1.83 · ≥ 31 events
1 to 6h
−2.33¢−2.58 to −2.09 · ≥ 31 events
Last hour
−2.62¢−3.10 to −2.13 · ≥ 35 events
KXLIGUE1TOTAL
More than 72hToo few events
24 to 72hToo few events
6 to 24h
−1.66¢−2.18 to −1.14 · ≥ 23 events
1 to 6hToo few events
Last hour
−2.32¢−2.98 to −1.66 · ≥ 25 events
Bundesliga · Kalshi7 figures in 3 market families · averages from −2.57¢ to −1.17¢
Bundesliga on Kalshi: net cents a contract against fair after fees, by market family and time to start
Time to startNet against fair after fees, in cents a contract: the average and its 95% range
KXBUNDESLIGABTTS
More than 72hToo few events
24 to 72hToo few events
6 to 24h
−1.89¢−2.39 to −1.38 · ≥ 25 events
1 to 6h
−2.26¢−2.74 to −1.79 · ≥ 26 events
Last hour
−2.57¢−3.05 to −2.09 · ≥ 27 events
KXBUNDESLIGAGAME
More than 72hToo few events
24 to 72hToo few events
6 to 24h
−2.57¢−2.98 to −2.17 · ≥ 29 events
1 to 6h
−1.17¢−2.12 to −0.22 · ≥ 29 events
Last hour
−2.07¢−3.08 to −1.06 · ≥ 29 events
KXBUNDESLIGATOTAL
More than 72hToo few events
24 to 72hToo few events
6 to 24hToo few events
1 to 6hToo few events
Last hour
−2.48¢−2.78 to −2.19 · ≥ 20 events

Each row pools both sides and every line of a market family on one exchange. A market family carries the exchange's own name for it. Leagues and market families with no figure are in the cohort explorer below, each with the reason.

Cohort explorer

Every group of markets the Lab looked at: a market family on one exchange, in one window of time before the start. Where there is no crossing figure, the reason is shown in its place.

Premier LeagueSoccer

12 of 160 cells carry a crossing figure in this view. The rest: No fair price (68) · Nothing independent to compare with (60) · Start time unknown (14) · Too few events (3) · Not measured (3). 14 of the market families listed also had trades with no known start time; those trades are left out.

  • Kalshi, Polymarket and Novig, listed as EPL: 35 market families; start time known for 96% of the contracts traded; a fair price at the moment of the trade for 37% of the contracts traded where trades are recorded one by one; 93% of its cells carry no crossing figure.
Premier League: net cents a contract against fair after fees, or the reason there is no figure, by exchange, market family and time to start
Time to startNet against fair after fees, in cents a contract: the average and its 95% range
Kalshi · KXEPLGAME
More than 72h
−2.78¢−3.34 to −2.23 · ≥ 46 events
24 to 72h
−2.80¢−3.34 to −2.25 · ≥ 46 events
6 to 24h
−2.53¢−2.86 to −2.20 · ≥ 47 events
1 to 6h
−2.28¢−2.66 to −1.89 · ≥ 47 events
Last hour
−2.34¢−2.59 to −2.09 · ≥ 47 events
Kalshi · KXEPLBTTS
More than 72hToo few events
24 to 72h
−2.54¢−3.02 to −2.07 · ≥ 26 events
6 to 24h
−2.46¢−2.82 to −2.09 · ≥ 40 events
1 to 6h
−2.46¢−2.86 to −2.06 · ≥ 38 events
Last hour
−2.86¢−3.20 to −2.52 · ≥ 40 events
Kalshi · KXEPLTOTAL
More than 72hToo few events
24 to 72hToo few events
6 to 24h
−2.39¢−2.75 to −2.03 · ≥ 27 events
1 to 6h
−2.16¢−2.47 to −1.84 · ≥ 31 events
Last hour
−2.47¢−2.76 to −2.17 · ≥ 33 events
Kalshi · KXEPL1H
4 windowsNo fair price · 24 to 72h, 6 to 24h, 1 to 6h, Last hour
Kalshi · KXEPL1HBTTS
4 windowsNo fair price · 24 to 72h, 6 to 24h, 1 to 6h, Last hour
Kalshi · KXEPL1HSCORE
4 windowsNo fair price · 24 to 72h, 6 to 24h, 1 to 6h, Last hour
Kalshi · KXEPL1HSPREAD
4 windowsNo fair price · 24 to 72h, 6 to 24h, 1 to 6h, Last hour
Kalshi · KXEPL1HTOTAL
4 windowsNo fair price · 24 to 72h, 6 to 24h, 1 to 6h, Last hour
Kalshi · KXEPL2H
4 windowsNo fair price · 24 to 72h, 6 to 24h, 1 to 6h, Last hour
Kalshi · KXEPL2HBTTS
4 windowsNo fair price · 24 to 72h, 6 to 24h, 1 to 6h, Last hour
Kalshi · KXEPL2HSPREAD
4 windowsNo fair price · 24 to 72h, 6 to 24h, 1 to 6h, Last hour
Kalshi · KXEPL2HTOTAL
4 windowsNo fair price · 24 to 72h, 6 to 24h, 1 to 6h, Last hour
Kalshi · KXEPLCORNERS
All 5 windowsNo fair price
Kalshi · KXEPLFIRSTGOAL
Last hourNo fair price
Kalshi · KXEPLFTTS
4 windowsNo fair price · 24 to 72h, 6 to 24h, 1 to 6h, Last hour
Kalshi · KXEPLGOAL
2 windowsNo fair price · 1 to 6h, Last hour
Kalshi · KXEPLSCORE
4 windowsNo fair price · 24 to 72h, 6 to 24h, 1 to 6h, Last hour
Kalshi · KXEPLSPREAD
All 5 windowsNo fair price
Kalshi · KXEPLTCORNERS
All 5 windowsNo fair price
Kalshi · KXEPLTEAMTOTAL
4 windowsNo fair price · 24 to 72h, 6 to 24h, 1 to 6h, Last hour
Polymarket · g
3 windowsNot measured · 6 to 24h, 1 to 6h, Last hour
Novig · Assists
All 5 windowsNothing independent to compare with
Novig · Both Teams To Score
All 5 windowsNothing independent to compare with
Novig · First Goal Scorer
More than 72hNo fair price
24 to 72hNothing independent to compare with
6 to 24hNothing independent to compare with
1 to 6hNothing independent to compare with
Last hourNothing independent to compare with
Novig · Fouls
2 windowsNothing independent to compare with · 1 to 6h, Last hour
Novig · Goals Assists
4 windowsNothing independent to compare with · 24 to 72h, 6 to 24h, 1 to 6h, Last hour
Novig · Moneyline 3 Way Draw
All 5 windowsNothing independent to compare with
Novig · Moneyline 3 Way Win
All 5 windowsNothing independent to compare with
Novig · Player Goals
All 5 windowsNothing independent to compare with
Novig · Saves
1 to 6hNo fair price
Last hourNothing independent to compare with
Novig · Shots On Target
All 5 windowsNothing independent to compare with
Novig · Spread
All 5 windowsNothing independent to compare with
Novig · Team Total Corners
All 5 windowsNothing independent to compare with
Novig · Total
All 5 windowsNothing independent to compare with
Novig · Total Corners
4 windowsNothing independent to compare with · 24 to 72h, 6 to 24h, 1 to 6h, Last hour

786 Kalshi series are not matched to a league, so they are left out of these lists. None of them carries a figure. Why: Start time unknown (786).

Why a cell has no number

Too few events.
Not enough events: fewer than 20 stand behind it, so no number is shown.
Start time unknown.
The true start of the event could not be confirmed, so trades made before the start cannot be told from trades made during play.
No fair price.
There was no fair price at the time of the trades to compare them with.
Nothing independent to compare with.
The only yardstick was the market's own closing price or its result. Measuring a price against itself says nothing, so it is not shown.
Fair price too sparse.
Too few of the trades had a fair price recorded at the same moment.
Off the main line.
The market is an alternate line away from the main one.
Not measured.
The Lab could not measure it reliably: the fee could not be confirmed, or the data comes as volume bars with no single trades to price.

A time window that is not listed for a market family had no trades.

What moved since the last edition

Crossing figures that changed by a cent or more from one nightly edition to the next, where both had at least 20 events.

No crossing figure moved by a cent or more since the 2026-10-13 edition.

Methodology and limits

How the figures on this page are made, and what they cannot tell you.

What the window covers.
The last 90 days of trading, and only trades made before each event's start. Nothing from during play is used. It is not a settled-only record: Kalshi's trades are collected once a market has settled, but Novig's are collected as they happen, so the window can include trading on events that have not started yet. The chips at the top of the page show how recent each exchange's data is.
Ranges are worked out event by event.
Trades in the same event move together, so a 95% range treats each event, not each trade, as one observation. That makes it wider, and more honest. Where a figure pools both sides or several lines of a market family, its range is an approximation, built to err on the wide side.
Events are counted as “at least”.
An events count is a floor: the true number of separate events behind a figure can be higher. A figure needs at least 20.
Wash and voided trades are left out.
Trades flagged as wash trades are left out of the retail flow and of every crossing figure. Trades in a market that was later voided are left out of every crossing figure.
Retail and block trades are counted apart.
A block trade is one the exchange labels a block, or any single trade of more than 100 contracts. Flow counts retail-sized trades and gives blocks as a share; crossing figures use both. Polymarket's data comes as volume bars, which cannot be split.
No order is simulated.
Every figure describes trades that happened. Nothing here estimates what would have happened to an order of yours: whether it would have traded, at what price, or how much of it.
The fair price is an estimate too.
A crossing figure is measured against the Settlis fair price at the moment of each trade. The 95% range covers the luck of which events were sampled. It does not cover an error in the fair price.
Fees are taken at the per-contract rate.
A crossing figure takes off the exchange's taker fee at its rate for one contract. Kalshi rounds each order's fee up to the next cent, so a small order pays more for each contract than the figure assumes. Where a series' fee could not be confirmed, the cell is marked Not measured.
Start times, and the 7 September 2026 correction.
A time-to-start window is used only when the event's true start time is known. Since a correction recorded on 7 September 2026, a start time is never worked out from the time a market closed, because that can depend on the result. Markets with no known start are marked Start time unknown and carry no time-to-start figure.
Every participant’s trades are in here.
The counts and the figures cover all trading on each exchange, Settlis's own trades among them.
Information only.
These are measurements of the past, published for information. They are not advice, and they do not say what any future trade will cost.

Corrections recorded in this edition

  • 7 Sep 2026: Kickoff times are no longer derived from a market's close, which can depend on the result. Markets without a known kickoff are grouped as 'kickoff unknown' and carry no time-to-start figures.

The full Methodology sets out the fair price, the fees and the Lab in more detail.

Take it further

Paper trading tests a strategy on these markets with no real money and no orders. Paper results are hypothetical.

Test a strategy on paperJoin the waitlist

Information only · not advice

Settlis Lab: what it costs to trade, and what crossing has cost against fair