Aquarium CO₂ Calculator – pH & KH to ppm | Planted Tank CO₂ Tool

Aquarium CO₂ Calculator

CO₂ injection is the secret to a thriving planted tank. But getting the levels right requires precision. Use our free calculator to estimate your dissolved CO₂ concentration from pH and KH measurements, determine the target pH for 30 ppm CO₂, and find the right injection rate for your tank size — all in one place.

📊 Calculate Dissolved CO₂ (pH & KH Method)

Use a calibrated pH meter or liquid test kit.

1 °dKH = 17.9 ppm CaCO₃. Most liquid test kits measure in °dKH.

💨 Estimated CO₂ Concentration: -- mg/L (ppm)

🎯 Target pH for 30 ppm CO₂: --

🎨 Drop Checker Color: --

⚡ Recommended Injection Rate (BPS): -- bubbles per second

* Formula: CO₂ (mg/L) = 3 × KH × 10^(7-pH). This is an approximation assuming carbonate buffering is the main factor. Always confirm with a drop checker and observe fish behavior.

🫧 Estimate Injection Rate (Bubbles Per Second)

🫧 Recommended Starting BPS: 0 bubbles per second

📏 Daily CO₂ Usage Estimate: 0 grams/day

* Based on a 10‑hour photoperiod. Start low, increase gradually over several days, and monitor your drop checker. Adjust up or down by 0.5 BPS until you reach lime green.

What Is an Aquarium CO₂ Calculator?

An aquarium CO₂ calculator helps planted tank hobbyists estimate the concentration of dissolved carbon dioxide (CO₂) in their water. It uses the well‑established relationship between pH, carbonate hardness (KH), and dissolved CO₂. In a CO₂‑injected tank, this tool helps you:

  • Determine if your current CO₂ levels are in the optimal range (20‑30 ppm).
  • Find the target pH you need to reach for 30 ppm CO₂ given your KH.
  • Calculate a starting injection rate (bubbles per second) based on tank size and plant density.
  • Avoid dangerous CO₂ overdoses that can suffocate fish. CO₂ is highly toxic when overdosed and is probably the biggest cause of livestock fatalities in planted aquariums.[reference:0]

The calculator uses the standard hobby formula: CO₂ (mg/L) = 3 × KH (°dKH) × 10^(7-pH). While it's an approximation, it provides an excellent starting point for dialing in your CO₂ system.[reference:1][reference:2]

Why Proper CO₂ Levels Matter – For Plants and Fish

Plant Health & Growth

CO₂ is the most important nutrient for aquatic plants. A level of 25–30 mg/L fuels photosynthesis, leading to lush growth, vibrant colours, and stronger root systems. Below 15 ppm, demanding plants will struggle and algae may take over.[reference:3]

Fish & Shrimp Safety

A CO₂ content of 30 ppm is safe for most fish and invertebrates. Levels above 40 ppm can lead to oxygen displacement, acidosis, and fish distress. Signs of too much CO₂ include gasping at the surface and unusual lethargy.[reference:4][reference:5]

Algae Control

Balanced CO₂ levels give plants a competitive advantage over algae. Too little CO₂ = plant stress = algae outbreak. Too much CO₂ without proper nutrients also causes issues. Aim for stability.

pH Stability

CO₂ injection naturally lowers pH. A properly set up system creates a predictable daily pH swing (about 1.0 drop during photoperiod). Understanding CO₂/pH/KH relationship prevents dangerous pH crashes.

Understanding the CO₂ – pH – KH Relationship

These three parameters are chemically linked. Here's how:

  • CO₂ (Carbon Dioxide): Dissolves in water to form carbonic acid, which lowers pH.
  • pH (Acidity): Measures how acidic or basic the water is. CO₂ injection decreases pH.
  • KH (Carbonate Hardness): The water's buffering capacity. Higher KH resists pH changes. This is why the same pH can mean very different CO₂ levels depending on KH.[reference:6]

For example, three tanks at pH 6.6:

  • KH 2 → CO₂ ≈ 15 ppm (too low for demanding plants)
  • KH 4 → CO₂ ≈ 30 ppm (optimal)
  • KH 6 → CO₂ ≈ 45 ppm (dangerous for fish)

Relying on pH alone is misleading. You must know your KH to interpret CO₂ levels accurately.[reference:7]

