Planted tanks: a CO2 starter guide

Pressurized CO2 is the single biggest upgrade a planted tank keeper can make. Here is the hardware list, the target water parameters, the chemistry of the carbonate buffer, and a dial-in protocol that avoids the most common beginner mistakes.

Planted tanks: a CO2 starter guide (planted tank) — Fish / Planted Aquariums cover image

Planted tanks: a CO2 starter guide

Most slow-growing plants - Anubias, Java fern, Cryptocoryne, Vallisneria, Amazon sword - do perfectly well without supplemental CO2. They pull the carbon they need from the carbonate hardness (KH) buffer and from the small amount of dissolved CO2 that is always present in any water in contact with air. Once you start wanting carpeting plants (Monte Carlo, dwarf hairgrass, Glossostigma), red plants (Ludwigia, Rotala, Alternanthera), or dense stem growth, you need to add CO2. The difference between a tank running 2-4 ppm of dissolved CO2 and one running 25-30 ppm is the difference between a 10-week wait for a carpet and a 4-week carpet. It is the single largest single-variable upgrade you can make to a planted tank.

This guide covers pressurized CO2, not DIY yeast systems. Yeast systems work but they have no pressure stability, no repeatability, and no way to run a solenoid on a timer. If you are reading this with a planted tank in front of you and you want predictable, dial-able CO2, you want a pressurized system.

The hardware you need

A complete pressurized CO2 system for a home planted tank, top to bottom:

  1. CO2 cylinder (5 lb / 2.27 kg Aluminum), threaded CGA-320. Brands: Paintball-style 5 lb (Leland, VCT) or 5 lb aluminum (Luxfer). A 5 lb cylinder holds about 1.15 kg of liquid CO2, which runs a 100 L tank at 1 bubble per second for roughly 4-5 months.
  1. Regulator with solenoid, dual-gauge. Brands I trust: FZone FZ-075, CO2Art Pro-SE, GLA GRO-1. Working pressure 1.0-1.5 bar (15-22 psi). A solenoid is non-negotiable - it lets you turn CO2 on and off on a timer or controller.
  1. Bubble counter, in-line between regulator and diffuser. Brands: FZone, CO2Art. Resolves to 1 bubble per second accuracy, which is enough.
  1. CO2-resistant tubing, 4/6 mm (inner/outer). Standard silicone airline does not hold up to CO2 long-term. Brands: CO2Art polyurethane, Fluval CO2 tubing.
  1. Check valve, in-line, just before the diffuser. Prevents back-siphoning of tank water into the regulator if the cylinder runs out overnight.
  1. Diffuser, ceramic disc, in-tank. Brands: ISTA, FZone, UP Aqua. A 25 mm ceramic disc diffuser handles tanks up to 150 L. Above that, run two diffusers or go with an in-line reactor.
  1. Drop checker, in-tank, with 4 dKH reference solution and bromothymol blue indicator. Brands: GLA, FZone, ADA. This is your real-time CO2 sensor.
  1. pH controller (optional but recommended above 200 L), INKBIRD IHC-200 or Hydros CO2 controller. Probes pH and switches the solenoid.
inline-1

Total cost for a complete starter system: roughly $220-340 USD depending on brands. The cylinder is the most expensive single piece at $80-130 refilled. After that, the regulator is the second largest at $80-110.

The chemistry of CO2 in water

CO2 dissolves in water and enters a four-species equilibrium:

CO2 (aq) + H2O ⇌ H2CO3 ⇌ H+ + HCO3⁻ ⇌ 2H+ + CO3²⁻

The position of this equilibrium is controlled by pH, KH, and temperature. At the pH and KH range of a typical planted tank, the bulk of the inorganic carbon sits as bicarbonate (HCO3⁻), with a small fraction as dissolved CO2. The fraction that is dissolved CO2 - the part plants actually use - is what you are targeting.

The classic approximation (Tom Barr, Diana Walstad) for dissolved CO2 in equilibrium with air at sea level:

CO2 (ppm) = 3 × KH (dKH) × 10^(7 - pH)

Worked example: a tank with KH = 4 dKH and pH = 6.8 reads:

CO2 = 3 × 4 × 10^(7 - 6.8) = 12 × 10^0.2 = 12 × 1.585 = 19 ppm

That is right in the target range. The same tank with pH 7.2 reads:

CO2 = 3 × 4 × 10^(7 - 7.2) = 12 × 10^(-0.2) = 12 × 0.631 = 7.6 ppm

Too low. That is why CO2 injection is always paired with a target pH drop: you are deliberately driving pH down to convert more of the carbonate buffer to free CO2. The 7 - pH term in the formula is the lever. Drop 0.4 pH units, you roughly triple dissolved CO2.

A drop checker reads this equilibrium in real time. The 4 dKH reference solution in the checker equilibrates with the tank water, and the bromothymol blue indicator turns:

  • Blue - too little CO2 (under ~15 ppm). Plants can grow, but carpeting species and reds will stall.
  • Green - target zone, ~20-30 ppm. This is the dial.
  • Yellow - too much CO2 (over 35 ppm). Fish are at risk of gasping at the surface.

Aim for a clean lime green 1-2 hours before lights-on and a slight yellow-green peak during peak photosynthesis. Yellow during peak is acceptable on a heavily planted, well-aerated tank; yellow on a sparsely planted tank is a fish kill waiting to happen.

The dial-in protocol

A standard 100 L (26 US gal) low-tech-to-high-tech planted tank running carpeting plants and stem plants:

| Parameter | Target |

|---|---|

| CO2 | 25-30 ppm during photoperiod |

| KH | 3-5 dKH |

| pH | 6.6-6.9 during photoperiod (pre-CO2 pH 7.2-7.4) |

| GH | 4-8 dGH |

