SystemWater Operations

Water Quality Compliance Monitoring

Water quality compliance monitoring that catches an exceedance the hour it happens and sees low chlorine two days ahead

Exceedances caught the hour they happen, and low chlorine seen two days ahead.

See one case, screen by screen ↓
target48hwarning before free chlorine falls below 0.2 mg/L at the far end of the network
target0breachesfrom low residual or a missed 24-hour repeat-sample clock
demo0.39mg/Llowest forecast at Saltmarsh Lane once the Gannet Hill booster dose was approved, up from 0.18 — with TTHM 55 µg/L against a limit of 80
demo1minutefrom the laboratory releasing a coliform result to the exceedance opened with its 24-hour clock; three repeat samples were on a route a minute later
The problem

Why low chlorine is found when the sample fails

A drinking water network's results live in three places on three clocks: the online analysers report to the control room every 5 minutes, the samplers' field kits sync on the day, and the laboratory releases certificates a day or more after the sample was taken. Nobody sees one picture of a sampling point against its licence limits. An exceedance is noticed when someone reads the lab report — often the next working morning — while the 24-hour repeat-sample and notification clocks have been running since the result was released.

Low residual at the far end of the network is the hardest to see coming. When a reservoir is held high for maintenance or demand drops, water age climbs at a dead-end spur and the chlorine decays with it, and the first anyone knows is a routine sample that fails: a licence breach, a notification, repeat sampling and sometimes advice to customers. Raising the dose everywhere is not the answer either, because it pushes up disinfection by-products such as TTHM nearer the works. The decision needs the residual, the by-products and the cost on one screen.

typical43.2%of US community water systems violated at least one drinking water standard in FY2022
typical29.6%had a monitoring or reporting violation — a missed or late sample counts on its own
Where an exceedance's first hours goestimated
By hand22 days
With the solution2.1 days
  • Noticing the result in the laboratory report12 → 0.1 d
  • Checking it against the licence limit and the repeat-sample rule1 → 0.1 d
  • Pulling the analyser trend, field record and nearby results2 → 0.2 d
  • Planning repeats at the site, upstream and downstream onto a route2 → 0.2 d
  • Drafting the regulator notification3 → 0.5 d
  • Compliance officer review and signature2 → 1 d

Estimated split for one bacteria detection at a routine sampling point, in hours from the laboratory releasing the result, by hand and with the solution.

How it works

How a result moves

Six agents collect, check, forecast and draft; the water quality manager approves every action.

What comes in
Results in4 sources · analysers, laboratory, field kits, hydraulic model
Agents at work
Results collectormatch · drift
Then
Limit checkerlimits · clocks
Residual forecaster48 h ahead
Then
Action plannerbooster · flush
Sampling scheduler
Then
Report writercited returns
A person decides
Water quality managerapproves the action
What comes out
Status by point
Alert with action
Return to the regulator
One case, step by step

One Tuesday morning, from a forecast to a booster dose and a signed notification

