{
  "id": "no-vig",
  "version": "ce07c6fe5ff9",
  "status": "published",
  "name": "No Vig Calculator",
  "question": "What are the no-vig odds?",
  "summary": "Removes the bookmaker’s margin (vig) from the odds of every outcome of one event, and gives each outcome’s fair probability and fair odds, with the size of the margin.",
  "category": "game",
  "subcategory": "betting",
  "url": "https://www.acalculator.org/game/no-vig-calculator",
  "markdown": "https://www.acalculator.org/game/no-vig-calculator.md",
  "kind": "function",
  "method": "With decimal odds dᵢ: implied probability pᵢ = 1/dᵢ; book B = Σ pᵢ; fair probability qᵢ = pᵢ ÷ B; fair decimal odds = 1 ÷ qᵢ = dᵢ × B; overround = B − 1; vig = 1 − 1 ÷ B.",
  "assumptions": [
    "The margin is removed in proportion to each outcome’s implied probability (the multiplicative or normalization method). Other methods (additive, power, Shin) give slightly different fair odds, most of all for long shots.",
    "The odds come from one bookmaker and cover every outcome of the event.",
    "Fair odds estimate what the market expects; they are not the true chances.",
    "Results are mathematics, not betting advice."
  ],
  "inputs": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "type": "object",
    "properties": {
      "format": {
        "title": "Odds format",
        "description": "The format of every outcome’s odds: American, decimal, or fractional.",
        "type": "string",
        "enum": [
          "american",
          "decimal",
          "fractional"
        ]
      },
      "outcomes": {
        "title": "Outcomes",
        "description": "The odds of each outcome of one event from one bookmaker, one row per outcome. List every outcome.",
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "odds": {
              "title": "Odds",
              "description": "The odds of this outcome, in the chosen format.",
              "type": "string",
              "maxLength": 30
            }
          }
        }
      }
    }
  },
  "outputs": {
    "fair1": {
      "label": "Fair probability, outcome 1",
      "description": "Outcome 1’s implied probability ÷ the sum of all implied probabilities.",
      "format": "percent"
    },
    "fairOdds1": {
      "label": "Fair American odds, outcome 1",
      "description": "Outcome 1’s odds with the margin removed, in American format, rounded to 2 decimals.",
      "format": "text"
    },
    "fairDecimal1": {
      "label": "Fair decimal odds, outcome 1",
      "description": "Outcome 1’s odds with the margin removed: 1 ÷ fair probability.",
      "format": "number"
    },
    "fair2": {
      "label": "Fair probability, outcome 2",
      "description": "Outcome 2’s implied probability ÷ the sum of all implied probabilities.",
      "format": "percent"
    },
    "fairOdds2": {
      "label": "Fair American odds, outcome 2",
      "description": "Outcome 2’s odds with the margin removed, in American format, rounded to 2 decimals.",
      "format": "text"
    },
    "fairDecimal2": {
      "label": "Fair decimal odds, outcome 2",
      "description": "Outcome 2’s odds with the margin removed: 1 ÷ fair probability.",
      "format": "number"
    },
    "fair3": {
      "label": "Fair probability, outcome 3",
      "description": "Outcome 3’s implied probability ÷ the sum of all implied probabilities.",
      "format": "percent"
    },
    "fairOdds3": {
      "label": "Fair American odds, outcome 3",
      "description": "Outcome 3’s odds with the margin removed, in American format, rounded to 2 decimals.",
      "format": "text"
    },
    "fairDecimal3": {
      "label": "Fair decimal odds, outcome 3",
      "description": "Outcome 3’s odds with the margin removed: 1 ÷ fair probability.",
      "format": "number"
    },
    "fair4": {
      "label": "Fair probability, outcome 4",
      "description": "Outcome 4’s implied probability ÷ the sum of all implied probabilities.",
      "format": "percent"
    },
    "fairOdds4": {
      "label": "Fair American odds, outcome 4",
      "description": "Outcome 4’s odds with the margin removed, in American format, rounded to 2 decimals.",
      "format": "text"
    },
    "fairDecimal4": {
      "label": "Fair decimal odds, outcome 4",
      "description": "Outcome 4’s odds with the margin removed: 1 ÷ fair probability.",
      "format": "number"
    },
    "fair5": {
      "label": "Fair probability, outcome 5",
      "description": "Outcome 5’s implied probability ÷ the sum of all implied probabilities.",
      "format": "percent"
    },
    "fairOdds5": {
      "label": "Fair American odds, outcome 5",
      "description": "Outcome 5’s odds with the margin removed, in American format, rounded to 2 decimals.",
      "format": "text"
    },
    "fairDecimal5": {
      "label": "Fair decimal odds, outcome 5",
      "description": "Outcome 5’s odds with the margin removed: 1 ÷ fair probability.",
      "format": "number"
    },
    "fair6": {
      "label": "Fair probability, outcome 6",
      "description": "Outcome 6’s implied probability ÷ the sum of all implied probabilities.",
      "format": "percent"
    },
    "fairOdds6": {
      "label": "Fair American odds, outcome 6",
      "description": "Outcome 6’s odds with the margin removed, in American format, rounded to 2 decimals.",
      "format": "text"
    },
    "fairDecimal6": {
      "label": "Fair decimal odds, outcome 6",
      "description": "Outcome 6’s odds with the margin removed: 1 ÷ fair probability.",
      "format": "number"
    },
    "fair7": {
      "label": "Fair probability, outcome 7",
      "description": "Outcome 7’s implied probability ÷ the sum of all implied probabilities.",
      "format": "percent"
    },
    "fairOdds7": {
      "label": "Fair American odds, outcome 7",
      "description": "Outcome 7’s odds with the margin removed, in American format, rounded to 2 decimals.",
      "format": "text"
    },
    "fairDecimal7": {
      "label": "Fair decimal odds, outcome 7",
      "description": "Outcome 7’s odds with the margin removed: 1 ÷ fair probability.",
      "format": "number"
    },
    "fair8": {
      "label": "Fair probability, outcome 8",
      "description": "Outcome 8’s implied probability ÷ the sum of all implied probabilities.",
      "format": "percent"
    },
    "fairOdds8": {
      "label": "Fair American odds, outcome 8",
      "description": "Outcome 8’s odds with the margin removed, in American format, rounded to 2 decimals.",
      "format": "text"
    },
    "fairDecimal8": {
      "label": "Fair decimal odds, outcome 8",
      "description": "Outcome 8’s odds with the margin removed: 1 ÷ fair probability.",
      "format": "number"
    },
    "fair9": {
      "label": "Fair probability, outcome 9",
      "description": "Outcome 9’s implied probability ÷ the sum of all implied probabilities.",
      "format": "percent"
    },
    "fairOdds9": {
      "label": "Fair American odds, outcome 9",
      "description": "Outcome 9’s odds with the margin removed, in American format, rounded to 2 decimals.",
      "format": "text"
    },
    "fairDecimal9": {
      "label": "Fair decimal odds, outcome 9",
      "description": "Outcome 9’s odds with the margin removed: 1 ÷ fair probability.",
      "format": "number"
    },
    "fair10": {
      "label": "Fair probability, outcome 10",
      "description": "Outcome 10’s implied probability ÷ the sum of all implied probabilities.",
      "format": "percent"
    },
    "fairOdds10": {
      "label": "Fair American odds, outcome 10",
      "description": "Outcome 10’s odds with the margin removed, in American format, rounded to 2 decimals.",
      "format": "text"
    },
    "fairDecimal10": {
      "label": "Fair decimal odds, outcome 10",
      "description": "Outcome 10’s odds with the margin removed: 1 ÷ fair probability.",
      "format": "number"
    },
    "overround": {
      "label": "Overround",
      "description": "How far the implied probabilities of all outcomes add up past 100%.",
      "format": "percent"
    },
    "note": {
      "label": "Note",
      "description": "Shown when the implied probabilities add up to 100% or less, which a single bookmaker’s full market never does.",
      "format": "text"
    },
    "vig": {
      "label": "Vig (bookmaker’s margin)",
      "description": "The share of all money staked the bookmaker keeps when every outcome pays the same: 1 − 1 ÷ (sum of implied probabilities).",
      "format": "percent"
    }
  },
  "defaultAnswer": {
    "inputs": {
      "format": "american",
      "outcomes": [
        {
          "odds": "-150"
        },
        {
          "odds": "+130"
        }
      ]
    },
    "outputs": {
      "fair1": 57.98319327731093,
      "fairOdds1": "-138",
      "fairDecimal1": 1.7246376811594204,
      "fair2": 42.016806722689076,
      "fairOdds2": "+138",
      "fairDecimal2": 2.38,
      "overround": 3.4782608695652173,
      "vig": 3.361344537815125
    },
    "text": "With the bookmaker’s margin removed, outcome 1 has a fair probability of 57.98% (-138)."
  },
  "examples": [
    {
      "given": {
        "format": "american",
        "outcomes": [
          {
            "odds": "-110"
          },
          {
            "odds": "-110"
          }
        ]
      },
      "expect": {
        "fair1": 50,
        "fair2": 50,
        "fairOdds1": "+100",
        "fairDecimal2": 2,
        "overround": 4.761904761904762,
        "vig": 4.545454545454541
      },
      "source": "hand calculation in content.mdx: 11/21 each, sum 22/21; fair 1/2 each"
    },
    {
      "given": {
        "format": "american",
        "outcomes": [
          {
            "odds": "-150"
          },
          {
            "odds": "+130"
          }
        ]
      },
      "expect": {
        "fair1": 57.98319327731093,
        "fair2": 42.01680672268908,
        "fairOdds1": "-138",
        "fairOdds2": "+138",
        "fairDecimal1": 1.7246376811594204
      },
      "source": "hand calculation in content.mdx: 3/5 ÷ 119/115 = 69/119; 10/23 ÷ 119/115 = 50/119"
    },
    {
      "given": {
        "format": "decimal",
        "outcomes": [
          {
            "odds": "2.2"
          },
          {
            "odds": "3.4"
          },
          {
            "odds": "3.6"
          }
        ]
      },
      "expect": {
        "fair1": 44.2836468885673,
        "fairDecimal3": 3.695187165775401
      },
      "source": "hand calculation in content.mdx: 5/11 + 5/17 + 5/18 = 3455/3366; fair 1 = 5/11 ÷ 3455/3366 = 306/691"
    }
  ],
  "sources": [
    "Wikipedia, Fixed-odds betting (overround): https://en.wikipedia.org/wiki/Fixed-odds_betting",
    "Grinstead and Snell, Introduction to Probability, 2nd ed., American Mathematical Society, section 1.2, odds and probabilities (page 28): https://math.dartmouth.edu/~prob/prob/prob.pdf",
    "National Council on Problem Gambling, help and treatment (1-800-MY-RESET): https://www.ncpgambling.org/help-treatment/"
  ],
  "related": [
    "implied-probability",
    "betting-odds",
    "arbitrage",
    "odds"
  ],
  "changelog": [
    {
      "date": "2026-09-28",
      "note": "Odds parser shapes and decimal comma; a note when the book is 100% or less; sentence without the vig (WP-70 QA)."
    }
  ]
}
