Two towers on the same makeup water, at the same cycles, can sit a full pH unit apart. The pH in an open recirculating tower is not set by your alkalinity number — it is set by how much dissolved CO₂ the tower holds onto, and that depends as much on the hardware as on the water. Here is the carbonate balance behind it, what else rides in your alkalinity, and how fill, airflow, and cycles set how far the tower drives CO₂ toward the ambient endpoint — the kinetically limited steady-state pH that governs scaling and corrosion.
Here is a scenario every multi-tower site eventually sees. Two cooling towers draw from the same makeup header. Both run the same cycles of concentration. The lab reports the same alkalinity on both. Yet one tower sits at pH 8.4 and the other floats at 9.0 — and neither operator added a drop of caustic or acid to make it happen.
The instinct is to hunt for a chemistry difference. There usually isn’t one. The difference is the tower itself. To see why, you have to stop treating alkalinity and pH as the same measurement moving on a single dial — and understand the three things that actually set the pH of an open recirculating loop: what is dissolved in the water, how the carbonate system responds to it, and how hard the tower degasses. This article walks through all three, with the numbers, because the practical decisions — acid setpoints, cycle limits, scaling risk — all fall out of getting them right.
pH is intensity — how acidic the water is at this instant, the activity of hydrogen ion on a log scale. Alkalinity is capacity — how much strong acid the water can absorb before its pH collapses. One is a state; the other is a reserve. You can have high alkalinity at moderate pH, or modest alkalinity at high pH. They move together only when nothing else in the system is changing — and in an open tower, something else is always changing.
In cooling water, alkalinity is carried mostly by bicarbonate (HCO₃⁻), with carbonate (CO₃²⁻) taking over a growing share as pH climbs past about 8.3, and hydroxide (OH⁻) appearing only above pH 10 or so. Total (M) alkalinity, expressed as ppm CaCO₃, is the sum of those three. They are related to pH, but they are not locked to it, and the reason is the one species most mental models leave out entirely: dissolved CO₂ — carbonic acid — which is not counted in alkalinity at all.
The carbonate system is a chain of coupled equilibria:
CO₂ + H₂O ↔ H₂CO₃ ↔ HCO₃⁻ + H⁺ ↔ CO₃²⁻ + 2H⁺
The single most useful thing to carry in your head is the first dissociation, written as the Henderson–Hasselbalch form:
pH ≈ pK₁ + log₁₀( [HCO₃⁻] / [CO₂] )
where pK₁ is roughly 6.35 near ambient temperature. Read that carefully: pH is set by the ratio of bicarbonate to dissolved CO₂ — not by alkalinity alone. If you strip CO₂ out of the water, the denominator drops, the ratio climbs, and pH rises — even though the alkalinity number never moved. Nothing was added. A volatile acid simply left through the top of the tower.
Put numbers on it. Take a loop holding bicarbonate at about 200 ppm as CaCO₃ (roughly 2.4 mmol/L of HCO₃⁻). If the water is in balance with dissolved CO₂ at about 0.24 mmol/L, the ratio is 10:1, log₁₀ of that is 1, and pH lands near 7.35. Now let the tower strip CO₂ down to 0.024 mmol/L — a tenfold reduction — and the ratio becomes 100:1, the log term becomes 2, and pH climbs a full unit to about 8.35. Same alkalinity the entire time. That one worked example is the whole article in miniature: pH followed the CO₂, not the alkalinity.
The alkalinity numbers you act on come from a two-endpoint titration. Titrating with standard acid to the phenolphthalein endpoint (pH ~8.3) gives P-alkalinity — it captures hydroxide plus half the carbonate. Continuing to the methyl-orange endpoint (pH ~4.5) gives total or M-alkalinity — the full bicarbonate, carbonate, and hydroxide inventory. The relationship between P and M is a fast field diagnostic:
The critical point that never appears on the bench sheet: dissolved CO₂ is not part of alkalinity. The titration starts at the sample’s own pH and adds acid; it never sees the free CO₂ that is actually holding pH down. So the very species that governs pH is invisible to the measurement most operators use to predict pH. That is the structural reason the “alkalinity tells me my pH” shortcut fails.
The methyl-orange titration measures everything that neutralizes acid down to pH 4.5. In clean makeup that is bicarbonate and carbonate. But depending on the source water and the treatment program, the titration can also pick up species that have nothing to do with the carbonate system:
This is why two makeups can report the same total alkalinity and cycle to completely different pH and scaling behavior. If a meaningful fraction of one water’s alkalinity is borate or silicate, its carbonate inventory — the part that actually couples to CO₂ and to calcium — is smaller than the number suggests. Feed acid to that water on the assumption it is all bicarbonate and you will overshoot. The corollary is a program trap worth stating plainly: raising orthophosphate or running silicate-bearing makeup moves the alkalinity number without moving the carbonate system that governs pH. Before you trust an alkalinity reading to predict pH or scaling, know what is actually in it. Run the P and M split; if the numbers will not reconcile with a straight carbonate/bicarbonate balance at the measured pH, the difference is your non-carbonate alkalinity, and you should account for it explicitly.
An open recirculating tower is, in effect, a large countercurrent air stripper that happens to reject heat as its day job. It cascades water over fill and pulls air through it continuously, and that intimate air–water contact drives dissolved CO₂ toward equilibrium with the ambient air — where the partial pressure of CO₂ is only about 0.04% (roughly 400 ppm by volume, and climbing year over year, but still very low). That ambient level is the thermodynamic endpoint and the direction the mass transfer always points. Henry’s law fixes how much CO₂ the water would hold if it ever got there: very little, which through the ratio above would mean a high pH on the same alkalinity.
But the tower never actually gets there. This is the part that is easy to state loosely and worth stating carefully. The residence time and interfacial area over a single pass are not enough for the gas–liquid transfer to complete, so the water leaves the fill still supersaturated in CO₂ relative to the atmosphere — sitting at some fractional approach to the endpoint, not at the endpoint itself. Field and modeling work bears this out: outlet water typically behaves as if it were in equilibrium with a gas around 800 ppm CO₂, not the ~400 ppm in air, and the extent of stripping is genuinely kinetically limited. So the pH a tower actually runs at is a kinetically set steady-state pH, not a thermodynamic equilibrium. The distinction matters in practice: a carbon balance on the loop cannot credit all the available CO₂ off-gassing per pass — it has to apply a stripping efficiency, an approach-to-equilibrium fraction, so only part of the thermodynamically available CO₂ leaves each circuit.
The makeup water arriving at the tower is frequently supersaturated with CO₂ relative to the atmosphere — groundwater especially can carry many times the atmospheric-equilibrium level. The tower’s first act on that water is to blow the excess CO₂ off, and pH rises accordingly. How large an approach fraction it achieves — how hard it strips — is a function of the hardware and how it is run, not of the chemistry:
So the film-fill, high-airflow tower achieves a larger approach fraction, strips CO₂ aggressively, and floats up to pH 9.0. The older splash-fill unit beside it achieves a smaller approach, holds more CO₂, and settles at 8.4. Note what this is not: it is not two different equilibria. Both towers share the same driving force toward the same ambient endpoint — the difference is how far along that path each one gets before the water leaves the fill. Same endpoint, different approach, because the hardware sets the kinetics. If both truly reached ambient equilibrium, they would land at the same pH; the fact that they don’t is the proof that neither is at equilibrium. The two-tower diagram above lays that side by side; the figure below shows the underlying relationships quantitatively.
None of this would matter if pH were just a number on a log sheet. It matters because pH is a first-order driver of both calcium carbonate scaling and mild-steel corrosion, and because the indices most programs lean on — Langelier (LSI), Ryznar, calcite saturation — take pH as a direct input.
Calcium carbonate solubility falls as pH rises, because higher pH shifts the carbonate system toward CO₃²⁻, the ion that pairs with calcium to precipitate CaCO₃. A tower that strips hard and floats to pH 9.0 is therefore sitting at a materially higher scaling driving force than its splash-fill neighbor at 8.4 — on the same water, at the same calcium. If you calculate LSI for both using a single assumed pH, you have already mis-stated the risk on at least one of them. The pH you feed the index has to be the steady-state pH that tower actually runs at, which comes from the tower’s stripping behavior, not from the makeup analysis or a rule of thumb.
The same logic runs the other direction on the mild-steel side. Let pH drift low — a cold-weather loop holding more CO₂, or an aggressive acid setpoint — and you trade scaling risk for general and CO₂-driven corrosion. The operating window between “scales” and “corrodes” is exactly the pH band the tower’s CO₂ stripping is constantly trying to move you around in. Managing that window is the job; assuming alkalinity pins pH is how programs lose control of it.
Your steady-state pH — and therefore your scaling and corrosion risk — is a property of the tower and the water, not the water alone. That has several practical consequences worth acting on:
When pH and alkalinity seem to disagree, work it in this order before you touch a chemical:
The takeaway is simple to state and easy to miss on a busy site: control alkalinity and pH as two separate levers, because the tower treats them separately. If your pH reads high while alkalinity is dropping, that is not a contradiction — it is a degassing tower doing exactly what its mechanics dictate. Understand the CO₂ the tower holds, and the pH stops being a mystery and becomes something you can predict.
Independent, vendor-neutral cooling water modeling. We take your full water analysis, cycles, and tower mechanics — fill, airflow, and all — and predict where steady-state pH and scaling risk actually sit, before you touch an acid setpoint. No chemistry sold.