Lumina Utilities supplies its network from the Coralstone Desalination Plant (seawater reverse osmosis, 260 ML/d) and the Ashvale Water Treatment Works (groundwater, 85 ML/d) through four supply zones — Harbour, Central, Tern Point and Kestrel Bay. It is Tuesday 13 October 2026, 07:10. Here is what happens next, screen by screen, in the working solution.

  1. 0107:10

    The day opens on the network, every point against its limits

    Hana Rahimi · Water quality manager

    Hana owns every exceedance on the network. Her first screen is the map: 26 sampling points with results in the last 24 hours and 38 analysers reporting every 5 minutes, each point's latest results drawn as bars against its limits. Points near a limit pulse, and pipes are shaded by water age from 0 to 7 days. The watch list on the right already holds a low chlorine forecast at Saltmarsh Lane and a coliform result at Harbour Quay.

    “October so far: 642 of 642 samples taken on time · 617 of 618 results inside every limit”

  2. 02+36 h

    She slides the forecast to tomorrow evening

    Hana Rahimi · Water quality manager

    The time scrubber runs Now, +12 h, +24 h, +36 h and +48 h, and redraws the chlorine bars from the forecast. At Wednesday 19:10 the bar at SP-388 Saltmarsh Lane — the dead end of the Gannet Hill spur in Kestrel Bay — drops under its line. The analyser there reads 0.24 mg/L now; the forecast is below the limit from Wednesday 07:00, lowest 0.18 mg/L at 19:00.

    On the map: “Forecast 0.18 mg/L · below the 0.2 limit” — and the next routine sample is Thu 08:30.

  3. 03Why

    Older water, and the decay rate on that spur

    Residual forecaster

    Ridgeback Reservoir has been held at 92 % since Friday for the Mill Cross pump overhaul (WO-58817), and demand is down 11 % in the cooler weather. Water age at Saltmarsh Lane rises from 6.0 days now to 7.2 days by Wednesday evening, from the 06:00 hydraulic run. On this spur chlorine decays at 0.225 per day, fitted from 41 grab samples and six weeks of analyser KB-CL2 (R² 0.91), and Monday's grab sample already read 0.26 mg/L.

    “The next routine sample here is Thu 08:30: without an action it would be the first anyone knew.”

  4. 04Every far end

    Fourteen far-end points, ranked by their lowest forecast

    Residual forecaster

    The forecast covers every far-end point for the next 48 hours, with water age, decay per day and confidence. Saltmarsh Lane is the one below 0.2. Dune End (0.20) and the Gannet Hill booster outlet (0.21) sit on the same spur; Marina Gate, Bayview Terrace and the rest need nothing. Harbour Quay's chlorine is normal at 0.46 — its problem is bacteria, EX-1041.

    “Alerts need a confidence of R² 0.80 or more” — below it, the forecaster asks for a sample instead.

  5. 055 steps · 6.6 s

    A booster dose, a flush or doing nothing, side by side

    Action planner

    The planner finds what can act on the spur — the Gannet Hill booster on standby, hydrant H-2291, the routine sample — and models each option. Booster dose: +0.25 mg/L from 08:00, reaching the end at about 01:00 Wednesday, low 0.39 mg/L, TTHM 55 µg/L (+3, limit 80), no water to waste, about 9 kg of hypochlorite a day. Flushing H-2291: 140 m³ to waste and a crew for 3 hours, and the residual is still below 0.2 from 07:00 to about 09:00 on Wednesday, before the crew's fresh water reaches the end. Doing nothing: below 0.2 for about two days.

    Do nothing: “The Thursday sample would likely read below 0.2 mg/L: a licence breach, a notification to the regulator within 24 hours, repeat sampling and, if it persisted, advice to customers on the spur.”

  6. 06Approve

    Hana approves the booster dose, with a note to the control room

    Hana Rahimi · Water quality manager

    She approves +0.25 mg/L at the Gannet Hill booster from 08:00 today, until Ridgeback Reservoir is back to its normal level. The setpoint request goes to Tomasz Wren in the control room, who applies it. Her note travels with it, and the approval is recorded on the audit trail with the forecast it answers.

    “Gannet Hill to +0.25 mg/L from 08:00. Hold until WO-58817 is closed and Ridgeback is back below 80%. Call me if the outlet reads above 0.6.”

  7. 0707:31

    The control room confirms, and the forecast re-runs

    Tomasz Wren · Network control room operator

    Tomasz confirms the setpoint. The residual forecaster re-runs the forecast with the booster dose in it: the lowest residual at Saltmarsh Lane is now 0.39 mg/L on Wednesday at 19:00, Dune End 0.44 and the Gannet Hill outlet 0.45. The sampling scheduler puts an extra grab sample on Sam Ofori's Route 4 for Wednesday 10:00 to prove it.

    Approvals: Hana Rahimi “Approved 07:21” · Tomasz Wren “Confirmed 07:31” · Sam Ofori “On the route”

  8. 08Tomorrow, redrawn

    Saltmarsh Lane is back above its line

    Hana Rahimi · Water quality manager

    Back on the map at +36 h, the Saltmarsh Lane bar reads 0.39 mg/L and the watch list marks the spur as fixed: “booster dose running”. The strip at the bottom now reads “0 breach forecast”. No sample failed, so there is nothing to notify.

    “Booster dose at Gannet Hill running from 08:00. Lowest forecast tomorrow now 0.39 mg/L (was 0.18).”

  9. 0905:52 → 05:55

    A coliform result, caught a minute after the lab released it

    Limit checker and Sampling scheduler

    Earlier that morning, Lumina Central Laboratory released certificate LC-2610-4471 for SP-134 Harbour Quay: 2 coliform bacteria per 100 mL, E. coli not detected, free chlorine 0.46 mg/L. At 05:53 the limit checker opened EX-1041 and started the 24-hour repeat clock. At 05:54 the sampling scheduler put three repeats — the site, SP-130 upstream and SP-136 downstream — first on Owen Marsh's Route 2, leaving 09:30. At 05:55 Hana was texted as on-call manager.

    Suggested cause: the sample tap in the Harbour Quay kiosk was last disinfected on 14 Aug — “disinfect the tap before the repeat”.

  10. 10Signed

    Leila signs the notification with 22 hours to spare

    Leila Haddad · Compliance officer

    The report writer drafted the notification at 06:30 from the exceedance record: what was found, where and when, the certificate, the three repeats and the tap disinfection. Leila reads it beside the minute-by-minute timeline and signs and sends it through the regulator portal, with the receipt saved to the record.

    “You are sending the EX-1041 notification to the regulator as Leila Haddad, compliance officer.”

