CO2 Calculator for Planted Tanks: Know Your Real Dissolved CO2
A free CO2 calculator for planted tanks that turns your pH and KH readings into an actual dissolved CO2 estimate in ppm, or works backward from a target CO2 level to tell you exactly what pH you need to hit.
Planted Tank CO2 Calculator
pH / KH MethodQuick Answer
A CO2 calculator for planted tanks estimates your aquarium’s dissolved carbon dioxide using the standard formula CO2 (ppm) = 3 × KH × 10^(7 − pH). Most planted tanks running pressurized CO2 injection target roughly 20–30 ppm for healthy plant growth, while non-injected tanks typically sit around 2–5 ppm from atmospheric equilibrium alone. Levels above about 30–40 ppm start to carry real risk for fish and shrimp, especially overnight when photosynthesis stops and dissolved oxygen naturally drops.
On This Page
- What Is a CO2 Calculator for Planted Tanks?
- How to Use This Calculator
- The CO2/pH/KH Formula, Explained
- Target CO2 Ranges for Planted Tanks
- Drop Checkers vs. the pH/KH Method
- CO2 Safety and Overnight Risk
- Worked Examples
- Dialing In a New CO2 System
- Where the Formula Breaks Down
- Common CO2 Dosing Mistakes
- Related Fish & Pet Calculators
- Frequently Asked Questions
What Is a CO2 Calculator for Planted Tanks?
A CO2 calculator for planted tanks estimates your aquarium’s dissolved carbon dioxide concentration using two readings you can take with standard test kits: pH and KH (carbonate hardness). Rather than requiring a dedicated CO2 test kit or expensive inline monitor, this CO2 calculator for planted tanks applies a well-established chemistry relationship — the same carbonate buffering equilibrium that governs KH’s effect on pH — to back-calculate roughly how much CO2 is dissolved in your water at any given moment.
Anyone who’s run a pressurized CO2 system for more than a few months eventually learns that “just watch the bubble count” is nowhere near precise enough to keep plants thriving without risking fish. Bubble rate depends on your regulator, diffuser efficiency, tank flow, and surface agitation, all of which vary between setups and even change slightly over time as diffusers get more or less efficient. pH and KH, by contrast, respond directly to how much CO2 is actually dissolved in the water, which is why serious planted tank keepers eventually move from counting bubbles to tracking pH drop against a known KH baseline — exactly the calculation this tool automates.
This tool works in two directions: estimating your current CO2 level from a pH and KH reading you’ve already taken, or working backward from a target CO2 level to tell you exactly what pH you need to hit given your tank’s KH, which is the more practical question when you’re actively tuning a new CO2 system’s injection rate.
How to Use This Calculator
Getting an accurate result from this CO2 calculator for planted tanks takes under a minute:
- Choose your mode. Use “Estimate CO2 from pH & KH” if you’ve already tested both and want to know your current CO2 level, or “Find Target pH for a CO2 Goal” if you’re tuning a CO2 system and want to know what pH to aim for.
- Enter your pH and KH (or your KH and target CO2 in the second mode), ideally measured with a calibrated pH probe or a reliable liquid test kit rather than a pH indicator alone.
- Optionally add your degassed baseline pH (your tank’s pH measured after the water has been air-stoned or left open overnight to fully release CO2), which lets the calculator show you the exact pH drop to target from that baseline.
- Click “Calculate.” You’ll see your estimated dissolved CO2 in ppm, a risk-level indicator, and practical guidance for your reading.
For the most consistent results, test pH and KH from the same water sample at the same time, since both can shift somewhat throughout the day in a CO2-injected tank.
The CO2/pH/KH Formula, Explained
The formula this calculator uses, CO2 (ppm) = 3 × KH × 10^(7 − pH), comes from the carbonic acid equilibrium that governs how dissolved CO2, bicarbonate, and carbonate ions interact in water. In plain terms: at a fixed KH, lower pH means more dissolved CO2, and the relationship is logarithmic rather than linear, which is why even a modest pH drop can represent a meaningful CO2 increase. This is also why raising KH without changing your CO2 injection rate raises pH, and why the same absolute pH reading means very different CO2 levels in a low-KH tank versus a high-KH tank — the formula’s dependence on KH is what makes a universal “target pH” impossible to state without also knowing carbonate hardness.
Target CO2 Ranges for Planted Tanks
| Tank Type | Target CO2 (ppm) | Notes |
|---|---|---|
| Non-Injected / Low-Tech | 2 – 5 | Ambient atmospheric equilibrium |
| Light CO2 Injection | 10 – 15 | Low-light, low-demand plant setups |
| Standard Planted Tank | 20 – 30 | Most common injected target range |
| High-Tech / Carpet Plants | 30 – 40 | Higher light demands more CO2; monitor closely |
| Shrimp-Safe Range | 15 – 20 | Shrimp are more CO2-sensitive than most fish |
Most successful planted tanks land in the 20–30 ppm range as a practical balance between strong plant growth and fish safety, adjusting up or down based on livestock sensitivity and lighting intensity.
Drop Checkers vs. the pH/KH Method
A drop checker is a small glass device that sits inside the tank, filled with a pH-sensitive indicator solution mixed with a fixed 4 dKH reference water. Because the reference water’s KH never changes, the drop checker’s color, typically ranging from blue (low CO2) through green (around 30 ppm) to yellow (high CO2), responds purely to CO2 diffusing in from the tank, giving a direct visual read that isn’t affected by your tank’s own KH or any additives that might skew a pH/KH calculation. The tradeoff is that drop checkers lag behind real-time CO2 changes by 30 minutes to an hour, since it takes time for CO2 to equilibrate through the glass. Using both methods together, the pH/KH calculation for a fast, real-time estimate and a drop checker as a periodic visual cross-check, gives a more complete picture than relying on either alone.
CO2 Safety and Overnight Risk
CO2 injection introduces a real safety consideration that non-injected tanks don’t have to manage: dissolved oxygen and CO2 move in opposite directions overnight. During the day, plants photosynthesize, consuming CO2 and releasing oxygen. Once lights go off, that process stops, and if CO2 injection keeps running unchanged, CO2 continues accumulating while oxygen is no longer being replenished by plants, creating a compounding risk right when fish are least able to cope with it. This is why nearly every well-run CO2 system uses a timer or solenoid valve to pause injection an hour or two before lights off and resume it an hour or two before lights on, avoiding that overnight double-risk window entirely.
Worked Examples
Seeing the formula applied to real readings makes it easier to interpret your own tank’s numbers.
pH 6.6, KH 4 dKH
Using CO2 = 3 × 4 × 10^(7−6.6) = 12 × 10^0.4 ≈ 30 ppm, comfortably in the standard target range for a healthy, actively injected planted tank.
pH 6.9, KH 3 dKH
Using CO2 = 3 × 3 × 10^(7−6.9) = 9 × 10^0.1 ≈ 11 ppm, a gentler level well suited to CO2-sensitive shrimp while still providing a mild growth boost over a fully non-injected tank.
KH 5 dKH, Target CO2 30 ppm
Solving pH = 7 − log10(target/(3 × KH)) = 7 − log10(30/15) = 7 − log10(2) ≈ pH 6.7. If this tank’s degassed baseline pH is 7.7, that means dialing in the CO2 injection rate until the tank’s daytime pH drops to about 6.7 — a full 1.0 unit drop.
Enter your own readings into the calculator above for numbers tailored to your specific tank.
Dialing In a New CO2 System
When setting up CO2 injection for the first time, most experienced planted tank keepers start conservatively and increase gradually over several days rather than jumping straight to a 30 ppm target. A common approach is to first measure the degassed baseline pH, then start injection at a modest rate, checking pH drop and fish behavior daily, and slowly increasing the bubble rate until the calculated CO2 lands in the target range with no signs of fish gasping at the surface or unusual lethargy. This gradual approach protects livestock during the tuning process and also gives the biofilter and plants time to adjust to a changing CO2 environment.
Where the Formula Breaks Down
The CO2/pH/KH formula assumes your measured KH reflects true carbonate and bicarbonate buffering alone. Several common additions can throw this assumption off: remineralizers like Seachem Equilibrium add minerals that don’t necessarily track with carbonate KH the way the formula expects, driftwood and botanicals release tannins that lower pH without changing carbonate hardness, and some active substrates buffer pH directly through ion exchange rather than through the carbonate system. In any of these situations, the calculated CO2 figure should be treated as a rough estimate rather than an exact figure, and cross-checking with a drop checker or a dedicated CO2 test kit becomes more valuable.
Common CO2 Dosing Mistakes
- 1Judging CO2 by bubble count alone. Bubble rate varies with diffuser efficiency and flow; pH/KH tracking or a drop checker gives a far more reliable picture.
- 2Running CO2 injection 24/7. Always pause injection during lights-off hours to avoid the overnight low-oxygen, high-CO2 risk window.
- 3Increasing CO2 too quickly when tuning a new system. Raise injection gradually over several days, watching fish behavior closely along the way.
- 4Ignoring surface agitation’s role in CO2 retention. Too much surface disturbance off-gasses CO2 faster than injection can keep up, while too little limits oxygen exchange, especially at night.
- 5Not accounting for additives that skew KH. Remineralizers and tannin-releasing driftwood can make the pH/KH formula less accurate; cross-check with a drop checker when in doubt.
Related Fish & Pet Calculators
If this CO2 calculator helped you dial in your planted tank, a few companion tools round out a complete aquarium and pet-care toolkit. Before adding CO2-sensitive fish or shrimp to a newly injected tank, checking your stocking level with the Fish Inch Per Gallon Calculator helps avoid overcrowding a system you’re still tuning. For households balancing a planted tank alongside other pets, the Pet Alliance Calorie Calculator keeps a dog or cat’s diet on track, and the Dog Age Calculator is a quick way to translate your dog’s age into human years. Browse the full library of free tools on the Pet Calculator Hub.
Check safe stocking levels before adding new fish.
Estimate daily calorie needs for dogs and cats.
Convert your dog’s age into human years.
Browse the full library of free pet-care calculators.
Frequently Asked Questions
What is a good CO2 level for a planted tank?
Most planted tanks running CO2 injection target roughly 20 to 30 ppm, which supports healthy plant growth without stressing fish. Ambient, non-injected tanks typically sit around 2 to 5 ppm from atmospheric equilibrium alone.
How do I calculate CO2 from pH and KH?
The standard formula is CO2 (ppm) = 3 × KH × 10^(7 − pH), where KH is in degrees of carbonate hardness (dKH). This calculator applies that formula automatically once you enter your pH and KH readings.
What CO2 level is dangerous for fish?
Levels above roughly 30 to 40 ppm start to carry real risk, particularly overnight when photosynthesis stops and dissolved oxygen naturally drops. Above 40 to 50 ppm is generally considered dangerous and can cause fish to gasp at the surface or suffocate.
Why does the CO2/pH/KH formula not always match my drop checker?
The formula assumes KH comes purely from carbonate and bicarbonate buffering. Additives like Seachem Equilibrium, driftwood tannins, or certain substrates can affect pH or hardness without representing true carbonate KH, throwing off the calculated result.
Should I turn off CO2 injection at night?
Most experienced keepers pause injection an hour or two before lights off and resume it an hour or two before lights on, using a timer or solenoid, avoiding low dissolved oxygen and elevated CO2 occurring together overnight.
What is a drop checker and how does it relate to this calculator?
A drop checker is a small glass device with a pH-sensitive indicator and 4 dKH reference water that changes color based on surrounding CO2. It provides a visual, real-time cross-check against this calculator’s pH/KH-based estimate.
How much should I drop my pH to hit my target CO2?
Dropping pH by about 1.0 full unit from your CO2-free baseline typically corresponds to roughly 30 ppm of dissolved CO2, regardless of starting KH. This calculator can compute the exact pH drop needed for your specific KH and target.
Do shrimp need lower CO2 levels than fish?
Yes. Shrimp are generally more sensitive to elevated CO2 and low dissolved oxygen than most community fish. Many shrimp keepers target the lower end of the typical range, often 15 to 20 ppm, or avoid pressurized CO2 entirely.
Can I use this calculator for a non-CO2-injected tank?
Yes. Entering your tank’s normal pH and KH readings estimates ambient dissolved CO2, which for most non-injected, well-aerated tanks falls in the low single digits, roughly 2 to 5 ppm.
What causes CO2 levels to swing throughout the day in an injected tank?
CO2 injection typically runs on a lighting-tied timer, so levels rise while active and fall once paused or once plants consume it during photosynthesis. Flow, surface agitation, and injection rate tuning also affect how much CO2 fluctuates over the day.