{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://askcalculators.com/calculator/bac-calculator/schema.json",
  "title": "BAC Calculator inputs",
  "description": "Estimate blood alcohol concentration from detailed beer, wine, spirit, and custom beverage amounts using a Widmark-style model.",
  "type": "object",
  "properties": {
    "unitSystem": {
      "title": "Body-weight units",
      "type": "string",
      "default": "imperial",
      "enum": [
        "imperial",
        "metric"
      ],
      "x-optionLabels": {
        "imperial": "Pounds",
        "metric": "Kilograms"
      }
    },
    "sex": {
      "title": "Sex-based distribution factor",
      "type": "string",
      "default": "male",
      "enum": [
        "male",
        "female"
      ],
      "x-optionLabels": {
        "male": "Male factor",
        "female": "Female factor"
      }
    },
    "weightLb": {
      "title": "Body weight",
      "type": "number",
      "default": 180,
      "minimum": 50,
      "maximum": 1000,
      "x-step": 0.1,
      "x-suffix": "lb",
      "x-showWhen": {
        "field": "unitSystem",
        "equals": "imperial"
      }
    },
    "weightKg": {
      "title": "Body weight",
      "type": "number",
      "default": 82,
      "minimum": 20,
      "maximum": 450,
      "x-step": 0.1,
      "x-suffix": "kg",
      "x-showWhen": {
        "field": "unitSystem",
        "equals": "metric"
      }
    },
    "hoursSinceFirstDrink": {
      "title": "Hours since first drink",
      "type": "number",
      "default": 2,
      "minimum": 0,
      "maximum": 48,
      "x-step": 0.1,
      "x-suffix": "hours"
    },
    "beerCount": {
      "title": "Beer servings",
      "type": "number",
      "default": 3,
      "minimum": 0,
      "maximum": 50,
      "x-step": 0.25
    },
    "beerSizeOz": {
      "title": "Beer serving size",
      "type": "number",
      "default": 12,
      "minimum": 0,
      "maximum": 64,
      "x-step": 0.1,
      "x-suffix": "fl oz"
    },
    "beerAbv": {
      "title": "Beer alcohol",
      "type": "number",
      "default": 5,
      "minimum": 0,
      "maximum": 100,
      "x-step": 0.1,
      "x-suffix": "% ABV",
      "x-unit": "percent"
    },
    "wineCount": {
      "title": "Wine servings",
      "type": "number",
      "default": 0,
      "minimum": 0,
      "maximum": 50,
      "x-step": 0.25
    },
    "wineSizeOz": {
      "title": "Wine serving size",
      "type": "number",
      "default": 5,
      "minimum": 0,
      "maximum": 32,
      "x-step": 0.1,
      "x-suffix": "fl oz"
    },
    "wineAbv": {
      "title": "Wine alcohol",
      "type": "number",
      "default": 12,
      "minimum": 0,
      "maximum": 100,
      "x-step": 0.1,
      "x-suffix": "% ABV",
      "x-unit": "percent"
    },
    "spiritCount": {
      "title": "Spirit servings",
      "type": "number",
      "default": 0,
      "minimum": 0,
      "maximum": 50,
      "x-step": 0.25
    },
    "spiritSizeOz": {
      "title": "Spirit serving size",
      "type": "number",
      "default": 1.5,
      "minimum": 0,
      "maximum": 16,
      "x-step": 0.1,
      "x-suffix": "fl oz"
    },
    "spiritAbv": {
      "title": "Spirit alcohol",
      "type": "number",
      "default": 40,
      "minimum": 0,
      "maximum": 100,
      "x-step": 0.1,
      "x-suffix": "% ABV",
      "x-unit": "percent"
    },
    "otherVolumeOz": {
      "title": "Other beverage total volume",
      "type": "number",
      "default": 0,
      "minimum": 0,
      "maximum": 1000,
      "x-step": 0.1,
      "x-suffix": "fl oz"
    },
    "otherAbv": {
      "title": "Other beverage alcohol",
      "type": "number",
      "default": 0,
      "minimum": 0,
      "maximum": 100,
      "x-step": 0.1,
      "x-suffix": "% ABV",
      "x-unit": "percent"
    },
    "metabolismRate": {
      "title": "Assumed elimination rate",
      "type": "number",
      "default": 0.015,
      "minimum": 0.005,
      "maximum": 0.03,
      "x-step": 0.001,
      "x-suffix": "BAC/hour"
    }
  },
  "required": [
    "unitSystem",
    "sex",
    "hoursSinceFirstDrink",
    "beerCount",
    "beerSizeOz",
    "beerAbv",
    "wineCount",
    "wineSizeOz",
    "wineAbv",
    "spiritCount",
    "spiritSizeOz",
    "spiritAbv",
    "otherVolumeOz",
    "otherAbv",
    "metabolismRate"
  ],
  "allOf": [
    {
      "if": {
        "properties": {
          "unitSystem": {
            "const": "imperial"
          }
        },
        "required": [
          "unitSystem"
        ]
      },
      "then": {
        "required": [
          "weightLb"
        ]
      }
    },
    {
      "if": {
        "properties": {
          "unitSystem": {
            "const": "metric"
          }
        },
        "required": [
          "unitSystem"
        ]
      },
      "then": {
        "required": [
          "weightKg"
        ]
      }
    }
  ],
  "additionalProperties": false,
  "x-askcalculators": {
    "version": "2.0.0",
    "calculatorUrl": "https://askcalculators.com/calculator/bac-calculator/",
    "queryExample": "https://askcalculators.com/calculator/bac-calculator/?unitSystem=imperial&sex=male&weightLb=180&hoursSinceFirstDrink=2&beerCount=3&beerSizeOz=12&beerAbv=5&wineCount=0&wineSizeOz=5&wineAbv=12&spiritCount=0&spiritSizeOz=1.5&spiritAbv=40&otherVolumeOz=0&otherAbv=0&metabolismRate=0.015",
    "migrationStatus": "migrated",
    "reviewStatus": "pending",
    "pageStatus": "live",
    "workStatus": "pending",
    "migratedDate": "2026-08-25",
    "formula": {
      "expression": "Alcohol grams = volume × ABV × ethanol density; Widmark-style BAC = alcohol grams ÷ (distribution factor × body mass grams) × 100 − elimination rate × hours."
    },
    "quality": {
      "availability": "live",
      "technicalReviewRecord": "/reviews/bac-calculator.json",
      "qualifiedReview": "pending",
      "qualifiedReviewer": null,
      "qualifiedReviewDate": null,
      "formulaVersion": "2.0.0",
      "referenceCoverage": "references-listed",
      "releaseTestScope": "Catalog and regression checks are not a professional formula audit; consult release evidence.",
      "historicalMetadataDate": "2026-08-25",
      "historicalMetadataNotice": "The imported date is not evidence of a completed human review."
    },
    "outputs": {
      "estimatedBac": {
        "title": "Estimated current BAC",
        "type": "number",
        "x-format": "percent",
        "x-digits": 3,
        "x-primary": true
      },
      "peakBac": {
        "title": "Estimated pre-elimination BAC",
        "type": "number",
        "x-format": "percent",
        "x-digits": 3
      },
      "standardDrinks": {
        "title": "Approximate U.S. standard drinks",
        "type": "number",
        "x-format": "number",
        "x-digits": 2
      },
      "alcoholGrams": {
        "title": "Pure alcohol consumed",
        "type": "number",
        "x-format": "number",
        "x-suffix": " g",
        "x-digits": 1
      },
      "hoursToZero": {
        "title": "Additional estimated time to zero",
        "type": "number",
        "x-format": "number",
        "x-suffix": " hours",
        "x-digits": 1
      },
      "safetyMessage": {
        "title": "Safety message",
        "type": "string",
        "x-format": "text"
      }
    }
  }
}