Who it’s for

Built for everyone who keeps the water inside its limits.

The same Tuesday morning, seen by the five people who own it — what their day looked like, and what it looks like now.

HR
Hana RahimiWater quality manager, Lumina Utilities · approves network actions
Water quality manager
Before
Starts at 07:00 with yesterday's lab results and the analyser trends. “I find out the far end was low when the sample fails. By then I'm writing to the regulator.”
Now
Sees Saltmarsh Lane fall below 0.2 a day before it happens, with the reason, three options and their by-product effect — and approves the booster dose before 07:30.
TW
Tomasz WrenNetwork control room operator · applies setpoints
Control room operator
Before
Runs pumps, reservoirs and the three chlorine booster stations. “Tell me which booster, what dose and when — and put it in writing.”
Now
Gets a setpoint request with the booster, the dose, the start time, how long to hold it and the manager's note, and confirms it on the same record.
LH
Leila HaddadCompliance officer · signs returns and notifications
Compliance officer
Before
Builds the monthly and quarterly returns and the regulator notifications by hand. “Every number in the return has to trace to a lab certificate.”
Now
Signs a notification drafted from the exceedance record, and a monthly return drafted as results arrive, every figure linked to its certificate or reading.
OM
Owen MarshWater quality sampler · Route 2, Harbour
Water quality sampler
Before
Takes the routine samples on his route. “If the plan changes, I need it on my route before I leave the depot.”
Now
Finds the three EX-1041 repeats first on Route 2 — 10 routine samples plus 3 repeats, leaving 09:30 — with a note to disinfect the tap first.
PN
Priya NairRegulator liaison · audits and information requests
Regulator liaison
Before
Answers the regulator's notifications, audits and information requests. “The regulator asks what we knew and when. I want the timestamp.”
Now
Reads every exceedance minute by minute — result released, exceedance opened, repeats planned, manager texted, notice drafted, signed — with times from the laboratory system and the audit trail.
Built on the engine

6 agents. Each with one job, and hard limits.

Six agents collect, check, forecast and draft; the water quality manager approves every action.

Results collector