The CO₂ Formula: How We Calculate ppm

CO₂ (mg/L) = 3 × KH (°dKH) × 10(7 - pH)

Where:

  • KH (°dKH): Carbonate hardness in German degrees. 1 °dKH = 17.9 ppm CaCO₃. If your test kit gives ppm, divide by 17.9 to get °dKH.
  • 3: A constant derived from the chemical equilibrium of CO₂ in water at typical aquarium temperatures.[reference:8]
  • 10(7 - pH): Converts pH value into a hydrogen ion concentration factor.

Step‑by‑step example: You measure pH 6.8 and KH 4 °dKH.

  1. 10(7 - 6.8) = 100.2 ≈ 1.58
  2. 3 × 4 × 1.58 = 18.96 mg/L
  3. ≈ 19 ppm (slightly below optimal range)

Our calculator does this instantly. Just enter pH and KH, and you get your estimated CO₂ ppm, target pH for 30 ppm, and drop checker color indication.[reference:9]

Factors That Affect CO₂ Requirements

  • Plant species and density: Demanding carpet plants (Dwarf Baby Tears, Monte Carlo) require 30+ ppm, while low‑light plants (Anubias, Java Fern) can thrive at 10‑15 ppm.
  • Light intensity: High light increases photosynthesis rate, requiring more CO₂ to prevent algae. Under low light, plants need less CO₂.
  • Surface agitation: Strong surface movement degasses CO₂ faster, requiring higher injection rates. Calm surfaces retain CO₂ longer.
  • Water flow: Good circulation ensures CO₂ reaches all plants evenly. Dead spots create CO₂ deficiency even if your overall ppm is sufficient.[reference:10]
  • Tank depth: Deeper tanks need more CO₂ to reach the substrate level effectively.
  • KH level: Higher KH buffers pH changes, meaning you need to inject more CO₂ to achieve the same pH drop and CO₂ concentration.

Types of CO₂ Systems – Which One Is Right for You?

Pressurized CO₂ (Recommended)

Most precise and consistent method. Uses a CO₂ cylinder, regulator, solenoid valve, and timer. Best for medium to large tanks. Higher upfront cost but lower long‑term maintenance. Ideal for achieving stable 30 ppm CO₂.

DIY Yeast CO₂

Uses sugar, water, and yeast to produce CO₂. Inexpensive but inconsistent and unstable. Suitable for very small tanks (<10 gal) or as a temporary solution. Not recommended for tanks over 20 gallons.

Liquid Carbon (Glutaraldehyde)

Not true CO₂ injection but provides an alternative carbon source for low‑light plants. Helps control algae but cannot replace pressurized CO₂ for demanding plants. Safe when used as directed.

For serious planted tanks, a pressurized CO₂ system with a solenoid valve and timer is the gold standard. It allows you to automate injection to coincide with your photoperiod and maintain consistent levels day after day.[reference:11]

How to Dial In Your CO₂ Injection (Step‑by‑Step)

1. Use our BPS calculator – Enter your tank volume and plant density to get a starting bubble rate. Start low (e.g., 1 BPS for a 40‑gallon tank).

2. Inject 1‑2 hours before lights on – This allows CO₂ to build up to the desired concentration by the time plants start photosynthesizing. Stop injection 1 hour before lights off to prevent overnight CO₂ buildup.[reference:12][reference:13]

3. Measure your KH – Use a liquid KH test kit to determine your water's carbonate hardness. This is essential for the pH/CO₂ relationship. Test monthly or after large water changes.

4. Check pH at peak CO₂ (mid‑photoperiod) – Using a calibrated pH meter, measure your tank's pH 4‑6 hours after lights come on. Then use our pH/KH calculator to estimate your actual CO₂ level.

5. Observe your drop checker – A drop checker with 4 °dKH reference solution is the most reliable visual indicator. Aim for lime green (approximately 30 ppm). Blue means too little CO₂; yellow means too much.[reference:14][reference:15]

6. Adjust slowly – Increase or decrease your bubble rate by 0.5 BPS per day, wait 24 hours, and re‑evaluate. Never make large adjustments at once.

7. Watch your fish – Fish gasping at the surface, lethargy, or darting are signs of CO₂ overdose. If observed, immediately increase surface agitation or perform a 25‑50% water change.

