{
  "id": "pool-salt",
  "version": "2bd177a58858",
  "status": "published",
  "name": "Pool Salt Calculator",
  "question": "How much pool salt to add?",
  "summary": "Works out how many pounds or kilograms of salt to add to a saltwater pool to reach a target salt level in ppm, the bags to buy, or how much water to drain when the level is too high.",
  "category": "construction",
  "subcategory": "pools",
  "url": "https://www.acalculator.org/construction/pool-salt-calculator",
  "markdown": "https://www.acalculator.org/construction/pool-salt-calculator.md",
  "kind": "function",
  "method": "salt (kg) = (target − current) ppm × liters ÷ 1,000,000, with 1 ppm = 1 mg/L; bags = ⌈salt ÷ bag⌉; drain share = 1 − target ÷ current.",
  "assumptions": [
    "One ppm of salt is one milligram per liter of water, the usual reading of pool test strips and meters.",
    "Salt dissolves fully and mixes through the whole pool. Water you add or lose later changes the level.",
    "Draining assumes you refill with fresh water that has no salt.",
    "Typed numbers are read exactly, so a volume in gallons and a level in ppm give exact amounts, rounded once for display."
  ],
  "inputs": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "type": "object",
    "properties": {
      "v": {
        "title": "Pool volume",
        "description": "How much water the pool holds.",
        "type": [
          "number",
          "string"
        ],
        "x-quantity": "volume",
        "minimum": 0.001,
        "maximum": 100000
      },
      "cur": {
        "title": "Current salt level (ppm)",
        "description": "The salt level a test strip or meter reads now, in parts per million.",
        "type": "number",
        "minimum": 0,
        "maximum": 100000
      },
      "tgt": {
        "title": "Target salt level (ppm)",
        "description": "The salt level your chlorine generator asks for, often 3,200 ppm.",
        "type": "number",
        "minimum": 0,
        "maximum": 100000
      },
      "bag": {
        "title": "Bag size",
        "description": "How much salt one bag holds, often 40 lb.",
        "type": [
          "number",
          "string"
        ],
        "x-quantity": "mass",
        "minimum": 0.001,
        "maximum": 10000
      }
    }
  },
  "outputs": {
    "salt": {
      "label": "Salt to add",
      "description": "(target − current) ppm × litres of water ÷ 1,000,000 kg; 0 when the level is already at or above the target.",
      "format": "quantity",
      "unit": "lb"
    },
    "bags": {
      "label": "Bags to buy",
      "description": "The salt to add ÷ the bag size, rounded up to whole bags.",
      "format": "integer"
    },
    "perBag": {
      "label": "One bag raises the level by (ppm)",
      "description": "The bag’s salt in milligrams ÷ litres of water.",
      "format": "number"
    },
    "drainShare": {
      "label": "Water to drain and refill",
      "description": "1 − target ÷ current, when the current level is above the target: the share of the water to replace with fresh water.",
      "format": "percent"
    },
    "drain": {
      "label": "Volume to drain",
      "description": "The pool volume × the share to drain.",
      "format": "quantity",
      "unit": "gal"
    },
    "litres": {
      "label": "Water in liters",
      "description": "The pool volume in liters.",
      "format": "number"
    }
  },
  "defaultAnswer": {
    "inputs": {
      "v": "15000 gal",
      "cur": 500,
      "tgt": 3200,
      "bag": "40 lb"
    },
    "outputs": {
      "salt": 153.309177252,
      "bags": 9,
      "perBag": 319.5371395117243,
      "litres": 56781.17676
    },
    "text": "Add 338 lb of salt to reach 3,200 ppm."
  },
  "examples": [
    {
      "given": {
        "v": 37.85411784,
        "cur": 0,
        "tgt": 3200,
        "bag": 18.143694800000002
      },
      "expect": {
        "salt": 121.13317708800001,
        "bags": 7,
        "perBag": 479.3057092675865,
        "litres": 37854.11784
      },
      "source": "hand calculation in content.mdx: 3,200 mg/L × 37,854.11784 L = 121.133 kg = 267.05 lb; U.S. Geological Survey, National Field Manual / IFM conversion factors (1 milligram per liter is about 1 part per million in water), https://pubs.usgs.gov/of/2000/ofr00-213/manual_eng/conversion.html (retrieved 2026-10-02); NIST Special Publication 811, Appendix B (1 US gallon = 3.785411784 L; 1 lb = 0.45359237 kg exactly), https://www.nist.gov/pml/special-publication-811 (retrieved 2026-10-02)"
    },
    {
      "given": {
        "v": 56.78117676,
        "cur": 2400,
        "tgt": 3200,
        "bag": 18.143694800000002
      },
      "expect": {
        "salt": 45.42494140800001,
        "bags": 3
      },
      "source": "hand calculation in content.mdx: 800 mg/L × 56,781.17676 L = 45.425 kg = 100.14 lb, 3 bags of 40 lb; U.S. Geological Survey, National Field Manual / IFM conversion factors (1 milligram per liter is about 1 part per million in water), https://pubs.usgs.gov/of/2000/ofr00-213/manual_eng/conversion.html (retrieved 2026-10-02); Hayward Pool Products, How to Lower Salt Levels Within a Swimming Pool (2,700 to 3,400 ppm, best at 3,200 ppm; drain and refill a share of the water), https://www.hayward.com/blog/post/how-to-lower-salt-levels-within-swimming-pool (retrieved 2026-10-02)"
    },
    {
      "given": {
        "v": 37.85411784,
        "cur": 4000,
        "tgt": 3500
      },
      "expect": {
        "salt": 0,
        "drainShare": 12.5,
        "drain": 4.73176473
      },
      "source": "Hayward Pool Products, How to Lower Salt Levels Within a Swimming Pool (2,700 to 3,400 ppm, best at 3,200 ppm; drain and refill a share of the water), https://www.hayward.com/blog/post/how-to-lower-salt-levels-within-swimming-pool (retrieved 2026-10-02): a 10,000 gallon pool at 4,000 ppm, drain about 1/8; hand calculation in content.mdx: 1 − 3,500 ÷ 4,000 = 0.125, 1,250 gal"
    },
    {
      "given": {
        "v": 50,
        "cur": 0,
        "tgt": 3000
      },
      "expect": {
        "salt": 150,
        "litres": 50000
      },
      "source": "hand calculation in content.mdx: 3,000 mg/L × 50,000 L = 150 kg; U.S. Geological Survey, National Field Manual / IFM conversion factors (1 milligram per liter is about 1 part per million in water), https://pubs.usgs.gov/of/2000/ofr00-213/manual_eng/conversion.html (retrieved 2026-10-02)"
    }
  ],
  "sources": [
    "U.S. Geological Survey, IFM conversion factors (milligrams per liter and parts per million in water). https://pubs.usgs.gov/of/2000/ofr00-213/manual_eng/conversion.html (retrieved 2026-10-02)",
    "Hayward Pool Products, How to Lower Salt Levels Within a Swimming Pool (2,700 to 3,400 ppm, best 3,200 ppm; drain and refill to lower the level; a 10,000 gallon pool at 4,000 ppm drains about 1/8). https://www.hayward.com/blog/post/how-to-lower-salt-levels-within-swimming-pool (retrieved 2026-10-02)",
    "NIST Special Publication 811, Appendix B (1 US gallon = 3.785411784 L, 1 ft³ = 28.316846592 L, 1 lb = 0.45359237 kg, exactly). https://www.nist.gov/pml/special-publication-811 (retrieved 2026-10-02)"
  ],
  "related": [
    "pool-volume",
    "cubic-feet"
  ],
  "changelog": []
}