Reads the online analysers every 5 minutes, the laboratory certificates on every release and the samplers' field kits on every sync; matches each result to its sampling point, parameter, unit and time, converts units, and flags an analyser drifting more than 0.05 mg/L from the latest grab sample.

  • Never edits or deletes a laboratory result
  • Never fills a gap with an estimate
Limit checker

Compares every new result with its limit and alert level in licence Schedule 2. Outside a limit, it opens an exceedance, starts its repeat-sample and notification clocks and texts the on-call manager; at alert level, it adds the point to the watch list.

  • Never closes an exceedance
  • Limits change only in Settings, with a second person
Residual forecaster

After each hydraulic run and each new chlorine result, fits chlorine decay for each supply path from the last 90 days of grab samples and analysers, takes water age for the next 48 hours from the hydraulic model and forecasts free chlorine at every point with a confidence band — including any approved action.

  • Never changes a dose or a setpoint
  • Low-confidence forecasts ask for a sample, not an action
Action planner

For a forecast or a real breach, finds the boosters, hydrants and routine samples that can act on the path, models each option's effect on residual, TTHM and HAA5 running averages, water to waste, crew time and cost, recommends one with its reasons and drafts the setpoint request.

  • Never sends a setpoint — a person approves every action
  • Every recommendation shows its by-product effect
Sampling scheduler

Keeps the sampling plan — 1,488 samples at 186 points in October — adds repeat and extra samples and puts them on the samplers' routes.

  • Never removes or moves a required sample outside its window
Report writer

Drafts the monthly return as results arrive — samples scheduled and taken, results by parameter, results outside a limit and the actions taken, preventive actions — and a notification for every exceedance from its record.

  • Never submits to the regulator — the compliance officer signs
  • Every figure cites its result
Water quality manager

Approves; compliance officer signs. The agents propose; a named person decides.

Ask in plain words

Ask about any sampling point, result or return, in plain words

Ask about any sampling point, result, forecast or return — or say what to schedule. Every answer points to its certificate, reading or model run.

Why will Saltmarsh Lane fall below 0.2 tomorrow?

Because the water there is getting older. Ridgeback Reservoir is held at 92% for the Mill Cross pump overhaul and demand is down 11%, so water age at Saltmarsh Lane rises from 6.0 to 7.2 days by Wednesday evening. Chlorine decays at 0.225 per day on that spur (R² 0.91), and Monday's sample was already 0.26 mg/L. The forecast is 0.19 mg/L from Wed 07:00 and 0.18 at 19:00, below the 0.2 minimum.

Schedule a booster dose at Gannet Hill

Prepared for you to approve: +0.25 mg/L at Gannet Hill from 08:00. Water reaches Saltmarsh Lane in about 17 hours, so the forecast low becomes 0.39 mg/L instead of 0.18. TTHM there rises about 3 µg/L to 55, well inside the 80 limit. I cannot change a setpoint: you approve, and Tomasz Wren applies it.

What do we owe the regulator for the Harbour Quay coliform?

Two things, both inside 24 hours of the lab result at 05:52: three repeat samples — at the site, upstream at Old Dock Street and downstream at Pier Row — and a notification. The repeats are on Owen Marsh's Route 2, leaving at 09:30. The notification is drafted for Leila Haddad to sign. E. coli was not detected and chlorine was normal, so the sample tap is the likely cause.

How are we doing against the limits this month?

October to 12 Oct: 642 of 642 samples taken on time; 617 of 618 results inside every limit. The one outside is the coliform detection at Harbour Quay (EX-1041). Lowest chlorine so far: 0.26 mg/L at Saltmarsh Lane. One breach is forecast for tomorrow, at Saltmarsh Lane.

Every screen

The working solution, as it ships.

13 screens from the working solution, on its sample data. Pick one to see it large.