8. Look for pearling – Tiny oxygen bubbles forming on plant leaves indicate healthy photosynthesis and sufficient CO₂.[reference:16]

Consistency is more important than speed when dialing in CO₂. Aim for stable green in the drop checker before proceeding to further adjustments.[reference:17]

Common CO₂ Injection Mistakes (And How to Avoid Them)

  • ❌ Relying on pH alone without knowing KH: pH alone doesn't tell you CO₂ levels. Always measure KH first. Two tanks with the same pH can have very different CO₂ concentrations depending on KH.[reference:18]
  • ❌ Injecting CO₂ 24/7: Plants don't use CO₂ in the dark. Running CO₂ at night can lower pH dangerously and stress fish. Use a timer to match your photoperiod.
  • ❌ Making large BPS adjustments: Increase or decrease by 0.5 BPS per day at most. Your drop checker takes 1‑2 hours to respond fully.[reference:19]
  • ❌ Poor CO₂ distribution: Place your diffuser near the filter outflow or use a circulation pump to distribute CO₂ evenly. Otherwise, some areas of the tank may have zero CO₂ while others have too much.
  • ❌ Not using a drop checker: A drop checker with 4 °dKH reference solution is the most reliable way to visually confirm CO₂ levels. The pH/KH method can be skewed by other acids in the water.[reference:20][reference:21]
  • ❌ Ignoring surface agitation: Too much surface movement degasses CO₂, wasting gas and making it harder to reach 30 ppm. Too little movement reduces oxygen for fish. Find the right balance.

Signs of Too Much vs Too Little CO₂

⚠️ Too Much CO₂ (Overdose)

  • Fish gasping at the surface
  • Lethargy, erratic swimming, loss of balance
  • Shrimp dying or acting lethargic
  • Drop checker turning yellow
  • pH drop > 1.2 from baseline
  • Plants may appear "bleached"

Action: Increase surface agitation, perform 25‑50% water change, reduce BPS by 30‑50%.

🍂 Too Little CO₂ (Deficiency)

  • Slow or stunted plant growth
  • Leaves turning yellow or pale (chlorosis)
  • Green spot algae on leaves
  • Drop checker remaining blue
  • Poor root development
  • Plants "melting"

Action: Increase BPS gradually (0.5 per day). Check drop checker after 24 hours. Ensure good circulation.

Balancing CO₂ and Oxygen for Fish Health

