Published methodology
Every number, and where it comes from.
Competitors say “AI-driven”. We publish the arithmetic. A district engineer has to be able to defend a Waterwell IQ figure in front of a board, and you cannot defend a black box.
The engine is versioned, and so is every result
Scores are computed server-side by a single engine and stored with the version that produced them, the date they were computed as of, and the exact inputs the engine saw. Methodology will improve over time; a score that justified a capital decision in 2026 must still be reproducible in 2031, unchanged, when somebody asks why.
Water horsepower
The useful work done on the water.
WHP = Q × TDH × SG ÷ 3960
The divisor is 33,000 foot-pounds per minute per horsepower divided by 8.3333 pounds per gallon for water at 60°F. Flow in gallons per minute, head in feet.
Overall pumping plant efficiency — wire to water
OPE = WHP ÷ (kW × 1.341)
The fraction of the electricity entering the motor that ends up as water lifted. This single number captures motor, lineshaft, bowl, column and discharge head losses together, which is exactly why it is the right headline metric for a municipal well: it is what the electricity bill responds to.
The engine refuses to return an efficiency above 100% rather than displaying one. An impossible result means the inputs disagree — usually a flow meter reading in the wrong units — and showing a confident wrong number is worse than showing nothing.
Energy intensity
kWh per acre-foot = 1.023 × TDH ÷ OPE
The constant is derived, not looked up: 325,851 gallons per acre-foot, divided by 3960, divided by 60 minutes, times 0.7457 kilowatts per horsepower, gives 1.02309. There is a unit test asserting it lands on that figure, and a second test cross-checking the result against kilowatts multiplied by the hours needed to move one acre-foot.
Specific capacity, and why the baseline matters
SC = Q ÷ (pumping level − static level)
The best indicator of the condition of the hole in the ground, as distinct from the machine hanging in it. Long-established field practice is to schedule rehabilitation when specific capacity has fallen 15% from the post-development baseline, and to expect a more aggressive and less successful job past roughly 40%.
The subtlety most implementations miss: a rehabilitation resets the baseline. Comparing a 2026 reading against a 1998 baseline across two rehabilitations understates how the well is doing now and triggers work nobody needs. Readings taken below design speed are also excluded, because a step at 55 Hz is not comparable to an annual test at 60 Hz and mixing them manufactures a decline that is not there.
Separating aquifer loss from well loss
s = BQ + CQ² — Jacob’s step-drawdown equation.
B is loss in the aquifer; C is loss through the screen and gravel pack. Well efficiency at a given rate is BQ ÷ (BQ + CQ²). A rising C across successive tests is the cleanest quantitative evidence of screen fouling that exists — it is the measurement that separates “the well is plugging” from “the aquifer is dropping”, and it is the reason a step test is worth running.
Transmissivity, measured and tracked
Each well carries a transmissivity from the strongest test on file — a constant-rate test (Cooper–Jacob), a recovery test (Theis recovery) or the aquifer loss of a step test — with the method and the range it is sure within. Specific capacity alone gives only a lower bound. Inside the screen, the measured value is shared across the layers the well faces by their soil class and open feet; the shares are an indication, and a spinner log measures them. Tracked over time, transmissivity belongs to the aquifer and well loss to the well, which is what tells a district whether a rehabilitation will help.
Operating region, and the vibration limit that follows from it
Per ANSI/HI 9.6.3, a general-purpose pump has a preferred operating region of 70–120% of best efficiency point flow. A municipal vertical turbine is a mixed-flow, high specific speed machine, and its preferred region narrows to 80–110%. Applying the wrong band is the most common error in generic pump software.
Per ANSI/HI 9.6.4, the allowable vibration for a vertically suspended pump measured at the discharge head depends on which region it is operating in — 0.13 in/s RMS inside the preferred region below 268 hp, 0.22 in/s in the allowable region above it. So the engine establishes the region first and then applies the correct limit, rather than one blanket threshold for every asset.
Why running off best efficiency point costs you
Radial thrust is minimized at best efficiency point and rises steeply either side of it, and antifriction bearing life falls with the cube of radial load. A modest flow excursion is therefore a cubic penalty on life. The engine reports this as a life multiple relative to life at BEP — an indication drawn from a transparent load curve, never a warranty.
Honest VFD savings
The affinity laws say power falls with the cube of speed, and every calculator on the internet quotes it. They describe the pump. A well has large static lift, so the system curve is not a parabola through the origin and the real saving is always less. The engine models the static component explicitly and returns the smaller, true number.
The pump curve stage
The maker’s curve, at the speed you actually run.
Every well carries its pump’s published curve. The stage redraws it at the drive speed on record, places the measured point on it, and marks the four things an engineer looks for first: the best-efficiency point, the shutoff head, where the system curve crosses, and how far the measured point sits from the curve.
The curve
Head, efficiency and power from the catalog points, joined by a monotone cubic (Fritsch–Carlson) so the drawn curve never overshoots a published point. With only shutoff, best-efficiency and rated points on file, a head-versus-flow fit of the form H = H₀ − k·Qᵖ is used instead, and the stage says so.
Speed
The published curve is at full speed. The drawn curve is scaled to the drive speed on record by the affinity laws — flow with speed, head with speed squared, power with speed cubed — and the speed is shown three ways: as a percentage, in hertz (60 Hz × speed) and in rpm (rated rpm × speed).
Efficiency and power
Pump efficiency is drawn as a curve through the best-efficiency point; brake horsepower follows from flow, head and efficiency (Q·H ÷ 3960·η) and is plotted beneath the head curve against the motor nameplate, so a pump running into its service factor is visible rather than inferred.
Operating regions
The preferred operating region, 70–120% of best-efficiency flow, and the allowable region, 50–130%, are drawn to ANSI/HI 9.6.3. The stage names the region the measured point is in, because the vibration limit that applies depends on it.
Where the curves meet
An estimated system curve — static lift plus a friction term rising with the square of flow — is fitted through the measured point. Where it crosses the pump curve is the flow and head the plant should be producing; the gap between that and the measured point is the wear signal.
The speed strip
Normal operation is 0–60 Hz from start-up to running; above 60 Hz only with the pump maker’s approval. The strip marks the minimum speed at which the pump can still lift the static head (below it the pump idles at shutoff), the running speed in Hz, percent and rpm, and the critical-speed skip band recorded from the pump maker as a hatched range — with a warning if the usual running speed sits inside it.
Any size of well
The axes fit the pump on record: a 200 gpm well with 50 ft of head and a 10,000 gpm well with 900 ft of head both plot cleanly, with the ticks, the labels and the operating regions laid out so nothing collides. Verified from 25 gpm upward.
The pump curve stage
The stage above draws the maker’s published curve at the drive speed on record, using the affinity laws (Q ∝ N, H ∝ N², P ∝ N³), a monotone cubic through the catalog points, an efficiency curve through the best-efficiency point, brake horsepower Q·H ÷ (3960·η), the ANSI/HI 9.6.3 preferred (70–120% of BEP flow) and allowable (50–130%) regions, and an estimated system curve H = Hstatic + k·Q² through the measured point. The speed strip converts speed to hertz (60 × speed) and rpm (rated × speed), marks the minimum speed that still lifts the static head, √(Hstatic ÷ H0), and the critical-speed skip band recorded from the pump maker.
Lifecycle economics
CRF = i(1+i)ⁿ ÷ ((1+i)ⁿ − 1)
Rehabilitate versus replace is an equivalent uniform annual cost comparison, not a payback calculation. A rehabilitation that buys five years and a replacement well that lasts forty are not comparable until both are annualised. Where the two options land within ten percent of each other the engine says the call is too close to make on cost alone, rather than presenting a decisive-looking winner.
Lifecycle forecasting: when to act, not just whether
The equivalent-annual-cost comparison above answers “rehabilitate or replace, given what we know today.” A capital plan needs three harder answers: how long before this well reaches the state where rehabilitation stops recovering it, and with what probability by year three; whether it is cheaper over twenty years to act now, next year, or not at all; and how many of the fleet will be past the trigger in five years if nothing is done. Those are answered with the method every serious infrastructure asset plan already uses — bridge, pavement and pipe management all run on it — and that nobody has applied to wells: condition-state Markov chains, and a decision process over them.
Two chains, because a well degrades in two ways
A well is placed in one of five capacity bands, on specific capacity as a fraction of its post-rehabilitation baseline, and one of five efficiency bands, on wire-to-water efficiency as a fraction of its baseline. The band boundaries are the published thresholds: the third capacity band begins at the 15% rehabilitation trigger and the fifth at the 40% line past which rehabilitation often fails to recover a well.
The two chains are kept separate, and this is the whole point. A rehabilitation resets the capacity state and leaves the pump alone. A pump replacement resets the efficiency state and leaves the screen alone. A replacement well resets both. A single “condition” chain cannot express any of that, which is why generic asset software gets wells wrong — the same reason the three-cause diagnosis exists.
Where the transition probabilities come from
P[i][j] = (c[i][j] + α·prior[i][j]) ÷ (Σⱼ c[i][j] + α)
Each district’s matrices are estimated from its own history: every pair of annual tests on every well is one observed transition, counted after the baseline segmentation so a pair that straddles a rehabilitation is never mistaken for deterioration. Because a district with eight wells and five years of tests has perhaps thirty transitions across twenty-five cells, a raw frequency estimate would put zeros in most of them and every forecast built on it would be confidently wrong. So each row carries a Dirichlet prior worth five observations — a stated, monotone deterioration assumption that a well never improves without intervention — and every row reports the fraction of it that is the district’s evidence rather than the prior. As tests accumulate the prior washes out on its own. Pairs the estimator refuses are listed with the reason.
Remaining life and the probability of getting there
N = (I − Q)⁻¹ t = N·1
Expected years until either chain reaches its worst band, from the fundamental matrix of the absorbing chain, and the probability of arriving there within one, three, five and ten years. A well already in a failing band reports zero, not a comforting average.
The intervention policy
V(s) = mina [ ca(s) + γ Σs′ Pa(s,s′) V(s′) ]
Five actions — wait, rehabilitate, replace the pump, do both in one mobilization, replace the well — each with a capital cost and a recovery matrix stating how reliably it resets its chain, which for rehabilitation falls the further gone the well is. The cost of a year in each state is the physics: lost efficiency costs kilowatt-hours; lost capacity costs the extra lift needed to draw the same flow against a deeper pumping level, and costs water only once capacity falls below what the duty requires; a failing band carries an expected unplanned-failure cost. Value iteration then yields a policy — a rule for every one of the twenty-five joint states — rather than a one-off comparison that has to be redone whenever the well moves. For each well you see the recommended action, the expected lifetime cost of every alternative, and the cost of waiting one more year.
An error we made and fixed, stated here because it is the kind of thing that matters. The first version priced every lost percent of capacity as lost water at the imported rate. The resulting policy rehabilitated wells at a 5% decline — below the industry’s own 15% trigger — and would have told a district to spend money it did not need to. The physics is that lost capacity costs energy through extra lift, and costs water only past the firm-capacity fraction. That version is what ships, and the regression test that pins the policy to the 15% trigger is in the engine’s test suite.
Try it. The policy grid, the forecast and the cost of waiting below are solved in your browser by the same compiled engine that runs the platform, from the default priors and demonstration costs:
The live lifecycle simulation needs JavaScript. The method is described in full on the Methodology page.
What the fleet view does with it
Every well’s current state is propagated forward under “do nothing” and under its own policy. The board sees the expected number of wells past the trigger by year, the expected annual spend profile under the policy, and the present value of the two paths. Every forecast is stored with the transition model that produced it, so the number a district acted on in 2026 can be shown again in 2031, unchanged.
Assumptions, all overridable and all stated on every forecast: capacity and efficiency deteriorate independently over a one-year step; a well never improves without intervention; band midpoints stand in for the index when costing a state; routine operations and maintenance is equal under every action and omitted; the discount rate, failure hazard by band and firm-capacity fraction are the district’s inputs.
How the composite score is built
Six components, each published with its own sub-score, weight and the raw measurement behind it: well capacity, plant efficiency, operating region, vibration, screen headroom and record completeness. Where a component cannot be computed its weight is redistributed and the confidence figure falls — so a well with two readings never looks as certain as a well with twenty.
The 15% specific-capacity rehabilitation trigger deliberately lands at 70 on the capacity sub-score, which is the C/D boundary.
Conformance
- ANSI/AWWA A100 — Water Wells
- ANSI/AWWA C654 — Disinfection of Wells
- ANSI/HI 9.6.3 — Rotodynamic pumps, operating regions
- ANSI/HI 9.6.4 — Rotodynamic pumps, vibration measurement
- ISO 55001 — Asset management, clause 7.5 information requirements
- ISO 14224 — Reliability and maintenance data
Engineering literature: Roscoe Moss, Handbook of Ground Water Development; Driscoll, Groundwater and Wells.
The calculator on this site runs this engine. Not a re-implementation of it — the same compiled code, so the number a prospect sees is the number the product gives.
The document it all ends in
Every well produces a five-page condition report: the recommendation and its budget on page one, the score with every component and its weight, the diagnosis with its evidence, the pump against its own curve, and the complete record it was computed from. See the report, page by page — or download a real one.