The network mapEvery sampling point with its latest results drawn as bars against its limits, water age on the pipes, the watch list and what the agents did since 05:00.
The forecast on the mapSlid to Wednesday 19:10: Saltmarsh Lane's chlorine bar drops below the 0.2 mg/L line before any sample has failed.
A sampling pointThirty days of grab samples and analyser readings, the forecast with its band, water age, the decay fit and why it will fall below the limit.
The chlorine forecastEvery far-end point ranked by its lowest residual in the next 48 hours, with water age, decay per day, confidence and the action.
Options comparedA booster dose, a flush or doing nothing, with the effect on residual, TTHM, water to waste, crew and cost, and the planner's steps.
Approve the booster doseThe water quality manager approves, with a note to the control room; the approval is recorded with the forecast it answers.
Confirmed and re-forecastApproved, confirmed by the control room, an extra sample on the route — and the forecast re-run with the dose in it.
Tomorrow, redrawnWith the booster dose running, Saltmarsh Lane's forecast for tomorrow evening is 0.39 mg/L and the spur is marked fixed.
An exceedance, minute by minuteA coliform result from release to repeats, the 24-hour clock, the repeat samples and the regulator notification drafted beside it.
Sign and sendThe compliance officer signs and sends the notification through the regulator portal, with the receipt saved to the record.
The sampling planOctober's samples by day and zone, today's four routes and the repeat and extra samples the scheduler added.
Returns and notificationsThe October monthly return drafted as results arrive, by parameter, with each figure linked to its certificate.
Your rulesLimits and alert levels, the forecast, clocks and approvals, the connected sources and the people who decide.
Governance

Built for a drinking water licence: cited, approved, on the record.

Every figure traces to its resultEach number on screen and in a return links to its source — the analyser and its reading time, the laboratory certificate, the field record or the hydraulic model run.
Named people decide and signThe water quality manager approves every booster dose, flush and extra sample; the control room operator applies the setpoint; the compliance officer signs every return and notification sent to the regulator.
Agents never touch a dose or a resultNo agent changes a dose, a setpoint, a limit or a laboratory result, closes an exceedance or submits to the regulator. A gap in the data stays a gap; it is never filled with an estimate.
Limits are versioned, changed by two peopleLimits and alert levels come from licence Schedule 2, now at version 7. Every change in Settings is versioned and needs a second person.
A forecast shows its confidenceEvery forecast carries its confidence. Below R² 0.80 the forecaster asks for a sample instead of proposing an action, and every recommendation shows its effect on disinfection by-products.
What you knew, and whenEvery result released, exceedance opened, repeat planned, approval, setpoint confirmation and submission is on the audit trail with its time — the answer to the regulator's question of what you knew and when.
Configuration

Your licence and your people, not ours

Limits, alert levels, the forecast, the clocks and who approves are settings, versioned and changed by two people.

SettingDefaultChoose from
Free chlorine minimum and alert level0.20 mg/L · alert at 0.30 mg/LAlert level stepped up or down; limits for every parameter from licence Schedule 2, version 7
Forecast horizon48 hours24 hours · 48 hours · 72 hours
Forecast runsHourlyEvery 30 minutes · Hourly · Every 6 hours — and after every hydraulic run and new result
Minimum confidence to alertR² 0.80Stepped up or down — below it, the forecaster asks for a sample instead
Repeat samples after a coliform detection3 within 24 hoursLicence rule — at the site, upstream and downstream
Regulator notificationLeila HaddadLeila Haddad · Priya Nair — within 24 hours of the laboratory result, signed by the compliance officer
Approves network actionsHana RahimiHana Rahimi · Duty water quality scientist — booster doses, flushing, extra sampling
Text the on-call managerOnOn · Off — for any bacteria detection or a breach forecast within 24 hours
Connections

Works with the data a water quality team already has

Online analyserschlorine, turbidity, pH and conductivity, every 5 minutes
Laboratory systemresults and certificates as the laboratory releases them
Field kitsreadings from the samplers' tablets on every sync
Hydraulic modelwater age at every point, from the daily 06:00 run and on demand
Work ordersopen network work, such as a pump overhaul or a mains repair
Licence limits and sampling planlimits and alert levels by parameter, sampling points and routes
What it changes

