Fish keepers use a table like the one below to determine dissolved $\ce{CO2}$ by observing the color of a pH indicator in water with a known concentration carbonate solution (typically 4 degrees KH ~= 70ppm carbonate).

I'm curious where the equation in the top of the picture comes from though. Below is my reasoning for wondering where that equation comes from and knowing would (I think) answer all my questions below too.

It appears to me that the equation doesn't work with pure water (water lacking carbonate).

I can think of a few reasons for this:

  1. The equation implies that either pure water cannot hold any $\ce{CO2}$
  2. $\ce{CO2}$ concentration and carbonate concentration are not truly independent
  3. Depending on how the algebra was done, it could be that pH isn't well defined without the presence of carbonate.
  4. It's an approximation that doesn't work everywhere.

My gut says its #4 or #2 but then the table would be kind of worthless unless $\ce{CO2}$'s contribution to carbonate is low relative to the amount added to solution. If this is the case, I wonder where does the table become inaccurate.


  • 2
    $\begingroup$ Hello, welcome to Chemistry! You can use the $\ce{...} command to typeset chemical formulae correctly: see chemistry.meta.stackexchange.com/q/86/16683. We also try to avoid MathJax in the title, unless absolutely necessary. $\endgroup$ Apr 4, 2021 at 20:38
  • $\begingroup$ What is a degree KH ? $\endgroup$
    – Maurice
    Apr 4, 2021 at 20:58
  • 1
    $\begingroup$ @Maurice See KH and dGH. It is unit of German origin from old good times of "real" chemistry, equivalent to 10 mg CaO / 1 L, as bicarbonate ( the former ), or totally ( the latter). It was widely used in 20th century, until replaced by mmol/L. 1 mmol/L Ca/Mg is equivalent 5.6 degrees of KH ( bicarbonates only) or dGH, It is still used by many aquarists or old school chemists in water treatment. $\endgroup$
    – Poutnik
    Apr 4, 2021 at 21:35

2 Answers 2


$^{\circ}KH$ or $dKH$ is called (degree of )carbonate hardness, but it is usually about bicarbonates $\ce{HCO3-}$, not carbonates $\ce{CO3^2-}$ . Carbonates are present in water just in traces, unless it is e.g. highly alkaline water from soda lakes of East Africa rift (like where cichlidae from lake Malawi live).

There is the equilibrium for carbon dioxide solution acidity, keeping the expression below constant:

$$K_\mathrm{a1,H2CO3^{*}} = \ \frac{\ce{[H+][HCO3-]}}{[\ce{CO2(aq,total}]}=10^{-\mathrm{pH}}\cdot \frac{\ce{[HCO3-]}}{[\ce{CO2(aq,total}]}=const \cdot 10^{(7-\mathrm{pH})}\cdot \frac{KH}{\mathrm{ppm} \ce{CO2}},$$

where [] denotes the molar concentration.

Therefore $$\mathrm{ppm} \ce{CO2} = \frac{\mathrm{const}}{K_\mathrm{a1,H2CO3^{*}}} \cdot 10^{(7-\mathrm{pH})}\cdot KH \approx 3 \cdot 10^{(7-\mathrm{pH})}\cdot KH$$

Pure water in equilibrium with air has theoretical $\mathrm{pH=5.6}$, given by dissolved $\ce{CO2}$ from air. There is established equilibrium $\ce{CO2(g) <=>[H2O] CO2(aq) <=>[H2O] H2CO3(aq) <=> H+(aq) + HCO3-(aq)}$, but all components are present just in traces.

Addressing feedback:

Carbonate hardness implies there are dissolved bicarbonates $\ce{Ca(HCO3)2}$ resp. $\ce{Mg(HCO3)2}$. These are determined indirectly by titration, that determines bicarbonate content.

This of course fails, if there is sodium bicarbonate or carbonate presence, or if all bicarbonate comes from $\ce{CO2}$. Both cases have carbonate hardness lower or zero, compared to what would say its measurement.

In fact, measuring carbonate hardness ( dKH ) is measuring alkality:

$$\ce{HCO3-(aq) + H3O+(aq) -> 2 H2O + CO2(aq,g)},$$

assuming it is equivalent to content of $\ce{Ca(HCO3)2}$ or $\ce{Mg(HCO3)2}$. But it can be aslo sodium carbonate/bicarbonate, if added to water to increase alkality.

pH of water is determined by this equation:

$$\mathrm{pH} = 6.35 + \log {\frac{[\ce{HCO3-}]}{[\ce{CO2}]}}$$

both in molar concentration.

Calcium carbonate has solubility about 15 mg/L, what makes roughly 1 dKH.

$$\ce{CaCO3(s) <=> Ca^2+(aq) + CO3^2-}$$ $$\ce{CO3^2-(aq) + H2O <=>HCO3-(aq) + OH-(aq)}$$

This solubility increases in presence of dissolved carbon dioxide,which decreases concentration of carbonate:

$$\ce{CO3^2-(aq) + CO2(aq) + H2O <=> 2 HCO3-(aq)}$$

There is direct relation between pH and relative ratio carbon dioxide : bicarbonate : carbonate.

pH ( in usual aquarium range ) is directly determined carbon dioxide / bicarbonate ratio. If pH change is forced by other chemicals, the new ratio is established.

BTW, there are just 2 degrees of freedom. You choose 2 of 3 parameters. The third one is determined by the former 2.

  • $\begingroup$ So, the $K_H$ for $\ce{CO2}$ is 29.4 atm/M. Assuming there's 400ppm in the atmosphere $\ce{CO2}$ that's 400ppm/29.4 M or 0.6ppm at equilibrium. so 0.008 dKH of (bi)carbonate came from the dissolved $\ce{CO2}$. If I add enough carbonate to make pure water 1 dKH and leave it out in the atmosphere does that mean i'll get 1.008 dKH when it reaches equilibrium? or does the added carbonate change the the rates that aqueous $\ce{CO2}$ becomes $\ce{H2CO3}$? $\endgroup$ Apr 5, 2021 at 0:26
  • $\begingroup$ After writing the previous comment/question. I think I figured out what disturbs me. Perhaps the "correct" question to ask is: the equation has 3 degrees of freedom (pH, [carbonate], and [$\ce{CO2}$]). Aquarists add a set amount of carbonate, and measure pH and assume the carbonate doesn't change. This clearly isn't exactly right and that can be seen in the case of pure water exposed to $\ce{CO2}$. If we know the amount of carbonate prior to exposure to $\ce{CO2}$ can we compute the new carbonate and dissolved $\ce{CO2}$. ie are they truly dependent on pH ? $\endgroup$ Apr 5, 2021 at 0:34
  • $\begingroup$ See the answer update. $\endgroup$
    – Poutnik
    Apr 5, 2021 at 5:39

The equation is CO2 (ppm) = 3 x ∘KH x 10^(7.0 - pH)

  • 1 mol/L CO2 = 44 g/L = 44000 ppm by weight
  • dKH is 0.17832 mmol/L MCO3
  • 10^-pH is approximately [H+]

So the equation above can be rewritten as 44000 [CO2] = (3 x 1E7 x 0.17832 x 1E-3) [HCO3-][H+], or

[HCO3-][H+]/[CO2] = 8.2 mol/L

That's just the equilibrium constant for H2O + CO2 = H+ + HCO3-

If you compare a professional-level calculation, you'll see that this is fairly close to K1 on page 147, because ''most'' of the CO2 is converted to carbonic acid. (K0) But we don't really need to split that into two reactions - the thermodynamics is the same whether we know all the intermediates or not. Nor do we need to worry about whether the solution was originally made with carbonate vs. bicarbonate, because we're simply measuring the pH, though of course if that pH is high things could get more complicated (see the part about K2), especially for the fish.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.