Free tool

    Green pool?
    Shock it right.

    How much chlorine a shock needs depends on the stabilizer (CYA) level. Enter your CYA and pool size to get the target chlorine level and the dose to get there and stay there.

    What are you treating?
    gal
    ppm

    Test it. Don't guess. It sets the target.

    ppm
    Your result is ready

    Enter your email once to unlock this and every free Pool Pro calculator.

    Why shock level depends on CYA

    Cyanuric acid protects chlorine from sunlight by holding most of it in reserve. The more CYA in the water, the less active chlorine you get at the same reading. So "add a bag of shock" works at CYA 20 and barely does anything at CYA 80. The fix is to scale the target to the CYA: about 40% of CYA for algae and about 60% for mustard algae.

    CYAShock FCMustard algae FC
    0 ppm10 ppm12 ppm
    30 ppm12 ppm18 ppm
    40 ppm16 ppm24 ppm
    50 ppm20 ppm30 ppm
    60 ppm24 ppm36 ppm
    70 ppm28 ppm42 ppm
    80 ppm32 ppm48 ppm

    How to clear a green pool

    1. Test CYA first. Above about 80 ppm, drain part of the pool before shocking (use the drain tab in the chemical calculator).
    2. Lower pH to about 7.2–7.4 so the chlorine works harder.
    3. Raise free chlorine to the shock level. Brush walls and floor, run the pump 24/7, and clean the filter as it loads up.
    4. Test 2–3 times a day and top up so FC stays at the target. Letting it drop lets the algae recover.
    5. You're done when the water is clear, combined chlorine is 0.5 ppm or less, and the pool loses 1 ppm or less overnight.

    Why not trichlor or dichlor?

    They add CYA along with chlorine. Each 10 ppm of chlorine from dichlor adds about 9 ppm of CYA, which raises the shock level you need next time. Use liquid chlorine, or cal-hypo if calcium hardness has room.

    Track every green-to-clean.

    Log each visit’s readings and photos in Pool Pro, so the customer sees the before and after and the office sees the chemicals used.

    Route optimizationAutomated invoicingChemistry logs with LSI