Pool Heat-Up Time Calculator
The honest answer to “how long?” — accounting for the heat your pool sheds while it warms, so 15 hours and not the 10 you'd get the lazy way. Plus the reverse: tell us how long you'll run the heater and we'll tell you how warm the pool will be — the planning answer for “swim by Saturday?” no rule of thumb gives.
Hook
“How long to heat my pool?” feels like a one-line question with a one-line answer.
It isn't, because two things are happening at once: your heater is adding energy, and your pool is shedding it. The warmer the water gets, the bigger its gap to the cooler air, so the faster it leaks — the climb slows toward the target. A pool gains the first few degrees briskly and then crawls the last stretch. And if your heater is small and your pool's uncovered on a windy day, it may never reach the target at all.
Promise
This calculator gives you the real heat-up time for your pool and your heater — gas or heat pump — accounting for the heat lost while it warms, and honest that the answer is a range. Flip it around and it'll tell you how warm your pool will be after any number of hours, so you can answer the only question that actually matters: turn the heater on whento have it warm by Saturday. And it'll tell you straight if your heater simply can't get there. Every term derived on the page.
Here's the deal: heat-up time is just the energy you need divided by the netpower you've got — your heater's output minus what the pool is losing. The catch is that the loss grows as the water warms, so the net power shrinks and the climb slows. Cover the pool and you cut the loss, which both speeds the heat-up and lets a smaller heater finish the job.
What you'll give us
The pool inputs (volume, surface area), the climate (water + air temp, wind, cover), and the heater (output + fuel). Same shape the sizing, cost, and evaporation pages use — same engine. The volume calculator deep-links here with ?gal= prefilled.
The calculator
Pick a mode — TIME to target (the classic) or TEMPERATURE by time (the planning reverse) — fill the fields, hit Calculate. The result panel returns the headline hours or degrees, the cover-on alternative regardless of toggle, and the can't-reach refusal when your heater is too small for the conditions.
Why heat-up time isn't a simple number
The reason “how long to heat my pool” has no one-line answer is that your pool is fighting you the whole time. Every hour the heater adds energy, the pool sheds some of it to the air — and the warmer the water gets, the bigger the gap to the cooler air, so the faster it leaks. That means the net power doing the actual warming shrinks as you climb.
Any calculator that just divides gallons by heater size and hands you a number is ignoring the loss — and the loss is often a third of your heater's output or more. On our standard pool, the 250,000 BTU/hr sticker becomes 166,000 of net power once the 84,000 of standing loss is subtracted, which is why the heat-up is about 15 hours and not the 10 you'd get the lazy way.
A cover heats your pool faster
A cover doesn't just save money and water — it heats your pool faster. Because heat-up time is energy divided by netpower, and a cover slashes the loss the heater is fighting, covering the pool while it heats means more of the heater's output goes into warming instead of chasing evaporation.
On our standard pool, a cover takes the heat-up from about 15 hours to about 11 — nearly four hours faster, on top of the money it saves (see the cost calculator) and the water it keeps (see the evaporation calculator). One cover, four payoffs across the cluster: faster, cheaper, less water lost, smaller heater needed.
How warm by morning? The reverse question.
Here's the question people actually have: not “how long for a full heat-up” but “I want to swim Saturday afternoon — when do I turn the heater on?” So flip the calculator around. Tell it how many hours you'll run the heater, and it tells you how many degrees you'll gain.
Run a 250k heater on our standard pool overnight — eight hours — and you'll gain about eight degrees: a 70-degree pool is a swimmable 78 by morning. Want 80+? Start by dinnertime. Now you know to start it Friday night, not Saturday lunch — the planning answer no rule of thumb gives you.
Gas vs heat pump: the time you're buying
If you're choosing between a gas heater and a heat pump, heat-up time is half the decision — running cost, on the cost calculator, is the other half. Gas is a sprinter: a 250k gas heater warms our standard pool in about 15 hours. A heat pump is a marathoner: a 110k unit on the same pool takes about four days from cold — because after the standing loss, its net warming power is small.
That's not a flaw; a heat pump's job is to holda warm pool cheaply, not to heat a cold one fast. If you heat from cold often and want it quick, that's gas. If you keep it warm all season economically, that's the heat pump. The two pages together — this one for time, the cost one for dollars — make the trade-off concrete.
Where the numbers come from
Same engine as the sizing, cost, and evaporation pages — no new physics, just inverted.
Step 1 · energy = mass × specific heat × ΔT
gallons × 8.345 lb/gal × 1.0 BTU/(lb·°F) × ΔT = the heat you need to add. For 20,000 gallons heated 15 °F that's 2,503,500BTU. Water's specific heat is exactly 1.0 by the definition of the BTU; the 8.345 lb/gal is the CRC density at 60 °F shared across this site's pages.
Step 2 · standing loss = U × surface × ΔT
The same lumped-U engine the sizing and cost pages use; covered drops U to ~35 % of uncovered. For our standard pool that's 84,000 BTU/hr uncovered, 29,400 covered. This is a typical-conditions estimate — evaporation swings it 2–3 % with humidity and wind, which is why heat-up time is a range.
Step 3 · net power = output − loss
Net power = heater output − standing loss. For our standard pool with a 250k gas heater, that's 250,000 − 84,000 = 166,000BTU/hr. The net is what actually climbs the temperature; ignoring the loss is the field's core mislead.
Step 4 · time = energy ÷ net power (TIME mode)
For E1: 2,503,500 ÷ 166,000 = 15.08 hours. Same function the sizing page uses — both pages report this number for the same inputs, by construction.
Step 5 · degrees gained = net × hours ÷ thermal mass (TEMP mode)
Pure algebraic inversion of step 4. degrees = net × hours ÷ (gallons × 8.345 × 1.0). For E6 (250k uncovered, 8 hr from 70 °F): 166,000 × 8 ÷ (20,000 × 8.345) = 7.96 °F ≈ 8 °F → ~78 °F by morning.
We anchor the loss at “current + 15 °F” — the same convention as the time-to-target mode — so the two modes can't disagree on loss. That's a slight conservatism: the real loss is lower while the pool is still cool, so the actual climb runs a touch warmer than this simple formula predicts. The HeatUpCurves chart in §4.2 visualises the integrated honest physics.
Eight worked examples
All numbers consume the asserted lib/thermal/heatloss.ts engine — the same one the sizing, cost, and evaporation pages use. E1's TIME-mode result equals the sizing page's reported heat-up time by construction (same function).
E1 — Standard heat-up (the baseline)
20,000 gal, 800 ft², 70 → 85 °F, air 70 °F, average wind, uncovered, 250,000 BTU/hr gas → net 250,000 − 84,000 = 166,000 → ≈ 15.08 hours.
Takeaway:a third of the heater is replacing loss while it warms — which is why it's 15 hours, not the 10 you'd get ignoring loss.
E2 — Same pool, covered (the cover speeds it up)
Identical but covered → loss drops to 29,400 → ≈ 11.35 hours, nearly 4 hours faster.
Takeaway: cover the pool while it heats and more of the heater goes into warming instead of chasing evaporation — faster heat-up, plus the money and water a cover saves.
E3 — Heat pump from cold (the slow-marathoner reality)
Same uncovered pool, 110,000 BTU/hr heat pump → net 110,000 − 84,000 = 26,000 → ≈ 96.29 hours (~4 days).
Takeaway:a heat pump heats a cold pool over days, not hours — by design. Its job is to hold a warm pool cheaply; for fast heat-from-cold, that's gas.
E4 — Spa (minutes, not hours)
400-gal spa, ~30 ft², 60 → 102 °F, covered, 250,000 BTU/hr → ≈ 34.07 minutes.
Takeaway:a spa's tiny water volume against a big heater means it's ready before you've finished tidying the deck — the opposite of a pool's inertia.
E5 — The heater that can't get there (the refusal)
20,000 gal, 800 ft², target needs ΔT 30, air 60 °F, windy (15 mph), uncovered, 100,000 BTU/hr → standing loss 264,000 BTU/hr exceeds the 100k output.
Net power is negative — the pool never reaches target.
Takeaway:a heater smaller than your standing loss can't warm the pool at all — it only slows the cooling. Cover first; then upsize.
E6 — How warm by morning? (the reverse-mode wedge)
Standard pool, 250,000 BTU/hr, uncovered, run 8 hours overnight from 70 °F. degrees = 166,000 × 8 ÷ (20,000 × 8.345) ≈ +8.0 °F → ~78.0 °F by morning.
Takeaway: ~8 °F overnight → a swimmable 78 °F by morning; want 80+? Start it by dinnertime, not just overnight.
E7 — Bigger heater, diminishing returns
Standard pool, compare 250k vs 400k gas (uncovered): 250k → ≈ 15.08 hr; 400k → net 316,000 → ≈ 7.92 hr. 60 % more output buys ~47 % less time — not proportional, because the loss is subtracted from both.
Takeaway:a much bigger heater heats faster but not proportionally, and it's capacity you pay for. The sizing calculator picks the right class; this shows the hours it buys.
E8 — Metric / cool climate
50 m³ (~13,209 gal), raise 18 °F-equivalent, cooler air, gas 250k → ≈ 13.30 hours.
Takeaway: the math is identical in metric; cooler air means more loss and a longer heat-up — cover it.
Reference tables
T1 · Heat-up time by pool size × heater output (uncovered, ΔT 15 °F)
ESTIMATE · typical conditions (air 70 °F, 5 mph wind). A cover speeds each cell ~25 %; em-dashes mark the can't-reach refusals (heater ≤ loss).
| Pool | 150k | 200k | 250k | 400k |
|---|---|---|---|---|
| Small (12k gal · 500 ft²) | 15.4 hr | 10.2 hr | 7.6 hr | 4.3 hr |
| Standard (20k gal · 800 ft²) | 1.6 days | 21.6 hr | 15.1 hr | 7.9 hr |
| Large (30k gal · 1,100 ft²) | 4.5 days | 1.9 days | 1.2 days | 13.2 hr |
T2 · Heat-up time by ΔT × fuel (standard pool, uncovered)
ESTIMATE · standard 20k-gal pool, 800 ft², air 70 °F, 5 mph wind. Gas 250k vs heat pump 110k.
| ΔT (°F) | Gas 250k | Heat pump 110k | Speed gap |
|---|---|---|---|
| 10 | 8.6 hr | 1.3 days | 3.6× longer |
| 15 | 15.1 hr | 4.0 days | 6.4× longer |
| 20 | 1.0 days | — | NaN× longer |
| 25 | 1.6 days | — | NaN× longer |
| 30 | 2.5 days | — | NaN× longer |
T3 · Temperature gained per run hours (standard pool, gas 250k, uncovered)
ESTIMATE · the reverse-mode planning reference. Loss anchored at “current + 15 °F” — a slight conservatism, see Methodology.
| Pool | 1 hr | 4 hr | 8 hr | 16 hr | 24 hr |
|---|---|---|---|---|---|
| Small (12k gal · 500 ft²) | +2.0 °F | +7.9 °F | +15.8 °F | +31.6 °F | +47.3 °F |
| Standard (20k gal · 800 ft²) | +1.0 °F | +4.0 °F | +8.0 °F | +15.9 °F | +23.9 °F |
| Large (30k gal · 1,100 ft²) | +0.5 °F | +2.1 °F | +4.3 °F | +8.6 °F | +12.9 °F |
Tables released CC BY 4.0. All time entries are estimates at typical conditions; a cover speeds each ~25 %.
Methodology & sources
Time = energy ÷ net power — first principles. The energy and the loss both come from the SAME lib/thermal/heatloss.ts engine that the heater-sizing, cost-to-heat, and evaporation pages use. This page's time-to-target EQUALS the sizing page's reported heat-up time by construction — same heatUpTime function, locked exact by assert-heatuptime.mjs. Drift in the engine simultaneously trips this assertion and the sizing page's worked-example assertion.
The F7 nonlinearity, stated honestly. Loss rises as the water-air gap grows, so net power shrinks as the pool warms and the climb slows. We estimate using loss at the target temperature — a slight conservatism (the real loss is lower while the pool is still cool). A precise answer would integrate; the practical range we give is the simple formula plus the integrated-curve visualisation in §4.2, which makes the gap visible without burying the headline number in maths. The actual finish runs a touch sooner than the integrated physics would predict, and the curve flattens more than a straight line.
The reverse mode (TEMP-by-time) is a one-line algebraic rearrangementof the same energy equation: degrees gained = (output − loss) × hours ÷ (gallons × 8.345 × 1.0). It uses the SAME loss anchor (current + 15 °F default lift) as the time-to-target mode, so the two modes can't disagree on loss — same physics, two views.
The F6 can't-reach refusal is inherited from the sizing page: when output ≤ loss the pool never arrives at any higher target, and we refuse to print a false time. The result panel routes to the cover-on alternative (often makes it reachable) and the sizing calculator for the next class up. A “47 hours” for a target never reached is the field's most common dishonesty; we don't print one.
State plainly: estimate range (rides on the loss estimate); gas heats in hours, heat pumps in days from cold (not a flaw — maintenance is their job); running cost is the cost calculator's domain (cross-link, don't duplicate).
Reference tables T1/T2/T3 are released under CC BY 4.0. All time entries are estimates at typical conditions.
Frequently asked questions
- How long does it take to heat a pool?
For a standard 20,000-gallon pool raising 15 °F with a 250,000 BTU/hr gas heater, about 15 hours uncovered or about 11 covered — because the net power doing the warming is the heater output minus the standing loss the pool is shedding while it climbs. Heat pumps take much longer from cold (days) but cost less to run. Your number scales with volume, ΔT, and the loss, which depends on surface area, wind, and cover.
- Why is my pool taking so long to heat?
Two reasons. First, the heat your pool is losing while it warms eats a meaningful chunk of the heater's output — often a third. Second, heating isn't linear: the warmer the water gets, the bigger the gap to the air, so the loss grows and the climb slows. The last few degrees are the slowest. Cover the pool: it cuts the loss and steepens the climb.
- How long to heat a pool with a heat pump?
Days, from cold — typically about four days for a 20,000-gallon pool with a 110,000 BTU/hr heat pump raising 15 °F. After the standing loss the net warming power is small. That's not a flaw: a heat pump's job is to holda warm pool cheaply, not to heat a cold one fast. For fast heat-from-cold, that's gas; for season-long cheap maintenance, heat pump.
- Will my pool be warm by tomorrow?
Switch the calculator to its reverse mode (Temperature by time), enter your current temp and how long you'll run the heater, and it tells you how warm you'll get. Run a 250k gas heater on a standard pool overnight (8 hours) from 70 °F and you'll gain about 8 °F — a swimmable 78 by morning. Want 80+? Start by dinnertime, not just overnight.
- Does a cover make my pool heat faster?
Yes. A cover cuts the standing loss roughly to a third, which means more of the heater's output is doing useful warming. On the standard pool a cover takes the heat-up from about 15 hours to about 11 — nearly four hours faster. Plus the money it saves (cost calculator) and the water it keeps (evaporation calculator).
- My heater runs but the pool won't warm up — why?
Your heater's output is at or below the standing loss the pool is shedding. The heater is replacing the loss, not adding warmth — the pool stays at its current temp instead of climbing. Common with a small heater on an exposed, uncovered pool in cold air. Fix: cover the pool first(cuts the loss dramatically), then if it's still too slow, step up to a bigger heater class.
- Will a bigger heater heat my pool proportionally faster?
No — diminishing returns. Doubling the output doesn't halve the time, because the standing loss is subtracted from BOTH heaters' output. A 60 % bigger heater (250k → 400k) on our standard pool buys ~47 % less time (15 hr → 8 hr), not 60 %. The sizing calculator picks the right class for your conditions; this page shows the hours each one buys.
- How long to heat a pool 10 degrees?
For a standard 20,000-gallon pool with a 250,000 BTU/hr gas heater, about 10 hours uncovered. Covered, about 7.5 hours. With a 110k heat pump, about 64 hours (~2.7 days). Every extra ΔT you ask for is proportionally more energy — a 15-degree climb takes about 50 % longer than a 10-degree one for the same heater, plus a touch more because the loss grows with the gap.
Related calculators
All Pool Heating calculators: browse the hub.