Home › Everyday Life › Pool Volume Calculator
Pool Volume Calculator
Computes the water volume of a rectangular, round, oval or kidney-shaped pool from its dimensions and average depth, then the amount of a chlorine product needed to raise free chlorine by a target ppm and the pump turnover time (or the flow needed for an 8-hour turnover).
When to use
You need a pool's volume in gallons or litres to dose chemicals, size a pump or filter, or estimate fill cost, and a shock/chlorine dose for a given ppm increase.
Do not use when: The pool is a free-form shape that none of the four templates approximates (measure it as several rectangles), or you need aquarium volumes (use aquarium-volume).
Formula
avg_depth = (shallow + deep) / 2; rectangle V = length × width × avg_depth; round V = π × (width / 2)² × avg_depth; oval V = π / 4 × length × width × avg_depth; kidney V = 0.45 × (width + width_2) × length × avg_depth; 1 ft³ = 28.3168 L = 7.4805 US gal; chlorine_g = litres × ppm / 1000; product = chlorine_g / available fraction (0.65, 0.56, 0.90; liquid 12.5% = 125 g/L → mL = chlorine_g / 0.125); turnover_h = volume / (pump_flow × 60)
Shape formulas are the pool-industry templates (kidney = 0.45 × sum of lobe widths × length). 1 ppm equals 1 mg of chlorine per litre, so the dose scales with volume; the free-chlorine target after shocking is normally 10 ppm and routine levels 1–3 ppm. Health codes require public pools to turn over within 6 hours; one turnover in 8–12 hours is typical for residential pools.
Inputs
| Parameter | Type | Unit | Required | Description |
|---|---|---|---|---|
shape | enum: rectangle | round | oval | kidney | default rectangle | Plan-view shape used for the volume formula. | |
unit | enum: m | ft | default m | Unit of all dimensions; also sets the pump flow unit. | |
length | number | no | Longest dimension. Not used for round pools. Range: > 0, ≤ 1000 | |
width | number | yes | Width; the diameter for round pools; the wider lobe (A) for kidney pools. Range: > 0, ≤ 1000 | |
width_2 | number | no | Width of the narrower lobe (B) of a kidney pool; ignored for other shapes. Range: > 0, ≤ 1000 | |
shallow_depth | number | yes | Water depth at the shallow end (or the uniform depth). Range: > 0, ≤ 20 | |
deep_depth | number | no | Water depth at the deep end; omit for a flat bottom. Range: > 0, ≤ 20 | |
chlorine_increase_ppm | number | ppm | default 10 | Desired rise in free chlorine in mg/L: 10 ppm is a typical shock, 1–3 ppm a routine top-up. Range: ≥ 0, ≤ 50 |
chlorine_product | enum: calcium_hypochlorite_65 | dichlor_56 | trichlor_90 | liquid_chlorine_12_5 | default calcium_hypochlorite_65 | Product whose dose is reported (grams for granules and tablets, millilitres for liquid). | |
pump_flow | number | no | Pump flow in L/min (metres) or US gal/min (feet); optional, gives the turnover time. Range: > 0, ≤ 100000 |
Outputs
| Output | Type | Unit | Description |
|---|---|---|---|
average_depth | number | (shallow_depth + deep_depth) / 2 in the chosen unit. | |
volume_liters | number | L | Water volume in litres. |
volume_gallons_us | number | US gal | Water volume in US gallons. |
volume_m3 | number | m³ | Water volume in cubic metres (= tonnes of water). |
chlorine_needed_g | number | g | Pure chlorine to add: litres × ppm / 1000. |
product_dose | number | Amount of the chosen product (see product_dose_unit). | |
product_dose_unit | string | g for granules/tablets, mL for liquid chlorine. | |
turnover_hours | number | h | Hours for the pump to move one pool volume (only when pump_flow is given). |
flow_for_8h_turnover_lpm | number | L/min | Pump flow that turns the pool over in 8 hours. |
flow_for_8h_turnover_gpm | number | US gal/min | Same flow in US gallons per minute. |
Example
10 × 5 m rectangle, 1.2–1.8 m deep, 200 L/min pump: {"shape":"rectangle","unit":"m","length":10,"width":5,"shallow_depth":1.2,"deep_depth":1.8,"chlorine_increase_ppm":10,"pump_flow":200} → {"average_depth":1.5,"volume_liters":75000,"volume_gallons_us":19813,"volume_m3":75,"chlorine_needed_g":750,"product_dose":1154,"product_dose_unit":"g","turnover_hours":6.25,"flow_for_8h_turnover_lpm":156.3,"flow_for_8h_turnover_gpm":41.3}
24 ft round, 4 ft flat, +2 ppm with liquid chlorine: {"shape":"round","unit":"ft","width":24,"shallow_depth":4,"chlorine_increase_ppm":2,"chlorine_product":"liquid_chlorine_12_5"} → {"volume_liters":51241,"volume_gallons_us":13536,"volume_m3":51.24,"chlorine_needed_g":102.5,"product_dose":820,"product_dose_unit":"mL","flow_for_8h_turnover_gpm":28.2}
GET https://tttkmbb.com/api/v1/calculate/pool-volume?shape=rectangle&unit=m&length=10&width=5&shallow_depth=1.2&deep_depth=1.8&chlorine_increase_ppm=10&pump_flow=200
Machine access
- API:
GET https://tttkmbb.com/api/v1/calculate/pool-volume(query parameters) orPOSTwith a JSON body{"inputs": {...}} - Schema: https://tttkmbb.com/api/v1/calculators/pool-volume · Markdown: https://tttkmbb.com/everyday/pool-volume.md · JSON definition: https://tttkmbb.com/everyday/pool-volume.json
- MCP: server
https://tttkmbb.com/mcp, toolrun_calculator with calculator_id="pool-volume" - OpenAPI operationId:
calculate_pool_volume - Freshness:
static. Authentication: none. Rate limit: fair use (see rate limits).
Sources
FAQ
Which depth should I enter for a pool with a slope?
Enter the shallow-end and deep-end depths; the average is used. For a pool with a flat shallow shelf and a deep hopper this overestimates slightly, so treat the volume as ±10%.
Why does 1 ppm need only 10 g of chlorine per 10,000 L?
1 ppm is 1 mg per litre, so 10,000 L × 1 mg = 10 g of available chlorine; a 65% calcium hypochlorite product contains 0.65 g of chlorine per gram, so 15.4 g of product is required.
How long should the pump run?
Long enough for at least one turnover a day: turnover_hours tells you the minimum; most residential pools run 8–12 hours in summer.
Related calculators
- Aquarium Volume Calculator — Volume and water weight of a fish tank.
- Volume Converter — Convert between litres, gallons and cubic metres.
- Cylinder Calculator — Exact volume of a round tank.