Compute center pipe scaling: the treatment plan from ID to acceptance
How compute centers handle pipe scaling: diagnose with three signals, match solvent to mineral, choose the treatment level, and pass four acceptance gates.
Scaling in a compute-center cooling loop is not a mystery and not a disaster, when it is handled as a batch process with an acceptance test. It becomes a disaster when someone reacts to a rising approach temperature by ordering a stronger acid. The mineral on the pipe wall is only the last step of a chain — water chemistry, temperature, and velocity put it there — and the treatment plan has to attack the chain in order: diagnose, identify, choose a treatment level, execute, accept, and then prevent.
This is that plan, written for the person who has to sign off on it. The worked example throughout is a 900 kW direct-to-chip hall: DN100 TCS piping, a liquid-to-liquid CDU with 71.8 m² of plate heat exchanger at a 4 K design approach, and racks of 1,500 W cold plates. Every recommendation carries a number, and the same fouling-prevention fundamentals sit underneath it — this article is the operational counterpart: what to do when the prevention has already failed.
The number to keep in your head: the fouling allowance already carried in a normal heat-exchanger selection is worth 20 to 80 µm of calcium carbonate. One heating season of uncontrolled hardness ingress consumes the entire margin, and every additional 100 µm adds 0.57 K to a 4 K approach — the thermal equivalent of 14% of the plate area you already paid for.
Know what the design already paid for
Before treating anything, establish what "dirty" means in thermal terms. Heat-exchanger selections do not assume clean water. The air-conditioning industry has carried 0.0005 h·ft²·°F/Btu (0.00009 m²·K/W) as a standard fouling allowance for decades, and AHRI's later work supports 0.00025 h·ft²·°F/Btu (0.000044 m²·K/W) for closed-loop liquid chillers [3]; TEMA-derived tables list treated cooling water at 0.001 (0.000176 m²·K/W) [4]. Divide each allowance by the thermal conductivity of the mineral that will actually grow — about 2.2–2.9 W/m·K for calcium carbonate and its cousins, but only 0.5–0.6 W/m·K for biofilm [5][6] — and the allowance converts into a film thickness:
| Deposit | k, W/m·K | AHRI 0.000044 | ASHRAE 0.00009 | TEMA 0.000176 |
|---|---|---|---|---|
| CaCO₃ scale | 2.2 | 20 µm | 41 µm | 80 µm |
| CaSO₄ scale | 2.3 | 19 µm | 39 µm | 77 µm |
| Ca₃(PO₄)₂ | 2.6 | 17 µm | 35 µm | 68 µm |
| Fe₂O₃ / magnetite | 2.9 | 15 µm | 31 µm | 61 µm |
| Biofilm | 0.6 | 73 µm | 150 µm | 293 µm |
Twenty to eighty microns is a season of neglect, not a decade of service. Beyond the allowance, the penalty grows linearly in resistance but visibly in temperature: on the 900 kW CDU, 100 µm of CaCO₃ adds 0.57 K to the approach, 200 µm adds 1.14 K, and 400 µm adds 2.28 K — meaning the exchanger would need 57% more plate area to hold its 4 K design approach. At a COP-5 chiller and 3% power per kelvin of lift, those layers cost roughly $2,700, $5,400, and $10,800 a year respectively at full load and $0.10/kWh — real money, but small next to what the same film does on the IT side. On a 1,500 W cold plate moving 150 kW/m² through an effective 10,000 W/m²·K, 100 µm adds 6.8 K to the wall-to-fluid temperature rise, from 15.0 K to 21.8 K — a 45% thermal degradation from a film you cannot see.

