When injecting CO2 into a planted tank, it is useful to know how much CO2 is actually getting dissolved into the water. Lucky for us, there is a simple way to calculate the CO2 level, based on the pH, and KH of the tank water. There is a fixed relationship between the pH, KH, and CO2 level. As you increase the amount of CO2 that is dissolved into the water, the pH will drop. And if you then stop adding CO2, the pH will climb as that extra CO2 is released from the water.
A little background science:
pH is a measure of the concentration of hydrogen ions [H+] in solution. pH is actually a logarithmic measure (-log[H+]). This formula has two implications. First, it means that the hydrogen ion concentration increases (thus the solution becomes more acidic) as the pH number decreases. Second, each time the pH is reduced by 1, the concentration of hydrogen ions increases by a factor of 10.
In more simple terms, the pH is simply a measure of the acidity or alkalinity of a solution. pH values from 0 to 7 are considered acids, and pH values from 7-14 are considered bases. 7 is neutral, neither an acid nor base.
As we add CO2 to water, it forms carbonic acid, which lowers the pH. The more CO2 that gets dissolved into the water, the lower the pH.
Working to raise the pH of the water is the KH. While KH refers to Carbonate Hardness, what is really measured by a standard KH test kit is really the buffering capacity. In "most" water sources, the buffering is provided by Carbonate. In that case, buffering capacity and KH are the same thing. Assuming a constant amount of CO2, a higher KH, will result in a higher pH.
Myth: A Low KH results in a larger pH swing when adding CO2.
Many people are under the mistaken impression that a low KH results in large pH swings when adding CO2, while raising the KH will result in smaller pH swings. This is not the case. The KH will move the start and end pH values, but the pH swing will be the same for a given level of CO2. You can see this in the chart below, or using the calculation:
Case 1: Assume a KH of 15 degrees, and a starting CO2 level of 4.5ppm, which would result in a pH of 8.0. If we then add CO2, to increase the CO2 level to 28ppm, that would drop the pH down to 7.2, for a pH shift of .8.
Case 2: Assume a KH of just 1.5 degrees, and a starting CO2 level of 4.5ppm, which would result in a pH of 7.0. If we then add CO2, to increase the CO2 level to 28ppm, that would drop the pH down to 6.2, for a pH shift of .8, the exact same as in case 1.
One possible explanation for this myth is that many copies of this pH chart skip some of the higher pH values, for example, jumping from pH 7.4 to a pH of 8.0. If the reader didn't pay careful attention, they might mis-interpret the size of the pH swing. I specifically made sure to include all pH values, between 6 and 8, in steps of .2.
This relationship will break down at extremely low KH levels (below 1 degree), when there isn't enough carbonate to completely buffer the acids present. In that case, the pH can drop quickly and dramatically. But if the KH is 1 degree or higher, then the size of the pH swing when injecting CO2 will be determined only by the amount of CO2 dissolved in the water.
The pH-KH-CO2 Relationship
pH, KH, and CO2 have a fixed relationship as long as carbonate is the only buffer present (no phosphate buffers like pH-UP and- DOWN, Discus Buffer, etc). There are some parts of the country that have high levels of phosphates in their water supply. For those cases, determining CO2 levels will be difficult, as the phosphate will throw off the pH-KH-CO2 relationship, which means the CO2 charts and calculator below won't work. Note that the commercially available CO2 test kits will also be invalidated by the phosphates.
To determine your CO2 level based on the pH and KH, you can enter the values into the on-line calculator, or use the chart at the bottom of the page.
NOTE: If you aren't adding CO2 to your water, and the CO2 level based on the pH and KH indicates more than 5ppm, then it is very likely that some other buffer (such as phosphate) is present in your water. In an inhabited aquarium, the amount of CO2 produced by the fish will not have an effect on CO2 levels in the water. Any excess CO2 created by fish will dissipate into the air, leaving a fairly constant CO2 level of about 3-4ppm. If you test your pH and KH, and without adding any CO2, the chart says you've got 20ppm CO2, don't believe it.
In some case, water coming right from the tap can contain very high or very low levels of CO2. This can result in tap water with a high KH, and low pH. But, in just a few hours, that excess CO2 will dissipate from the water, leaving the normal 3-4ppm, and the pH will rise. Sometimes, the water might come from the tap with extremely little CO2, which can result in tap water with a low KH, and a very high pH. Again, after a few hours, the CO2 level will equalize, and the water will end up with 3-4ppm CO2.
CO2/pH/KH calculator and chart
NOTE: This calculator (and the chart based on this formula) will only work if your water is carbonate buffered. If your water contains high levels of phosphates, it will alter your water properties, and invalidate these CO2 calculations.
If you have measured your pH and KH, and want to know how much CO2 you have, enter the pH and KH here.
An alternate use for this calculator, or the chart below, would be to determine the "target" pH needed to achieve a certain amount of CO2. A desireable CO2 level is 10-25ppm (which is indicated in green on the chart). Levels below that don't provide optimum CO2 concentrations for high plant growth. CO2 concentrations over 25ppm can be harmful to the inhabitants of your tank. I typically shoot for 15ppm CO2. So, using the calculator, enter your KH, then try entering different pH values until it shows a CO2 level around 15ppm. Using the chart, just find the row that contains your KH, then go across until you find your desired CO2 level, then look to the top of the column to see what your "target" pH should be. Once you know that, you can adjust your CO2 injection to hit that target pH.
Myth: CO2 level can be adjusted simply by adding chemicals to alter the KH or pH.
This is a common misconception when using the CO2 / KH / pH table. It appears that by altering any parameter, the other values should move. But this is not true. Treat the pH value you see as a result. If you alter the KH, then the pH will move. If you alter the CO2 level, then the pH will move. The pH will always react to changes in either of the other two parameters.
Example: My water comes out of the tap with a KH of 3 degrees, and a pH of 7.6, which according to the the indicates a CO2 level of 2.3ppm. Looking at the chart, I might (incorrectly) assume that If I simply raised my KH to 10 degrees, I would end up with the same pH, but the CO2 level would now be 12ppm! How easy! I can add CO2 just by adding some baking soda to raise my KH.
BUT! it doesn't work that way. Instead, as I raise the KH, the pH will rise along with it, and the indicated CO2 level staying at it's 2.3ppm. In my case, if I raised the KH to 10 degrees,
You can not alter the KH levels other than by adding or removing carbonate. You can not alter the CO2 levels other than by adding or removing CO2.
Adding certain "pH altering additives" can cause much confusion as well. Additives like "Proper pH 7.0" which force the pH to a certain value completely invalidate the CO2 / KH / pH relationship. This is because these pH altering additives contain phosphates. Phosphates replace the carbonates in the buffering system. And the CO2 / KH / pH relationship is only valid in a system that is buffered by Carbonates.
There is on case I've seen where the addition of CO2 resulted in an increase in KH. This can happen when you have something in the tank that dissolves carbonate into the water. Seashells, crushed coral, and many gravels and rocks will do this. With the addition of CO2, the water turns more acidic, which will increase the dissolving of the minerals. It appears that increasing CO2 raises the KH, which isn't really the case. The dissolving minerals raise the KH, and the increase in KH results in an increase in pH. In a system using a pH probe and controller to regulate CO2 levels, this can have fatal consequences, since the pH controller will keep trying to lower the pH, but as more CO2 is dissolved, it lowers the pH, which raises the KH, which raises the pH. So you now have more CO2, but the same pH. So the controller adds even MORE co2. And it will keep going. So it's important to know your KH whenever using pH to judge CO2 levels.