The difference, in numbers.

Every figure is labelled: a target the solution is built to, an estimate, a typical published result, or a proven one.

target
48h
warning before chlorine falls below 0.2 mg/L at the far end of the network
forecast 48 h ahead
decay rates + water age
target
0
breaches from low residual or a missed 24-hour repeat-sample clock
target
< 1hour
from a lab or analyser result to a person deciding, not the next working day
Todaynext day
With agents1 minute to alert

“demo” = seen in the working solution, on its sample network data · “target” = the design goal, measured in the live solution · “estimated” = our estimate · “typical” = published figures (EPA, National Enforcement and Compliance Initiative, drinking water: in FY2022 43.2 % of US community water systems violated at least one standard and 29.6 % had a monitoring or reporting violation). Regulatory context: WHO Guidelines for Drinking-water Quality (at least 0.2 mg/L free chlorine at the point of delivery); 40 CFR 141.72; 40 CFR 141 Subpart Y (repeat samples within 24 hours); Stage 2 Disinfectants and Disinfection Byproducts Rule (TTHM 80 µg/L). Lumina Utilities, its plants, places and records, and the people named on this page are fictional — characters and sample data in the working solution.

Questions

What water quality teams ask us.

What is water quality compliance monitoring software?

Software that brings a drinking water utility's analyser, laboratory and field results together and checks every one against its licence limits as it arrives. Water Quality Compliance Monitoring puts every sampling point on one map, opens an exceedance with its clock the minute a result is outside a limit, forecasts residual chlorine 48 hours ahead and drafts the returns. The water quality manager approves every action; the compliance officer signs what goes to the regulator.

How does chlorine residual forecasting work?

The residual forecaster fits how fast chlorine decays on each supply path from the last 90 days of grab samples and analysers, and takes water age at every point for the next 48 hours from the hydraulic model. In the sample network it forecast 0.18 mg/L at Saltmarsh Lane for Wednesday evening, below the 0.2 limit, because a reservoir held high for pump work pushed water age to 7.2 days. Each forecast shows its confidence, and approved actions are fed back into it.

How does it catch a water quality exceedance the hour it happens?

The results collector reads the laboratory certificates on every release and the analysers every 5 minutes, and the limit checker compares each result with its limit straight away. In the sample case the lab released a coliform result at 05:52; EX-1041 was opened at 05:53 with its 24-hour clock, three repeats were on a route at 05:54 and the on-call manager was texted at 05:55.

Does it handle repeat sampling after a coliform detection?

Yes. The sampling scheduler adds three repeat samples within 24 hours — at the site, upstream and downstream — and puts them first on that day's route. It never removes or moves a required sample outside its window.

Can it prepare regulatory water quality reports and notifications?

The report writer drafts the monthly return as results arrive and a notification for every exceedance from its record, with every figure linked to its laboratory certificate or analyser reading. It never submits: the compliance officer signs and sends.

Do people stay in control of booster doses and setpoints?

Yes. The action planner compares a booster dose, flushing and an extra sample and recommends one, but it never sends a setpoint. The water quality manager approves every action, the control room operator applies it, and agents never change a dose, a limit or a laboratory result.

Can we set our own limits, alert levels and approvers?

Yes. Limits and alert levels per parameter, the forecast horizon, how often it runs, the minimum confidence to alert, who approves network actions, who signs notifications and when the on-call manager is texted are all settings. Every change is versioned and needs a second person.

How long does it take to go live?

The Agentic Solution Engine builds and deploys it from your requirements and documents — your licence limits, sampling plan, analyser and laboratory feeds and hydraulic model — and it goes live once every quality gate has passed. We will walk you through it on a sample of your own results first.

See it on
your network.

We'll run Water Quality Compliance Monitoring on a sample of your own results, limits and sampling plan.