Diagnose with three signals before you dose
A treatment plan starts with a measurement, not a chemical. Three independent signals separate scale from its two impostors, particulate clogging and biofilm:
1. Approach temperature at matched load. Trend the CDU approach (TCS supply minus FWS supply, corrected to the same load point) weekly. Scale grows the thermal resistance and raises the approach slowly and monotonically. Use the fouling factor as the controlled variable:
example: 71.8 m2 x 0.57 K / 900 kW = 4.5e-5 m2K/W per 100 um of CaCO3
A rise of 0.3 K at matched load is a watch item; 0.5 K, or 15% of the design approach, is a work order.
2. Pressure drop at design flow. Hard, adherent scale roughens but rarely blocks a DN100 pipe — its first symptom is thermal, not hydraulic. A rising ΔP at constant flow with a stable approach points instead at particulate loading, fouled strainers, or biofilm sloughing. Both signals rising together, plus a falling biocide residual, is the biofilm signature.
3. Water analysis trend. Monthly hardness, chloride, conductivity, and copper/iron. In the technology loop, absolute limits matter less than the direction of travel: the OCP cold-plate fluid guideline sets treated-fluid total hardness below 30 ppm as CaCO₃ with a fresh-fill target under 2 ppm, conductivity below 1,500 µS/cm after treatment, and asks operators to monitor the rate of rise of both [2]. A conductivity that is flat but high is a condition; a conductivity rising 50 µS/cm a month is an event — something is dissolving or leaking in, and the scale that follows is already scheduled.
Run the saturation arithmetic on the facility water, not the technology loop. At 0.2–20 µS/cm, TCS water is too pure for the Langelier index to mean anything; scale inside the TCS arrives with make-up water events, not from the bulk fluid. On the facility side the index is decisive. The same water — pH 8.2, TDS 350 mg/L, calcium hardness 120 mg/L as CaCO₃, alkalinity 80 mg/L — sits at LSI +0.24 at 25 °C and +0.61 at 45 °C. Nothing was added to the water; the loop simply got hotter, and the water crossed from "slightly scaling" into "scale-forming" [7]. This is why the CDU hot side scales first and why a summer water temperature reset can start a fouling season on its own.
Identify the deposit — the solvent follows the mineral

