A test strip that turns almost black isn't broken. It means the free chlorine in the water is well above the 3-5 ppm range a spa needs to be soaked in, and the fix is not complicated, just a little patient. Most of the time the safest move is simply to wait it out with the cover off and the jets running, retest in a few hours, and not get back in until the number drops into range.
This usually happens right after a heavy shock dose, especially if the tub got a double dose after a party, a color change, or a long stretch of neglect that made someone reach for way more granules than the water needed. It is a common, fixable mistake, not a sign anything is wrong with the spa itself.
How high is too high?
A free chlorine reading of 3-5 ppm is the normal soaking range, so 5 is the top of normal, not a problem. Above that, wait for it to drift down before soaking. Public spas run under a code ceiling of 10 ppm, and a home tub reading past that is clearly over-dosed.
Why the reading matters more than it looks like it should
Free chlorine is the active sanitizer working in the water right now. Combined chlorine is the spent byproduct left over after chlorine reacts with sweat, oils, and other waste, and it is what causes the sharp "chlorine smell" and eye sting people usually blame on too much chlorine. The two numbers measure different things and get confused constantly; if that distinction is new, the difference between free and total chlorine is worth understanding before troubleshooting further, since fixing the wrong number wastes chemicals and time.
Right now the concern is free chlorine specifically. A spa running free chlorine at 15, 20, or higher ppm is not more sanitized in any useful way; it is simply over-dosed, and soaking in it can irritate skin, eyes, and lungs, especially for kids and anyone with sensitive skin or asthma.
The safest fix: give it time, air, and sunlight

First, stop adding any chlorine: pull a floating dispenser out and turn a salt system's output down or off until the reading falls. Chlorine breaks down on its own when it is exposed to UV light and open air. Pull the cover off, run the jets to keep the water circulating, and let the tub sit uncovered, ideally somewhere it gets direct sun. Circulation moves the chlorinated water past the surface so it can off-gas, and UV light breaks the chlorine molecule down chemically. Indoors, running the jets with the cover off and improving room ventilation does most of the same job, just more slowly without the sun's help.
How long this takes depends on the starting number, water temperature, and how much sun the tub gets. A tub sitting a few points over target on a sunny afternoon might be back in range within a couple of hours. A tub pushed to the top of the test strip's scale after a double shock could take most of a day, sometimes longer if it is shaded or the weather is overcast. There is no single countdown timer for this, which is why retesting is not optional.
Retest every hour or two with a fresh sample, not water sitting in the test cup from before. Do not eyeball it and guess "probably fine by now." Get back in only once free chlorine reads back down near 3-5 ppm, and if you're not confident the strip or kit itself is reading correctly at these extremes, cross-check with a fresh testing method before trusting the number.
If you need to soak today: a neutralizer, dosed light

A chlorine neutralizer, usually sodium thiosulfate sold as a "chlorine reducer" or "de-chlorinator," speeds this up chemically instead of waiting on sun and air. It works, and it works fast, which is exactly the problem: it is very easy to overshoot. A small overdose can strip chlorine to zero and leave the water completely unsanitized, at which point it needs fresh sanitizer added right back in before anyone gets in.
Dose it in small increments against the product label, not a full "worst case" scoop, because label directions are usually written with margin built in and a small spa holds far less water than the pool-sized volumes some dosing charts assume. Sprinkle it with the jets running so it disperses instead of pooling in one spot, wait the time the label specifies, then retest before adding more. Treat it like titrating a solution down to a target, not flipping a switch.
Two safety notes matter here. Never add a neutralizer, an acid, or any second chemical directly on top of undissolved shock or granules sitting in the water; unmixed pool and spa chemicals reacting directly with each other, rather than diluted in the full volume of water, is how chemical burns and toxic gas releases happen, and it is the kind of incident the EPA's guidance on handling pool and spa chemicals specifically warns installers and owners to prevent. And never combine a chlorine-based product with a bromine-based one in concentrated form for the same reason.
Or dilute it: a partial drain and refill

The low-tech option is a partial drain and refill. Draining even a third to half the water and topping off with fresh, chlorine-free tap water dilutes the free chlorine proportionally, and it also gives total alkalinity and pH a nudge back toward normal if a big shock dose knocked those off too. This is a reasonable move if the tub is already close to a scheduled water change, or if the chlorine spike happened alongside a stabilizer problem that a straight drain would help anyway; the fuller drain and refill process covers how to do this without shocking the shell with cold water or disturbing the plumbing.
A partial drain will not fix a stabilizer buildup by itself in one pass, since cyanuric acid dilutes at the same rate as everything else and usually needs a bigger drain to bring down meaningfully. It is a fine tool for an acute chlorine spike, not a substitute for addressing why the tub got over-shocked in the first place.
Comparing the three ways down
Which method fits depends on how urgently someone needs to soak and how far over target the number sits. This is the honest tradeoff between them:
| Method | Typical time to target | Best for | Watch-out |
|---|---|---|---|
| Time (cover off, jets on, sun) | A couple of hours to about a day | No rush to soak; sunny location | Slowest option; shaded or indoor tubs take longer |
| Chemical neutralizer | Roughly 20-60 minutes after correct dosing | Need to soak the same day | Overshoots easily; can zero out chlorine entirely |
| Partial drain and refill | Immediate, proportional to how much is replaced | Already near a scheduled water change, or pH/TA also off | Uses water and heat; does not fix high stabilizer on its own |
Where an over-shock usually comes from
The most common trigger is doubling up: adding a full shock dose without checking what free chlorine already read, shocking twice in one day "to be safe," or using a shock product at a pool-strength measurement in a spa that holds a few hundred gallons instead of thousands. A second, quieter cause is stabilizer creep. If the tub has been dosed with dichlor for weeks without a break, cyanuric acid can climb high enough to blunt how effective a given chlorine reading actually is, which tempts an owner to shock harder to compensate, which then reads even higher than intended. That mechanism, sometimes called chlorine lock, is covered in full over at how cyanuric acid buildup affects chlorine, and it is worth ruling out if this keeps happening every few weeks rather than once.
Getting the underlying balance right, so shock doses land close to where they are supposed to instead of needing correction after correction, comes down to keeping pH, alkalinity, and sanitizer level tracked together rather than adjusting one number in isolation; the full water chemistry picture is the place to start if shocking keeps overshooting the mark.
The one rule that does not bend
Do not get in until a fresh test reads free chlorine back near 3-5 ppm. Not "probably close," not "the smell seems normal now." A strong chlorine smell is actually a sign of too little free chlorine relative to combined chlorine, not too much, so smell is not a reliable stand-in for a real reading either direction. Test, confirm the number, then soak.