CO₂ and oxygen are not enemies — they can coexist. Here's how:

  • During the day: Plants produce oxygen as a byproduct of photosynthesis. Your fish get plenty of oxygen when CO₂ is injected (provided CO₂ isn't over 40 ppm).
  • At night: Plants respire, consuming oxygen and releasing CO₂. That's why we shut off CO₂ injection 1 hour before lights off — to prevent CO₂ buildup overnight.[reference:22]
  • Surface agitation: Maintain gentle surface movement at all times. Too much agitation degasses CO₂; too little reduces oxygen. A small air stone at night can help oxygenation without affecting daytime CO₂ levels.[reference:23]
  • Fish sensitivity: The safe threshold for CO₂ depends on dissolved oxygen (O₂) levels. In aquariums with high O₂, fish can tolerate higher CO₂. In low O₂ tanks, even 30 ppm can stress fish.[reference:24]

If your fish are gasping despite a green drop checker, your oxygen levels may be too low. Increase surface agitation or add an air stone at night.

How to Measure KH and pH Correctly for Accurate CO₂ Readings

  • Use a calibrated pH meter – Digital pH meters are more accurate than liquid test kits. Calibrate weekly using buffer solutions. An uncalibrated probe can lead to dangerous CO₂ miscalculations.[reference:25]
  • Test KH with a reliable kit – Liquid drop‑count KH test kits are affordable and accurate. Follow instructions precisely. Small variations in KH can significantly alter calculated CO₂.[reference:26]
  • Take measurements at the same time each day – CO₂ levels fluctuate throughout the day. For consistent readings, measure pH 4‑6 hours after lights come on (peak CO₂).
  • Measure KH before CO₂ injection starts – KH is unaffected by CO₂ injection, so you can measure it anytime. However, if you use pH‑altering additives, KH readings may be inaccurate.
  • Understand the limitations – The pH/KH formula assumes carbonic acid from CO₂ is the only acidifying compound. Humic acids from driftwood, tannins, or other buffers can skew the calculation. Use a drop checker as a secondary confirmation.[reference:27]

Practical Examples by Tank Type

🌿 20‑gallon low‑light planted tank (Anubias, Java Fern): Target CO₂ 10‑15 ppm. KH 3 °dKH → target pH 7.0‑7.2. BPS: 0.5‑1. Drop checker: light blue‑green. No CO₂ injection needed if light is low, but small injection improves growth.

🌱 55‑gallon medium‑light planted (stem plants, crypts): Target CO₂ 20‑25 ppm. KH 4 °dKH → target pH 6.8‑7.0. BPS: 2‑3. Drop checker: lime green.

🍃 75‑gallon high‑light planted (carpet plants, Monte Carlo): Target CO₂ 30‑35 ppm. KH 5 °dKH → target pH 6.5‑6.6. BPS: 4‑5. CO₂ injection essential. Drop checker: lime green to light yellow (safe).

🐠 40‑gallon fish‑only (no live plants): CO₂ injection not needed. But if you have hard water (high KH), pH may be high. Consider CO₂ only for pH control — target 10‑15 ppm for slight pH reduction.

Use the calculators above with your exact pH and KH to get a custom recommendation.

Frequently Asked Questions

1. How to calculate CO₂ in an aquarium from pH and KH?
Use the formula CO₂ (mg/L) = 3 × KH (°dKH) × 10^(7-pH). Our calculator above does this instantly. Enter your pH and KH, and you'll get the estimated CO₂ concentration.
2. What is a good CO₂ level for a planted aquarium?
Most planted tanks aim for 20‑30 mg/L (ppm) CO₂. Below 15 ppm, plant growth slows and algae risk increases. Above 40 ppm, fish may become stressed or suffocate.[reference:28][reference:29]
3. How many bubbles per second (BPS) for my tank?
Use our BPS calculator above. As a general guide: 10 gallons → 0.5 BPS, 20 gallons → 1‑2 BPS, 40 gallons → 2‑3 BPS, 65+ gallons → 4+ BPS. Start low and increase gradually while monitoring your drop checker.[reference:30]
4. What does my drop checker color mean?
Blue = too little CO₂ (under 15 ppm). Green = optimal (20‑30 ppm). Yellow = too much CO₂ (over 40 ppm). Always use a drop checker with 4 °dKH reference solution for accurate readings.[reference:31][reference:32]
5. When should I turn CO₂ on and off?
Turn CO₂ on 1‑2 hours before lights turn on, and off 1‑2 hours before lights turn off. This gives plants CO₂ when they start photosynthesizing and prevents overnight CO₂ buildup.[reference:33][reference:34]
6. Can too much CO₂ kill my fish?
Yes. CO₂ is highly toxic when overdosed — it's the biggest cause of livestock fatalities in planted aquariums. Levels above 40 ppm can cause oxygen displacement, acidosis, and death. Always monitor with a drop checker and watch for fish gasping.[reference:35]
7. Is this calculator suitable for freshwater and saltwater aquariums?
The formula is based on freshwater chemistry (carbonate buffering system). Saltwater tanks use a different buffer system (borate/alkalinity). For freshwater planted tanks, this calculator is accurate. For saltwater, use a CO₂ monitor designed for marine applications.
8. What happens if I inject CO₂ with low KH?
Low KH water has little buffering capacity. CO₂ injection will cause a rapid pH drop, which can harm fish. If your KH is below 3 °dKH, consider adding a buffer (e.g., crushed coral) before starting CO₂ injection. Target KH 4‑8 °dKH for stable CO₂ injection.

📚 Related Calculators for Planted & Aquascaped Tanks

Master CO₂ for a Lush, Thriving Aquarium

CO₂ injection transforms a struggling planted tank into a vibrant, algae‑free ecosystem. Start by measuring your KH, then use this calculator to find your current CO₂ levels and target pH. Dial in your bubble rate slowly, watch your drop checker, and always observe your fish. Combine proper CO₂ with good lighting, filtration, and fertilization — and you'll be rewarded with lush plant growth, happy fish, and a stunning aquascape.