| Temperature | 24-26°C |

| PAR at substrate | 50-80 (carpet), 30-50 (mid-ground stems) |

| Photoperiod | 7-8 hours, no ramp on a low-tech rig |

Start the CO2 at 1 bubble per second (bps) per 100 L of tank volume, 1-2 hours before lights come on. The solenoid on a timer is the standard setup. Watch the drop checker the first week:

  • Day 1-2: drop checker stays blue. Fish behavior normal. Bubble rate too low.
  • Day 3-4: increase to 1.5 bps. Watch fish at lights-on for gasping. A few fish at the surface in the first 30 minutes is normal; sustained piping is not.
  • Day 5-6: increase to 2 bps. Drop checker should be turning faint green by mid-photoperiod.
  • Day 7-10: settle at 2-3 bps with drop checker reading lime green 3-4 hours into the photoperiod.

The single most common mistake is increasing CO2 too fast. Fish respond to a CO2 rise over hours, not minutes. A jump from 10 ppm to 30 ppm over 30 minutes is lethal; the same jump spread over 4 days is fine. Take it slow.

inline-2

The single second most common mistake is leaving CO2 on overnight. Plants do not photosynthesize at night. Dissolved CO2 stays at saturation, pH drops to its low point, and the fish spend 8 hours in a low-O2, high-CO2 environment. The solenoid on a timer that cuts CO2 at lights-off is mandatory. Some keepers cut CO2 30 minutes before lights-off to let the pH rise before the fish settle for the night.

Fertilizer and light interaction

CO2 does not work alone. The three macros plants need are nitrogen (NO3, target 10-20 ppm), phosphorus (PO4, target 0.5-2.0 ppm), and potassium (K, target 10-20 ppm). With CO2 injection, the plants can actually use these at meaningful rates.

A standard "EI" (Estimative Index) dosing regimen for a high-tech planted tank:

  • Macros (KNO3, KH2PO4, K2SO4) 3x per week, 50% water change weekly. Doses per 100 L: 1/2 tsp KNO3, 1/16 tsp KH2PO4, 1/2 tsp K2SO4.
  • Micros (CSM+B or similar) 3x per week, alternating with macros. 1/16 tsp per 100 L.
  • Iron (Flourish Iron or similar) daily, 0.5 mL per 100 L.

Brands I keep stocked: Seachem (Flourish line), Tropica, NilocG Thrive+ (combined macro/micro), APT1/APT3 (dry, single dose). Dry salts are cheaper per dose but require a small digital scale (0.01 g resolution). Liquid fertilizers are easier for a beginner.

The trap with light is the inverse of the trap with CO2. Most beginners add CO2 and forget that light intensity has to match. A high-light tank (PAR 80+) with insufficient CO2 is a guaranteed algae farm - staghorn, black beard, green dust, BGA. The rule:

  • Low light (PAR 20-40) + no CO2 = slow growth, low algae risk.
  • Medium light (PAR 40-70) + no CO2 = moderate growth, moderate algae risk.
  • High light (PAR 70+) + CO2 + complete ferts = fast growth, low algae risk if balanced.
  • High light + no CO2 = algae explosion.

Do not run high light without CO2. The plants cannot use the light, the algae can.

footer

Algae: the readout of an unbalanced system

Every algae outbreak in a CO2-injected tank is a signal. The mapping:

  • Green spot algae (GSA) on glass - too low PO4, or photoperiod too long. Fix: dose PO4 to 1-2 ppm, drop photoperiod by 1 hour.
  • Black beard algae (BBA) - fluctuating CO2, or CO2 too low. Fix: dial CO2 to 30 ppm consistently, spot-treat existing BBA with 1 mL/10 L of liquid carbon (gluteraldehyde) turned off, then syphoned 10 minutes later.
  • Staghorn - ammonia or ammonium spike, usually from disturbed substrate. Fix: deep gravel vac, reduce feeding, increase water change volume.
  • Green water - dissolved CO2 too low relative to light, or NH4 from a maturing cycle. Fix: UV sterilizer (9-13 W on a 100 L tank), or a 3-day blackout.
  • Hair algae - photoperiod too long or light too bright. Fix: cut photoperiod to 6 hours, raise lights 5 cm.

The fastest diagnostic in a CO2 tank is to ask: when did I last see the drop checker read yellow-green? If the answer is "I don't check it," that is the problem. A drop checker costs $8 and the read takes 1 second.

The bottom line

A pressurized CO2 system is a $250 investment that turns a planted tank from a slow grow-in hobby into a fast one. Set it up right the first time: regulator with solenoid, ceramic diffuser, drop checker, 4 dKH reference solution, timer on the solenoid 1 hour before lights on to 1 hour after lights off. Dial bubble rate to 1 bps per 100 L to start, climb to 2-3 bps over a week, watch the drop checker for lime green by mid-photoperiod. Run KH at 3-5 dKH, pH at 6.6-6.9, and dose macros and micros to keep NO3 at 10-20 ppm and PO4 at 0.5-2 ppm. Add high light only after CO2 is dialed. That is the whole system. Everything else is refinement.

About the author

Kenji Tanaka is a koi and freshwater aquarium specialist based in Osaka, with 24 years of experience in koi husbandry, freshwater planted tanks, and quarantine facility management. He consults with koi clubs and public aquariums across the Asia-Pacific region and writes about practical water management for hobby keepers. See his full profile at [authors/Kenji Tanaka/](../Kenji%20Tanaka.md).

Kenji Tanaka

Kenji Tanaka

🐠 Freshwater & koi expert

Kenji Tanaka is a ZNA-certified koi judge with 25 years of freshwater ornamental fish research, including water quality management, koi health, and pond filtration design. He judges at national koi shows across Japan.

→ View all 27 articles by Kenji Tanaka