Get Tokenomics

LMSR Calculator (Prediction Markets)

LMSR prediction market calculator: compute contract prices, purchase cost for Yes/No outcomes, and slippage from the logarithmic market scoring rule.

How to use

  • Set the liquidity parameter (b): higher values mean less slippage on purchases but a larger subsidy the market maker must post.
  • Specify current quantities of sold “Yes” and “No” contracts — this determines current prices.
  • Set how many “Yes” and “No” contracts you want to buy.
  • The cards show current prices, purchase cost, and slippage.
  • The chart visualizes price changes as contracts are purchased.
Maker worst-case loss
For an n-outcome LMSR market the market maker’s maximum loss is bounded: max_loss = b · ln(n). For a binary market (n = 2) with default b = 100 USD, this is 100 · ln(2) ≈ 69.31 USD. This is the subsidy the operator must post up front, and the single most important number when choosing b.
Rule of thumb for b
Higher b → prices move less per contract traded (lower slippage), but the subsidy grows linearly. Pick b so that b · ln(n) equals the dollar amount you are willing to lose to bootstrap liquidity.
Not used by Polymarket
LMSR was used by early prediction markets such as Augur v1 and Gnosis legacy PM. Polymarket does not use LMSR — it runs a Central Limit Order Book (CLOB) on Polygon via the CTF Exchange (the April 2026 rollout introduced CTF Exchange V2 and CLOB v2). Manifold Markets uses Maniswap (constant-product variants), also not LMSR. See the prediction markets article for platform-by-platform context.

Calculator

LMSR Calculator (Prediction Market)
Yes price
$0.50
No price
$0.50
Purchase cost ($)
$5.12
Slippage
2.5%

Formulas

The logarithmic market scoring rule was introduced by Robin Hanson (2003, 2007). See Hanson, “Logarithmic Market Scoring Rules for Modular Combinatorial Information Aggregation”.

General n-outcome form

C(q) = b × ln( Σᵢ exp(qᵢ/b) )
  • C(q) — LMSR cost function, USD (computed). The purchase cost of moving the market from state q to state q′ is C(q′) − C(q).
  • qᵢ — total number of contracts sold for outcome i (qty)
  • b — liquidity parameter, denominated in the collateral currency (USD). Numerically equal to the qty of contracts; the maker’s worst-case loss is b · ln(n) for n equally-likely outcomes.
  • n — number of mutually exclusive outcomes
  • Σᵢ — sum over all outcomes i = 1..n
pᵢ = exp(qᵢ/b) / Σⱼ exp(qⱼ/b)
  • pᵢ — current price of outcome i, USD (computed). It is the softmax of qᵢ/b and equals ∂C/∂qᵢ.
  • qᵢ — number of contracts sold for outcome i (qty)
  • b — liquidity parameter, USD
  • Σⱼ — sum in the denominator runs over all outcomes j = 1..n
  • By construction Σᵢ pᵢ = 1, so prices behave as probabilities.

Binary specialization (Yes / No)

Cost = b × ln( exp(q_yes/b) + exp(q_no/b) )
  • b — liquidity parameter, USD
  • q_yes — number of Yes contracts sold (qty)
  • q_no — number of No contracts sold (qty)
  • Cost — LMSR cost function, USD (computed). The binary case of the general formula with n = 2. The purchase cost is C(after) − C(before).

Maker worst-case loss

max_loss = b × ln(n)
  • max_loss — maximum possible loss for the market maker (USD, computed). This is the subsidy that must be posted.
  • b — liquidity parameter, USD
  • n — number of outcomes. For a binary market (n = 2), max_loss = b · ln(2) ≈ 0.693 · b.

Slippage

Slippage_i = (Avg_price_i / Ref_price_i) − 1
  • Slippage_i — slippage for a single-side purchase of outcome i (computed)
  • Avg_price_i — average price per purchased contract on side i: ΔCost_i / Quantity_i (computed)
  • Ref_price_i — price pᵢ of outcome i before the purchase
  • Slippage shows the overpayment relative to the pre-trade price caused by the trade itself.
  • Defined per side. If a user buys both Yes and No simultaneously, slippage is computed against whichever side has the larger quantity (treated as the dominant leg). For a clean per-side number, execute the two buys sequentially and apply the formula to each leg against the price prevailing immediately before that leg.
Learn more about the model
Read article →