7 Betting Market Mistakes That Lead to Bad Lines
A troubleshooting guide to stop taking bad lines in betting and prediction markets — a bad line test, headline-odds traps (including “stock-market bets”), line shopping, paying the bid–ask spread, fee-curve mistakes, comparing vigged odds, trusting volume, and ignoring settlement risk so you can audit any quote into a comparable net, executable price.

You keep clicking what looks like the best price, then watching the market move against you—or getting filled worse than the number you thought you were taking. That usually isn’t “bad luck”; it’s a hidden cost you didn’t model.
Get it wrong and you donate edge through the bid–ask spread, slippage, fees that change with price, apples-to-oranges odds comparisons, or contract terms that delay or complicate settlement. This troubleshooter gives you seven concrete mistake patterns to check, so you can pinpoint whether your problem is price, spread, fees, volume signals, or resolution risk before you size up.
Chasing headline odds
A “bad line” isn’t “I lost.” It’s when you consistently pay a worse net executable price than a comparable alternative—meaning the price you could actually get filled at, for your size, after fees and realistic exit costs.
Headline odds encourage bad comparisons because they’re often just a screenshot of a moment, or a “last trade” that may be unrepeatable. Your fill is constrained by what’s sitting on the order book right now, and a market order’s average execution price can worsen as it consumes multiple price levels. On exchange-style markets, your order size is limited by the total capital available at the odds you want—so the “headline” price can be there, but not in enough size to matter.
Bad line test
- Record the best buy and best sell right now (best offer and best bid—the prices you can trade immediately).
- Record the size available at those prices; if your order is bigger, your true average entry/exit won’t match the headline.
- Add fees in the platform’s formula, not your memory: Kalshi’s schedule uses a p×(1−p) fee curve and rounds fees up; Polymarket publishes category-level taker fee rates using the same p×(1−p) structure and charges makers no fee.
- Include time-to-resolution as a cost of capital: on Kalshi the displayed close time may not equal the determination time; on Polymarket resolution proposals have a 2‑hour challenge period.
- Compute your break-even from the executable entry and executable exit, net of fees—not from the displayed %.
Stock-market bets
You can “bet on the stock market” by trading markets whose payoff depends on a stock or index outcome (for example, whether an index finishes above a level by a date). “Betting against the stock market” means taking the opposite outcome in that market (the “down” side of the proposition), not necessarily shorting shares or trading options.
Not line shopping
A single-venue quote turns “63%” into a trap, because identical questions can trade at different prices and liquidity across betting markets.
- Freeze the question. Make sure you’re comparing the same outcome and payout across venues, not “close enough.”
- Pull at least two live quotes at the same time. MarketsPrediction shows the same market across platforms side by side and includes a visible “Last updated” timestamp—use it to confirm you’re comparing simultaneous quotes, not stale ones.
- Decompose the number before you judge it:
- Price (the displayed %)
- Spread (gap between best buy and best sell)
- Fees (what the venue actually charges for your order type)
- Depth (how much you can trade near that price)
- Time-to-resolution (how long your capital is locked)
- Pick the venue where your break-even is lowest for your size, not where the headline looks prettiest.
Paying the spread
The line you saw is often a print. The line you paid is the book.
-
Start with executable prices, not last trade. Write down the best bid and best ask and the size available at each.
-
Price ≠ spread. The bid–ask spread—the gap between the best price you can buy at right now (ask) and the best price you can sell at right now (bid)—is a cost the moment you “cross” it to get filled immediately.
-
Size turns into slippage. If your order is larger than what’s sitting at the best price level, you “walk the book” and your average fill worsens. That’s slippage—the difference between the price you expected and your average fill price when your order consumes multiple price levels.
-
Only then layer in fees. If you can post a resting order (a “maker,” meaning you add liquidity instead of taking it), the fee regime can be different: Polymarket states makers are never charged fees (takers only). Kalshi’s schedule also has a lower maker coefficient (0.0175 vs 0.07) and charges no fee to cancel a resting order.
-
Compute break-even from entry and exit. If you can’t write “buy here, sell there” using bid/ask + depth + fees, your “63%” isn’t one number—it’s a guess.

Misreading fee curves
A posted “5% taker fee” (or “0.07 coefficient”) isn’t your real cost in betting markets when the fee is p×(1−p), gets rounded, and you also cross the book.
-
Start by labeling your order. A maker posts a resting limit order that adds liquidity; a taker matches immediately against existing orders for an instant fill and (on some venues) is the side that gets charged.
-
Compute the curve fee at your entry price, not “the fee rate.” On Polymarket, taker fees use: fee = C × feeRate × p × (1−p). In Sports, feeRate = 0.05. If you take 100 contracts at p = 0.71: p×(1−p)=0.2059 → fee = 100×0.05×0.2059 = 1.0295 USDC.
-
Compute the fee again on the exit. If you later take the bid at p = 0.69: p×(1−p)=0.2139 → fee = 100×0.05×0.2139 = 1.0695 USDC. Round trip taker fees: 2.0990 USDC.
-
Add the spread you crossed. Buying 0.71 then selling 0.69 burns $2.00 on 100 contracts from price alone. Total “enter + exit” cost here is $2.00 + $2.0990 = $4.0990, meaning you need about $0.04099 per contract of favorable movement just to break even.
-
Account for rounding (it bites both ways). Kalshi’s fee is calculated as round up(M × 0.07 × C × P × (1−P)); their schedule’s own example shows $1.47 of fee for 100 contracts at $0.70. Polymarket rounds fees to 5 decimals, with the smallest charged fee 0.00001 USDC.
If you don’t model “entry fee + exit fee + spread,” the posted rate is the least important number in the trade.
Comparing vigged odds (remove overround first)
A sportsbook market is the set of prices a bookmaker posts across all outcomes of the same event (for example, a 3‑way moneyline: Home/Draw/Away). Those prices include overround ( vig )—the fact that the implied probabilities add to more than 100%, and the excess is the book’s built-in margin.
A futures bet in sports betting is the same idea stretched over time: you’re betting now on a season-long outcome (champion, win total, awards), with settlement much later.
Steps to compare “better odds” correctly
- Convert each outcome to an offered probability. Use decimal odds: offeredProb = 1/odds.
- Add them up to find the overround. For an N‑outcome market: 1 + v = Σ(1/DOi). If the sum is 1.0427, the overround is 4.27%.
- De-vig (normalize) the whole set. De-vigging means adjusting the raw implied probabilities so they sum to 100%: fairProb(i) = offeredProb(i) / ΣofferedProb.
- Only now compare across books—or to % markets. A “46%” prediction-market price should be compared to your de-vigged fair probability, not the sportsbook’s vigged implied probability.

