Kalshi Wins the Moneyline. The Spread and Total Are More Complicated.
Across the last 30 days of The Odds Gap scans (and after applying Kalshi's per-contract taker fee to every quote, since most bettors hit the ask rather than post limit orders), Kalshi has the best moneyline price 34.8% of the time it's quoting. That's the highest share of any single book in a field of 17. On spreads, the same fee math drops Kalshi's best-price share to 2.9%. On totals: 13.8%. The structural "no embedded vig" advantage is real, but it's much more of a moneyline story than the across-the-board sweep originally claimed here.
The Odds Gap pulls every major book every hour during the day (top of every hour, 7am to 9pm ET) and records which one has the best price across moneylines, spreads, and totals. The above percentages are calculated only on snapshots where Kalshi was actually quoting at the same line as the sportsbook consensus. When Kalshi's strike doesn't match (e.g., Kalshi at 4.5 while books are at 5.0), the snapshot is dropped from the comparison entirely so Kalshi is never graded against a different bet.
Methodology note up front: Kalshi charges a per-contract taker fee on the standard sports schedule of roughly ceil(0.07 × P × (1 − P) × 100) cents per contract (1¢ at the wings, 2¢ at coin-flip prices). The Odds Gap adds that to every Kalshi yes-ask before converting to American odds, because a typical bettor pays the ask plus the fee, not the raw market price. The raw market would put Kalshi's ML share around 43%, spread around 50%, total around 64%. Those numbers wouldn't reflect what a real bettor takes home.
Why moneyline holds up but spreads collapse
Sportsbook moneylines have a wide range of prices: -150 / +130, -300 / +250, +200 / +180. The vig spreads each side a few percentage points off fair, and Kalshi (even after the 1-2¢ fee) usually beats at least one side because there's room. Kalshi loses some of its edge on close moneylines (50/50 games where the fee bites hardest), but it's still by far the most-likely-to-be-best single book in the field of 17.
Spreads and totals are a different shape. The standard market is -110 on both sides, a tight 4.5% hold split symmetrically. Kalshi's raw price typically lands a hair better than -110 (think -100 to -107). After the 2¢ taker fee, that hair-of-edge gets eaten. A Kalshi spread that was raw -100 becomes -108 after fee, still better than -110, but if any single sportsbook in the field of 17 happens to be at -105 instead of -110 (which is common, since books shade lines based on action), Kalshi loses the comparison. Spread/total markets are won by tiny margins, and the fee is exactly the size of those margins.
The takeaway isn't that Kalshi's spreads are bad. They're competitive. They just don't outright lead the market the way the moneyline does, once you factor in the cost of taking the price. If you're shopping spreads, Kalshi is one of seventeen options to check, and one of the better ones, but not the runaway leader the moneyline numbers suggest.
What's actually different about Kalshi
Traditional sportsbooks are market-makers. They post a price, take action on both sides, and bake a spread into the line so the math works out in their favor regardless of who wins. That spread is called vig (or juice, or hold), and it's how the business funds itself. A standard NBA moneyline at -110 / -110 represents about 4.55% vig: the book keeps roughly $4.55 of every $100 risked across both sides.
That isn't a knock. It's how a sportsbook is structured. Without vig, books couldn't pay traders, manage risk, run promos, or stay in business. Every major US book charges some version of it.
Kalshi works differently. It's not a sportsbook. It's a CFTC-regulated event-contract exchange. A market like "Will the Knicks beat the Celtics tonight?" is a yes/no contract. Two traders take opposite sides at a single agreed price. There's no house, no spread baked into the line, and the price floats to whatever supply and demand land on. Kalshi does charge a per-contract taker fee when you cross the spread (more on that just below), but there's no embedded vig in the line itself the way a traditional book has.
Kalshi recently extended this structure to multi-leg bets via a product called Combos: bundle several yes/no contracts into a single all-or-nothing position. The pricing mechanics differ from a standard sportsbook parlay (more on that in the tradeoffs below), but the no-house foundation carries through.
Maker fees, taker fees, and why Kalshi still isn't vig
Kalshi does charge fees. They just work the way exchange fees work in equities or crypto, not the way vig works at a sportsbook:
- Makers post limit orders. They sit on the book waiting to be filled, adding liquidity. Kalshi charges them no fee on sports contracts.
- Takers hit existing orders. They cross the spread and fill immediately, consuming liquidity. They pay a per-contract fee, typically a few cents per $1 contract, scaled by the trade price.
That structure is meaningfully different from sportsbook vig in two ways. First, it's optional: place a limit order at your target price and wait, and you pay zero. Vig isn't optional. Every bet at every sportsbook pays it, every time, no exceptions. Second, it's transparent and separate from the line: the contract midpoint on Kalshi reflects the market's actual probability estimate, and the fee is an explicit line item you see before you trade. A sportsbook hides its fee inside the price. You can't see the "fair" number on DraftKings without backing the hold out yourself.
That's why the percentages at the top of this post are post-fee. The earlier methodology compared Kalshi's raw market price against the books' bid-ask, which made Kalshi look like a runaway leader on every market. Once you bake in the fee a typical bettor actually pays, the picture is more nuanced. Kalshi still wins moneylines more than any single book in the field of 17. Spreads and totals turn into closer races where the win usually goes to whichever sportsbook happens to be shading off the consensus line that day.
Kalshi runs spreads and totals as yes/no contracts too: same structural shape, same lack of embedded vig in the line. The difference is just that on -110-style markets the taker fee is large relative to the margin Kalshi's raw price beats by. So worth checking on every market, especially moneylines. But don't assume Kalshi is the right pick on every spread or total the way the moneyline data might suggest.
The compounding case
A few percent of vig per bet doesn't sound like much. Per bet, it isn't. But every wager passes through that fee (win or lose), and it applies whether you're playing the moneyline, the spread, or the total. Compounded across a season of bets, the math gets uncomfortable.
A bettor who wagers $100 a night across 200 nights at a market with 4.5% hold has paid roughly $900 in vig before any single ticket settles. At 5.5%: closer to $1,100. On Kalshi: zero embedded fee, plus whatever taker fees apply on the contracts that have them.
None of this is a referendum on whether traditional sportsbooks are worth it. They obviously are for plenty of bettors: boosted parlays, niche player props, and active promos all genuinely matter. It's a referendum on what shopping the line is actually buying you, market by market.
Two concrete examples
Numbers feel different attached to a real bet. Two from this past week:
NHL, Flyers moneyline. Kalshi had the Flyers at +156. LowVig had them at +142. Same team, same game, same night. A $100 winning ticket pays $156 on Kalshi and $142 on LowVig. That's $14 of edge per $100 wagered, just for picking the better-priced book.
NBA Futures, 76ers to win title. Kalshi had the Sixers at +9900. DraftKings had them at +12000. FanDuel had them at +15000. Here the gap flips: traditional books are slower to update futures markets and end up with prices the exchange has already moved past. A $100 ticket pays $9,900 on Kalshi, $12,000 on DraftKings, and $15,000 on FanDuel.
Same team to win the same trophy. Both prices are real. Neither book is wrong in isolation, but if you've decided you want to be on Philadelphia, the FanDuel ticket pays 51% more than the Kalshi one. That's the whole point of this post: the best price genuinely lives in different places depending on the market, and the exchange is not always that place. On moneylines, Kalshi leads the field. On spreads and totals, on most futures, the best price is somewhere else more often than not.
Why the moneyline advantage holds
Three structural reasons Kalshi consistently wins the moneyline (and why the spread/total picture is closer):
- Different economics. Kalshi makes money on platform fees and float. Sportsbooks make money on hold. Different incentives, different prices on the same event. The bigger the embedded hold (moneylines with skewed underdog/favorite splits are the worst), the more room Kalshi's fair-price-plus-fee model has to win.
- Different risk management. Sportsbooks balance one-sided action by skewing lines. The popular side drifts away from fair so the book doesn't take all the risk; the unpopular side gets sharper. Kalshi's price reflects whoever is willing to take the other side at that exact moment, no skew necessary. On spreads and totals where books shade by ½ point rather than by price, that skew advantage shrinks.
- Different speed. Exchanges update tick-by-tick. Sportsbooks have traders, risk teams, and approval workflows. On futures and pre-market lines especially, that latency turns into pennies (sometimes dollars) of edge. That's why the 76ers futures gap above runs in Kalshi's favor on raw price but flips against it once you start comparing total payouts at long odds.
The honest tradeoffs
This isn't a Kalshi infomercial. There are real reasons most bettors keep accounts at multiple books:
- Parlays work differently. Kalshi recently launched a parlay product called Combos. Same all-or-nothing payout as a sportsbook parlay, but each combo is priced live by market makers (the combo price isn't always the product of the leg prices), there's no cash-out once you're filled, and DNPs settle to the contract's last traded price rather than voiding the leg. If you want familiar sportsbook parlay mechanics, traditional books are still smoother.
- Liquidity. Kalshi markets on smaller events (a midweek MLB game in May, a niche prop) can be thin. You may not be able to size up.
- Market coverage. Kalshi doesn't price every player prop or every alt line. Traditional books still have it on breadth.
- Regulatory variance. Kalshi is available in all 50 states under CFTC oversight, but the exact contracts you can trade vary, and the legal posture is still evolving in some jurisdictions.
- Promos. Boosted odds, no-sweat first bets, and parlay insurance can absolutely beat the line for the duration of the promo. After it clears, the embedded vig is back.
What to do with this
If you're serious about long-run results, three things:
- Always shop the line. A few percent of edge per bet sounds small. Compounded across a season of wagers across all three markets, it's the entire difference between profitable and losing.
- Lead with Kalshi on moneylines. The structural advantage is real and clearly the largest on ML markets. On spreads and totals, treat Kalshi as one good option to check, not the default winner. Shop those markets harder.
- Don't skip traditional books. They sometimes win the line outright (the 76ers futures example earlier is one), and they own categories Kalshi doesn't: player props, exotic alts, familiar parlay mechanics (cash-out, leg voids on DNP, deterministic pricing), and active promos. Different markets, different best venues.
The Odds Gap exists to make line-shopping take three seconds instead of three minutes. Every market, every book, Kalshi included, side by side.
Try Kalshi yourself
Sign up through the link below and Kalshi gives new users a $25 bonus to start with. Test the no-juice difference on your own bets.
Sign up on Kalshi for a $25 bonus →Who leads the market today?
Live best-price share across every sportsbook The Odds Gap tracks, refreshed hourly from 7am to 9pm ET.
Open Book Comparison →
Numbers in this post are based on The Odds Gap's 30-day rolling scan as of May 2026, with Kalshi prices fee-adjusted using the standard sports taker schedule (ceil(0.07 × P × (1 − P) × 100) cents per contract, where P is the contract price in dollars).
Live data is at /books and /gaps; methodology details at /methodology#prediction-markets.
Disclosure: the Kalshi sign-up link above is an affiliate link, not an ad partnership. The data and the structural argument in this post don't change with or without it.