- On a binary event contract, the YES price IS the market's implied probability: a 62c contract reads as roughly a 62% chance the event resolves YES.
- YES price + NO price should sum to ~$1.00 (100%); the small excess over 100% is the spread/fee analog, and on sportsbooks it is the vig or overround.
- To go from sportsbook odds: convert to implied probability, then de-vig by dividing each outcome's implied probability by the sum of all outcomes' implied probabilities.
- Expected value per $1 contract = (model probability x $1) - price. Edge = model probability - market-implied probability; you need positive edge AFTER fees to bet.
- Prediction-market prices are not destiny: a 90c contract means a 90% estimate, not a guarantee. Calibration is judged across many markets, not one outcome.
The one-sentence version
On a binary event contract, the price is the market’s implied probability. A YES contract trading at 62 cents reads, almost literally, as “the market thinks there is about a 62% chance this resolves YES.” Kalshi states it plainly: “A ‘Yes’ price of p cents implies a market-implied probability of about p% that the event will happen, and 1−p% that it will not” (Kalshi). Polymarket says the same under a heading literally titled “Prices = Probabilities” (Polymarket). So step one of reading any market is free: divide the price in cents by 100. Everything else in this guide — converting sportsbook odds, stripping out the vig, and computing expected value — is about getting to a clean probability you can compare against your own estimate.
Risk note: Event contracts carry real risk of loss. Implied probabilities are estimates, not guarantees. Nothing here is financial advice.
Why price equals probability on a binary contract
A binary event contract pays out $1.00 if the event happens and $0.00 if it does not. That payout structure is what makes the price-as-probability reading exact rather than a metaphor. If a contract pays $1 with probability p, its fair price — the price at which a risk-neutral trader breaks even — is simply p dollars. Buy YES at $0.65 and the market is, in effect, saying there is a 65% chance it happens: if you are right you pocket the $0.35 difference per contract, and if you are wrong you lose your $0.65.
Two structural facts follow, and both are worth committing to memory:
- YES price + NO price = $1.00. This is the fundamental identity of binary contracts. One side must win. If YES is 70c, NO is 30c; if YES falls to 45c, NO rises to 55c. Kalshi confirms the two prices “should sum to exactly $1,” and Polymarket describes the mechanism: when matched offers for the YES and NO side total $1.00, that dollar is converted into one YES share and one NO share, splitting the dollar between the two outcomes.
- Price moves with consensus, not a house line. Unlike a sportsbook that posts a fixed line, these are order-book markets. Kalshi “does not set prices on future events”; the price emerges from trades. Polymarket goes further and defines its displayed probability as the midpoint of the bid–ask spread — “the probability of 37% is the midpoint between the 34¢ bid and 40¢ ask” — falling back to the last-traded price only when the spread exceeds $0.10.
Why care about this beyond trivia? Because prices that aggregate dispersed information tend to be hard to beat. The forecasting literature finds prediction markets “quickly incorporate new information, are largely efficient, and impervious to manipulation,” and that they “generally exhibit lower statistical errors than professional forecasters and polls” (Snowberg, Wolfers & Zitzewitz, Brookings). For US elections, election-eve market forecasts have shown average absolute errors near 1.37% for presidential races (Berg, Forsythe, Nelson & Rietz / U. Iowa). The price is a strong prior. Your job is to find the rare case where it is wrong.
The price is not a clean probability — two adjustments
Two things stop the raw price from being the true probability.
First, the spread. The displayed midpoint hides a bid–ask gap. You cannot buy YES at the midpoint; you pay the ask and sell at the bid. Kalshi lists five reasons YES + NO can drift away from a clean $1.00: transaction costs, uneven liquidity, trader risk preferences, information asymmetry, and limits on capital or market access. In practice, the bid and ask straddle the “fair” probability, and the width is a cost you pay on entry and exit.
Second, on sportsbooks, the vig. A sportsbook is the cleaner teaching example because the markup is explicit and large. Sum the implied probabilities of both sides of a two-way sportsbook market and you get more than 100%. That excess is the overround (a.k.a. the vig or juice). For example, if both sides of a coin flip were priced at a 52.38% implied probability, the total would be 104.76% — and that extra 4.76% is the overround. As one strategy guide notes, you have to remove the vig “to gain an accurate picture of what bookmakers actually expect to happen in a game,” because the true probability is hidden behind it (Sports Betting Dime).
So the workflow is: odds → implied probability → de-vig → compare to your model. Let’s build each step.
Converting odds to implied probability
Most external signals — sportsbooks, fractional UK prices, decimal European prices — arrive as odds, not cents. Here are the conversion formulas, each verified against an odds-conversion reference (AceOdds; Kalshi). All outputs are raw implied probabilities (still including any margin).
| Odds format | Formula for implied probability | Worked example | Implied prob. |
|---|---|---|---|
| Event-contract price | price_cents / 100 | 62c | 62.0% |
| Decimal odds | 1 / decimal | 1.61 | 62.1% |
| American (negative) | |odds| / (|odds| + 100) | −150 → 150 / 250 | 60.0% |
| American (positive) | 100 / (odds + 100) | +200 → 100 / 300 | 33.3% |
| Fractional odds | 1 / (fraction + 1) | 3/1 → 1 / 4 | 25.0% |
A few quick sanity checks. Decimal 2.00 = 50% (1 / 2.00), which is even money. American −300 = 75% (300 / 400). American +200 = 33.3%, which equals the fractional 2/1. If a conversion gives you something above 100% or below 0%, you made an arithmetic slip — implied probabilities are bounded by [0%, 100%].
Note the relationship between a contract price and payout odds, which traders sometimes find useful. Kalshi maps it directly: a 25c price is “25% probability; 3-to-1 odds (to win 75c)”; 50c is “1-to-1 (even money)”; 75c is “1-to-3 odds (to win 25c).” A contract bought at price p pays profit of (1 − p) per dollar risked if it resolves YES, so the decimal-odds equivalent of a contract is 1 / p. That bridge lets you compare a 62c contract directly against a sportsbook’s 1.61 decimal line — same 62% implied probability, different venue.
Removing the vig: normalize to 100%
Once you have raw implied probabilities for every outcome of a market, the de-vig step is one operation: divide each outcome’s implied probability by the sum of all of them. This is the multiplicative (proportional) method, a standard approach for relatively efficient markets.
Fair (no-vig) probability of an outcome = (that outcome’s implied probability) ÷ (sum of all outcomes’ implied probabilities)
Worked example, using a two-way NHL moneyline (Sports Betting Dime):
| Step | Capitals (−300) | Golden Knights (+325) | Total |
|---|---|---|---|
| 1. Raw implied probability | 300/400 = 75.0% | ≈30%* | — |
| 2. Sum (the overround) | — | — | ≈105% |
| 3. De-vig: divide by the sum | 75 / 105 ≈ 71% | 30 / 105 ≈ 29% | 100% |
*The cited source rounds the +325 side to ~30% (it computes 100/325). Done exactly, +325 implies 100/425 ≈ 23.5%, which would change the totals; the point here is mechanical, and the figures above match the published source. After normalization the two fair probabilities sum to 100%, and the de-vigged 71% — not the raw 75% — is the bookmaker’s actual estimate, the number you compare against a market or your model.
You can run the same normalization on a prediction market when YES + NO drifts above $1.00 because of the spread: divide each side by the (YES + NO) total to recover a clean midpoint probability. On a tight, liquid Kalshi or Polymarket market the adjustment is tiny; on a wide one it is not.
Edge and expected value: turning a probability into a decision
A clean probability is only half the trade. The other half is your number. Edge is the gap between them:
Edge = model probability − market-implied probability
If your model says 70% and the de-vigged market says 62%, your edge is +8 percentage points. Positive edge is necessary but not sufficient — you still have to clear fees and the spread. To size the decision, convert edge into expected value (EV), “the average amount you win or lose per bet if you placed it infinite times” (Market Math).
For a binary contract bought at price p (in dollars) with your model probability q, on a one-contract ($1 payout) basis:
EV per contract = (q × $1) − p
equivalently EV = q − p (your edge, in dollars per contract)
Worked example. Buy YES at $0.62; your model says q = 0.70.
- If YES resolves (prob 0.70): you gain $1.00 − $0.62 = +$0.38.
- If NO resolves (prob 0.30): you lose −$0.62.
- EV = 0.70 × (+$0.38) + 0.30 × (−$0.62) = $0.266 − $0.186 = +$0.08 per contract.
That +$0.08 is exactly your 8-cent edge. On a $620 position (1,000 contracts) the expected profit is ~$80 before costs — a ~12.9% expected return on risk ($0.08 / $0.62). The general decimal-odds version gives the same answer: EV = stake × (q × decimal − 1) = $620 × (0.70 × 1.613 − 1) ≈ +$80 (Market Math).
Now subtract the fees
Fees eat edge, and on event contracts they are largest exactly where prices are most uncertain. Kalshi’s standard trading fee is round up(0.07 × C × P × (1 − P)), where C is contracts and P is price in dollars; it peaks at the 50c midpoint (~1.75c per contract) and shrinks toward the extremes (DeFiRate). At P = 0.62 that is about 0.07 × 0.62 × 0.38 ≈ 1.65c per contract, trimming our 8c edge to roughly 6.4c — still positive, but materially smaller. Fee structures differ sharply by venue: Polymarket charges no maker fee and no per-trade fee on most markets (with a 10 bps taker fee on Polymarket US), while Robinhood lists about $0.02 per contract (DeFiRate). Always net fees and the spread out of edge before you call a bet +EV. A 1-cent edge does not survive a 1.6-cent fee.
The bar for a real edge is high precisely because the price is informative. Sharp bettors in efficient markets often target edges of only a few percent; less-efficient prediction markets can show wider gaps, but a wide gap is also a signal you may be missing what the market knows.
A repeatable checklist
- Read the price as a probability (price_cents ÷ 100).
- Convert any external odds to implied probability with the table above.
- De-vig / normalize: divide each outcome by the sum of all outcomes so they total 100%.
- Compute edge = your model probability − the clean market probability.
- Compute EV = q − p per contract; multiply by position size.
- Subtract fees and spread. If EV is still positive, you have a candidate trade. If not, pass.
- Stay calibrated, not certain. Kalshi’s own warning is the right closer: “A 90c price doesn’t mean an event will happen; it means the market currently sees a 90% probability.” You judge a probability process across many markets, never a single outcome.
This calibration-first, edge-after-costs discipline is the foundation of how MispriceHQ approaches markets. Our own machine-learning model — which is being built to generate independent probability estimates to compare against live market prices — is still in development; it has no track record and has resolved no markets yet. When it ships, every signal will run through exactly this pipeline: clean probability in, edge net of fees out.
Frequently asked questions
Does the contract price exactly equal the probability?
It is the market's implied probability, not a guaranteed truth. A 62c contract means the market estimates about a 62% chance. Two small distortions apply: the bid-ask spread (the displayed price is usually the midpoint, but you trade at bid or ask) and, on sportsbooks, the vig. After removing those, you get a clean probability to compare against your own estimate.
Why do YES and NO sometimes add up to more than $1.00?
On a perfectly clean market, YES + NO = $1.00 because one side must win. In practice the sum can exceed $1.00 because of the bid-ask spread, transaction costs, and uneven liquidity (Kalshi lists five reasons). On sportsbooks the excess over 100% is explicit and large; it is called the vig or overround. Normalize by dividing each side by the total to recover a fair probability.
How do I convert American odds to implied probability?
For negative odds, divide the absolute value by (absolute value + 100): -150 becomes 150 / 250 = 60%. For positive odds, divide 100 by (odds + 100): +200 becomes 100 / 300 = 33.3%. For decimal odds, take 1 divided by the decimal (2.00 = 50%). These give raw implied probabilities that still include the bookmaker margin until you de-vig.
How do I remove the vig from a sportsbook line?
Convert every outcome to its raw implied probability, sum them (the total will exceed 100%), then divide each outcome's probability by that sum. Example: a market priced at 75% and 31% sums to 106%; the no-vig probabilities are 75/106 = 70.8% and 31/106 = 29.2%, which total 100%. The de-vigged number, not the raw one, is what you compare against your model.
What is edge, and how does it relate to expected value?
Edge is your model probability minus the clean market-implied probability. If your model says 70% and the market says 62%, edge is +8 points. Expected value per $1 contract is simply your edge in dollars: EV = (model prob x $1) - price = 0.70 - 0.62 = +$0.08 per contract. You need positive EV after subtracting trading fees and the spread before a bet is genuinely profitable long-term.
Do trading fees change whether a bet is +EV?
Yes, decisively. Kalshi's standard fee is round up(0.07 x contracts x price x (1 - price)), which peaks near the 50c midpoint at about 1.75c per contract and shrinks toward the extremes. A raw 8-cent edge at a 62c price loses roughly 1.6c to fees. A 1-cent edge would not survive at all. Always net fees and spread out of edge before calling a trade profitable; fee structures vary widely across venues.
- How to translate Kalshi market prices into real-world odds and probabilities — Kalshi
- How are prices determined? (Kalshi Help Center) — Kalshi
- How Are Prices Calculated? (Prices = Probabilities) — Polymarket
- Odds Converter - Decimal, Fraction, American & Probability — AceOdds
- Beating the Juice: How to Remove the Vig from Sports Betting Lines — Sports Betting Dime
- How to Calculate Expected Value (EV) in Betting: Formula, Examples & Free Calculator — Market Math
- Prediction Market Fees: Kalshi, Polymarket, Robinhood & Coinbase — DeFiRate
- Prediction Markets for Economic Forecasting — Brookings Institution (Snowberg, Wolfers & Zitzewitz)
- Accuracy and Forecast Standard Error of Prediction Markets — University of Iowa (Berg, Forsythe, Nelson & Rietz) (2003-07)
- Expected Value in Player Prop Betting — Wizard of Odds