Trusting volume blindly
High volume feels like “the market is sharp.” It isn’t. Volume is just activity, and you can still be paying a bad line once you unpack what your break-even really depends on.
- Treat volume as flow, not truth. In a January 2026 analysis of Kalshi, the hypothesis that prices are an unbiased predictor is rejected across all volume quintiles, and the authors find no evidence that higher-volume markets are more efficient predictors. The same paper reports the average rate of return on Kalshi contracts is about minus 20%.
- Separate volume from open interest. Open interest is how many contracts are still open (not closed/settled); volume just counts how much traded. High volume with low open interest can mean churn, not durable two-sided conviction.
- Re-price “busy” into tradable components. Volume doesn’t tell you today’s spread, your fill depth near the quote, or what fees you’ll pay to enter and exit—so “63%” still isn’t a single number in practice.
- Remember time-to-resolution is part of the line. A fast-turning market and a slow-settling one can show the same price, but the slower one ties up capital longer, changing your real hurdle rate.
- Anti-longshot-bias rule: demand extra edge under 10¢. That same Kalshi study reports buyers of contracts priced below 10¢ lose over 60% of their money in-sample. Cheap longshots aren’t “value” by default; they’re where pricing errors can hurt you most.
Ignoring settlement risk
Resolution/settlement—the platform’s process for finalizing an outcome and paying winners, including timing, data sources, and dispute rules—is part of the line whether you model it or not.
-
Separate “close” from “determination.” On Kalshi, the displayed market close time may not equal the determination time, and trading can end before or after the event for operational reasons while settlement waits for the official result from the source agency.
-
Price the capital lock-up in your entry decision. Kalshi says settlement is often within about 3 hours after the official result is confirmed; that’s time your capital (and your ability to redeploy) is tied to a process, not a price.
-
Read the dispute path like a risk doc, not fine print. Kalshi’s rule filing describes a settlement review process that can be initiated when a member disputes settlement within 6 hours of the end of the dispute timeframe window—so “I’ll just unwind if it gets weird” may not be available when you need it.
-
Understand the oracle mechanics before you treat the market as “cash at close.” Polymarket resolves via the UMA Optimistic Oracle: a resolution proposal requires posting a USDC bond, there’s a 2-hour challenge period, and proposing too early can forfeit the bond.
-
Pre-trade checklist (before you size up): confirm the exact settlement source, close vs determination time, dispute/challenge window, who can propose/contest, and what happens if the settlement source changes or becomes unreliable.
Stop Paying Hidden Edge Away
If the market keeps moving “against you,” the problem usually isn’t luck—it’s that you’re trading the screenshot instead of the tradeable reality. A line is only “good” when your break-even is built from executable bid/ask prices, the depth you can actually fill, entry-and-exit fees on the p×(1−p) curve (maker vs taker), and the time and rules that govern settlement. On your very next bet, write down the best bid/ask + size, model your entry and exit net of fees, and only then decide whether the number is still worth taking. If that feels like extra work, that’s the point: the “hidden costs” you didn’t model are exactly what turned a pretty price into a bad line.
Frequently Asked Questions
- Is a posted fee rate the same as what you actually pay in betting markets?
- No—on Kalshi the trading fee is calculated as round up(M × 0.07 × C × P × (1−P)), so your cost changes with price, contract count, and rounding rather than matching a single flat percentage.
- Do makers and takers pay the same fees on Polymarket?
- No—Polymarket charges taker fees using fee = C × feeRate × p × (1−p), and makers are never charged fees; the taker feeRate is category-specific (for example Sports 0.05, Politics 0.04, Crypto 0.07, and Geopolitics 0).
- How do I remove vig (overround) before comparing sportsbook odds to prediction-market prices?
- Convert each outcome’s decimal odds to offeredProb = 1/odds, add them to get 1+v = Σ(1/DOi), then de-vig by dividing each offeredProb by that sum so the probabilities total 100%.
- Are 1¢–10¢ longshot contracts “cheap value” in betting markets?
- Not by default—the Bürgi/Deng/Whelan Kalshi study reports that investors who buy contracts costing less than 10¢ lose over 60% of their money in-sample, so you should demand a larger edge than the sticker price implies.
- Why can’t I always get the headline odds I see on a betting exchange or order book?
- Because your fill is limited by how much capital is actually available at that price level—exchange-style markets can show a price, but not enough size to fill your full order at that odds point.