Ordering a cleaning before identifying the deposit is the most expensive mistake in this whole plan, because the solvent is mineral-specific. Scrape or filter a sample during the next maintenance window — a 50 ml bottle from the CDU drain is enough — and run the five-minute field test: does it effervesce in dilute acid (carbonate), is it magnetic (iron oxide), does it dissolve in alkali (silica), is it slimy and organic (biofilm)?
| Deposit | Where it sits | Field signature | Solvent and conditions |
|---|---|---|---|
| CaCO₃ (calcium carbonate) | Hottest surfaces: cold plates, CDU hot side [8] | White/cream, hard, fizzes in acid | Citric or sulfamic acid 3–5%, 40–60 °C, 1–2 h circulation [9][10] |
| CaSO₄ (gypsum) | Hot surfaces where alkalinity is high | White, hard, no fizz in acid | EDTA 5–10% at pH 9–11, 4–6 h; acid barely touches it [11] |
| Silica (amorphous) | Where water cools: tower fill, dry-cooler tubes [12][13] | Glassy, white-blue, acid-insoluble | Caustic 2–3% NaOH at 60–80 °C; never on aluminum [11] |
| Magnetite / Fe₂O₃ | Low points, low-velocity runs | Black/brown, magnetic | EDTA 5–10% pH 9–11, or citric + reducing agent [11] |
| Copper corrosion products | Downstream of brass valves, aged loops | Green/blue staining | Citric or EDTA with azole added to protect yellow metals [2] |
| Biofilm + slime | Everywhere, worst at low velocity | Slimy, organic odor; 0.6 W/m·K — 4× more insulating than scale [5] | Alkaline cleaning + surfactant, then non-oxidizing biocide per OCP [2][11] |
| Ca₃(PO₄)₂ (inhibitor residue) | Hot surfaces after phosphate overdosing | Grey-white, fizzes weakly | Sulfamic 3–5%; then re-balance the inhibitor program [9] |
Three solvents that end careers: hydrochloric acid on any stainless loop — chloride pitting and stress-corrosion cracking, which is why the OCP chloride limit is 50 ppm for 304 and 500 ppm for 316 [2] and why every plate-HX cleaning guide bans HCl outright [9][10]. Hydrofluoric acid anywhere near titanium plates. Strong caustic in a loop with aluminum cold plates — aluminum is amphoteric and dissolves happily at pH 10+. If the loop mixes copper, stainless, and aluminum, the cleaning chemistry must be compatible with all three, and the vendor should prove it on coupons before it touches the loop.
Pick the treatment level with a gate, not a hunch
Escalate through levels, and let two measured quantities open each gate: the approach rise and the ΔP ratio against commissioning.
| Level | Trigger | Action | IT hardware |
|---|---|---|---|
| L0 — chemistry reset | R_f trending up, approach +0.1–0.3 K | Fix make-up water, re-dose inhibitor and dispersant, verify side-stream filters; no acid | Online, zero impact |
| L1 — online CIP | Approach +0.3–0.8 K, ΔP < 120% of baseline | Dose chelant through the chemical injection port at operating conditions, side-stream filter catching the stripped solids | Online; watch cold-plate ΔP hourly |
| L2 — offline CIP | Approach +0.8–1.5 K, or ΔP 120–180% | Isolate CDU HX or a loop section, circulate heated solvent from a temporary skid at 0.8–1.2 m/s [9] | Racks bypassed or hall drained; plan a window |
| L3 — open and mechanical | ΔP > 180%, or two failed CIP rounds; CaSO₄ or silica confirmed | Dismantle, soft-brush and flush plates, replace gaskets (full set every 2–3 openings) [10] | Offline by definition |
| L4 — replace | Under-deposit corrosion found, or post-clean approach still +0.5 K | New plate pack or cold plates; root-cause the chemistry before restart | Offline |
One structural rule for liquid-cooled halls: at L2 and above, clean the CDU heat exchanger and the piping — but do not circulate strong acid through live server cold plates without the OEM's written approval. Cold-plate microchannels are the most corrosion-sensitive and hardest-to-inspect surfaces in the loop, and a failed microchannel leaks onto a GPU. Mild chelant cleaning with the racks in the loop is routine; hot acid is not.
Run the cleaning like a batch process
A chemical cleaning is a small batch reaction with a batch record. The steps below assume an L2 offline clean of the CDU plate pack and associated piping in the worked example:
- Isolate and drain. Close and lock the isolation valves, drain to the low points, record the volume (4,000 L here) and confirm it against the fill record — a 20% discrepancy means an undiscovered dead leg.
- Rig the skid. Temporary pump sized for 0.8–1.2 m/s in the cleaned sections, 5 µm filter with inlet/outlet gauges, solution heater to 50–60 °C, and vents at every high point — CaCO₃ + citric makes CO₂, and an unvented pocket will air-bind half the exchanger [9].
- Fill with RO/DI water, not tap water: you are not trying to clean with 120 mg/L of fresh hardness.
- Charge the acid in two steps — 3%, circulate, verify flow and temperature, then top to 5%. The arithmetic in Fig. 2 says why: 250 m² of wetted surface under a 150 µm film holds about 102 kg of CaCO₃, and 1 kg of citric dissolves only 0.51–0.77 kg of it depending on endpoint pH. A single 3% charge (120 kg) is at or below stoichiometry; 5% (200 kg) carries a working margin.
- Sample every 30 minutes: pH, titratable acidity, calcium, iron, copper. Rising calcium with falling acidity is the reaction working; flat lines for two consecutive samples are the endpoint — typically 2–4 h. Do not run acid overnight unattended.
- Drain and rinse to pH 6.5–7.5 and conductivity within 10% of the fill water; two rinse volumes minimum.
- Neutralize the waste with soda ash to pH 6–9 before it leaves site, and keep the manifest — dissolved calcium and copper make this a regulated discharge in most jurisdictions.
- Passivate. Freshly de-scaled stainless is an iron-rich surface begging to rust. Citric passivation per ASTM A967 practice (4–10%, warm) restores the chromium-oxide film [14]; follow with the loop's normal inhibitor — azole for the yellow metals, and per OCP no nitrite-based inhibitors, which are a microbial nutrient [2].
- Re-dose and verify inhibitor and biocide reserves against the treatment plan, then hold the fluid 24 h and re-test before the valves open.
- Pressure-test the cleaned section at normal operating pressure before reconnecting. A gasket that was sealing on a scale bed may not seal on clean metal.
- Record everything — the batch sheet, before/after samples, and the stripped-solids mass captured on the filter. That mass, divided by area and density, is your measured deposit thickness, and it calibrates the next intervention interval.
Prove the recovery with four acceptance gates
"It looks better" is not an acceptance criterion. Sign off against the commissioning baseline:
| Gate | Criterion | Evidence |
|---|---|---|
| Thermal | Approach within 0.3 K of baseline at matched load (±5%) | Before/after trend at two load points |
| Hydraulic | ΔP within 110% of commissioning at design flow | Calibrated gauge reading, both loops |
| Chemical | Fluid within the water-quality envelope within 48 h | Lab panel vs. OCP/ASHRAE limits: TCS hardness < 20 ppm [1] or OCP < 30 ppm treated [2], chloride < 5 ppm TCS / < 50 ppm FWS [1], bacteria < 100 CFU/mL [1][2] |
| Integrity | No new leak paths; wall thickness unchanged at three low points | UT spot readings, torque record on reopened joints |
The thermal gate deserves emphasis: measure the approach at the same load, because approach falls at part load and a "successful" cleaning measured at 40% load is a measurement artifact. Two load points, logged, close the argument.
Keep it from coming back: the twelve-month program
Every cleaning removes the symptom. The program below removes the cause, and it costs a fraction of one L2 event per year:
| Cadence | Task | KPI / limit |
|---|---|---|
| Continuous | Make-up water quality — softened or RO fill | OCP fresh-fill hardness < 2 ppm, treated < 30 ppm as CaCO₃ [2] |
| Daily | Side-stream filter ΔP, loop conductivity trend | Change cartridge at 50% ΔP rise; investigate any conductivity rate-of-rise |
| Weekly | Approach at matched load, ΔP at design flow | +0.3 K watch, +0.5 K work order |
| Monthly | Water panel: hardness, chloride, sulfate, pH, Cu/Fe, bacteria | ASHRAE TCS: pH 8.0–9.5, chloride < 5 ppm, sulfate < 10 ppm, hardness < 20 ppm, bacteria < 100 CFU/mL [1] |
| Quarterly | Corrosion coupons, filter media inspection, biocide residual | < 1 mil/yr on coupons; Cu ion < 0.2 ppm [2] |
| Annually | Fouling-factor re-baseline, strainer and low-point inspection | R_f trend vs. allowance; LSI on FWS at summer water temperature [7] |
Two pieces of hardware make the program self-sustaining. First, the filtration ladder: a 500 µm (35 mesh) strainer on the facility water is the ASHRAE baseline for protecting a CDU plate exchanger [1]; the CDU's own 50 µm inline filters protect exchangers and quick connectors [2]; and side-stream filtration below 5 µm, sized at 10% of loop flow, is what keeps particles out of cold-plate microchannels [2]. Size it honestly: at 10% of the worked loop's 73.1 m³/h, a perfect 5 µm filter turns over a 4,000 L loop every 33 minutes and has removed 99% of suspended solids within five hours of a cleaning — which is why the filter runs during the rinse, not just in normal service. Second, chemical injection ports that work while the loop is live: OCP requires the ability to inject chemicals without draining [2], and a loop you must shut down to treat is a loop nobody treats.
Velocity is the free half of prevention. Hardness scale and sediment fouling both accelerate below roughly 0.6–0.9 m/s, and our pipe-sizing guide keeps the worked loop at 2–4 m/s for exactly this reason — a diameter chosen for fouling resistance, not just pressure drop. Every dead leg and unused stub you remove at commissioning is one fewer place the program has to police.
Eight mistakes that turn a cleaning into an outage
| Mistake | What it costs |
|---|---|
| Cleaning before identifying the deposit | Wrong solvent; EDTA charge wasted on carbonate that citric would have taken in an hour |
| HCl in a stainless loop | Chloride pitting and SCC; plate pack replacement |
| No high-point vents during acid circulation | CO₂ air-binding; half the exchanger never sees acid |
| Acid without passivation after | Flash rust within days; under-deposit corrosion for years |
| Nitrite inhibitor in a TCS loop | Microbial nutrient; biofilm follows within a season [2] |
| Tap water for mixing and rinsing | Re-seeding the loop with the hardness you just removed |
| Accepting at part load | Fake success; the next complaint arrives with summer |
| No batch record | No deposit mass, no interval calibration, no root cause |
What to ask a cleaning contractor
- Which mineral is your solvent formulated for, and what field test confirms it before you mobilize?
- What is the coupon compatibility proof for every metallurgy in my loop — copper, 304/316, aluminum if present, EPDM gaskets?
- What concentration, temperature, velocity, and maximum duration will you run, and what is the endpoint criterion in writing?
- How do you passivate after the acid, and which inhibitor will you re-dose — confirm no nitrites in the TCS [2]?
- How do you capture and weigh stripped solids, and how do you neutralize and manifest the waste?
- What acceptance numbers will you sign — approach recovery at matched load, ΔP ratio, 48 h water panel?
- What is your containment plan for a leak discovered mid-clean — valves, spares, and who is on site?
- What interval do you recommend for the next clean, derived from the deposit mass you actually removed?
A compute center never buys "descaling." It buys restored approach temperature, restored flow area, and a documented reason the next event will be later than this one. If you are planning a liquid-cooled hall and want the water treatment, filtration, and CDU package quoted against a fouling budget instead of a brochure, send us the load profile — and if the loop you inherited is already fouled, start with the deposit sample, not the acid drum.
References
- Water-Cooled Servers: Common Designs, Components, and Processes. ASHRAE TC 9.9 white paper — FWS/TCS water-quality guidelines and 35–40 mesh strainer guidance. ashrae.org (PDF)
- Guidelines for Using Water-Based Transfer Fluids in Single-Phase Cold Plate-Based Liquid-Cooled Racks. Open Compute Project — fluid property limits, nitrite prohibition, side-stream filtration at 10% of flow below 5 µm. opencompute.org (PDF)
- Heat Exchange Equipment. ASHRAE Handbook chapter excerpt — the 0.0005 h·ft²·°F/Btu convention and AHRI's 0.00025 closed-loop recommendation. xp20.ashrae.org (PDF)
- Shell and Tube Fouling Factor Reference — TEMA-derived fouling resistances, 1 h·ft²·°F/Btu = 0.1761 m²·K/W. mechcodex.com
- Calcium Carbonate Balance in Water — deposit thermal conductivity table: biofilm ≈ 0.6 W/m·K vs. scale 2.3–2.9 W/m·K; 1 mm scale ≈ 10–15% more energy. maritech.org
- Biofilms. Buckman technical bulletin E297W — deposit thermal conductivity table (CaCO₃ 2.6, CaSO₄ 2.3, Ca₃(PO₄)₂ 2.6, Fe₂O₃ 2.9, biofilm 0.6 W/m·K). buckman.com (PDF)
- Langelier Saturation Index — pHs = (9.3 + A + B) − (C + D), worked temperature sensitivity. stark-water.com
- Biofilm's Impact on Cooling — 0.4 mm CaCO₃ and 0.1 mm biofilm both cut conductive heat transfer ~50% on a 316L tube wall. amsainc.com (PDF)
- Plate Heat Exchanger Cleaning Methods — citric/sulfamic 3–8%, ≤60 °C, no HCl on stainless plates, circulation 0.8–1.2 m/s, rinse to neutral. accessen.cn
- Plate Heat Exchanger Disassembly and Chemical Cleaning — sulfamic + citric system, 3–6%, EPDM gasket temperature limits, gasket replacement cadence. lanxingqingxi.com
- Cleaning Methods for Plate Heat Exchangers — EDTA 5–10% at pH 9–11 for sulfate/oxide scales, NaOH 2–3% for organics and silica, nitrite passivation practice. bangxinqingxi.com
- Solubility of amorphous silica in water as a function of temperature. U.S. Geological Survey. usgs.gov
- Silica scale in cooling water — amorphous silica solubility 150–180 ppm, silica vs. magnesium-silicate pH regimes. Demadis, chemistry.uoc.gr (PDF)
- Chemical passivation of stainless steel — citric acid methods, ASTM A967 practice summary. accuratemetalfl.com