Ingestion
How it works
From a scanned 1976 driller’s log to a verified record, step by step.
Getting the paper in
Sixty years of records. Nobody has had time since 1994.
Nobody buys asset software because of the dashboard. They buy it because somebody finally offered to get the filing cabinet in. So that is what we do first: your first well at no cost, and the whole cabinet as part of onboarding.
Send it any way you like
Drag a folder in, forward an email to your district address, or let your contractor upload straight to the work order. Scanned, photographed or native — it all goes to the same place.
Machine-readable files are simply parsed
LAS geophysical logs, SCADA exports and CMMS feeds are read by code, not by a model. Exact, free, and incapable of inventing anything.
Everything else is read and cited
A 1976 driller’s log typed on a manual typewriter with handwritten margin notes gets read page by page. Every extracted value carries a confidence score and a citation back to the page and the spot on it.
It is checked against physics and against your history
Pumping level below static. Screens inside total depth. Annular seal against your county’s ordinance, not just the state minimum. A water level that jumps forty feet from last year is flagged, never accepted.
An engineer approves before anything is committed
The source page sits beside the field, highlighted. Confident, validated values approve as a batch; anything uncertain is shown one at a time; anything that would overwrite an existing value needs a reason that is written to the audit log.
The score updates itself
The engine recomputes, snapshots the result with its version stamp, and tells you only when a threshold has actually been crossed — in acre-feet and dollars, not in “anomaly detected”.
One rule we will not bend. The system never invents a measurement. If a value is not printed on the page, it stays empty and appears in your gap report. A record you cannot trace back to a document is not a record — it is a guess with a timestamp.
The live ingestion demonstration needs JavaScript. Every extracted value carries the page it came from and the confidence it was read with; anything not printed stays empty.
| Document | Method | What it fills in |
|---|---|---|
| Driller’s log / well completion report | Read | Lithology, casing, screen and seal intervals, license, filing clock |
| E-log / geophysical survey | Parsed | LAS curve data and screen-siting evidence |
| Pump efficiency test | Read | One row per speed, wire-to-water efficiency, kWh per acre-foot, incentive eligibility |
| Step-drawdown / aquifer test | Read | Aquifer and well-loss coefficients, well efficiency, specific capacity |
| Installation / start-up sheet | Read | Pump and motor identity, lateral setting, checklist, signatures |
| Video and caliper survey | Read | Depth-tagged defects, encrustation, casing wall loss by depth |
| Rehabilitation report | Read | Event with pre and post specific capacity, method, cost, contractor |
| SCADA historian export | Parsed | Continuous operating points and run hours |
What happens to a document
Every number keeps its receipt.
Click any figure in the platform and you see the page it was read from, the spot on that page, who approved it and when. A record you cannot trace back to a document is not a record — it is a guess with a timestamp.
Fingerprinted on arrival
Every file is hashed on upload. The same efficiency test emailed twice does not create two records, and it does not silently overwrite the first either.
Checked against physics
Pumping level below static. Screens inside total depth. Annular seal against your county’s ordinance, not just the state minimum.
Checked against your history
A static level that jumps forty feet from last year’s reading is flagged for a human, never accepted quietly.
Confidence, not certainty
Every extracted value carries a confidence score. High-confidence values that pass every check approve as a batch; anything else is shown one at a time.
Nothing invented
If a value is not printed on the page it stays empty and appears in your gap report. The model is never asked to estimate.
Written to an audit log
Who changed what, when, and from which document. Append-only, and not editable by anyone — including us.
SCADA integration
It reads your tags. It never touches your plant.
An annual pump test is one photograph of a moving thing. The tags you already historize — flow, discharge pressure, water level, motor kilowatts, drive speed and vibration — turn that photograph into a film, without adding a single sensor.
One-way, outbound, read-only. No exceptions. A small agent runs inside your perimeter and pushes out. Waterwell IQ never opens a connection into your control network and never writes a value to a tag. Water sector guidance requires operational technology connections to be denied by default, so we designed for that first rather than retrofitting it after your risk and resilience assessment asks.
Ignition today. The rest as each is proven.
The agent reads the Ignition tag historian through a resource on your gateway, read-only and outbound only. Adapters for AVEVA (Wonderware and PI), Rockwell FactoryTalk, VTScada and GE iFIX are in testing; each is listed as available only after a verified read of a real district system. Map tags to roles once.
One signed contract for every source
Every reading arrives the same way: a signed HTTPS envelope, sent outward, with units and quality on each sample. An integrator can post to it from any system that can make a signed HTTPS request; a packaged OPC UA adapter is in testing, and generic historian-database and scheduled-CSV adapters are planned.
Efficiency weighted by real runtime
With continuous data the platform weights efficiency across the load points your pump actually runs at, instead of the one point a test truck happened to catch. A test truck cannot do that.
Telemetry is outbound-only and read-only: an agent inside the district network posts historian samples out over TLS. There is no inbound path.
| Tag role | Units | Interval | What it unlocks |
|---|---|---|---|
| flow | gpm | 1–15 min | Operating point, production totals, region of operation |
| discharge_pressure | psi | 1–15 min | Total dynamic head with the water level |
| water_level | ft bgs | 15–60 min | Drawdown, specific capacity, the static-lift correction |
| motor_kw | kW | 1–15 min | Wire-to-water efficiency and energy intensity |
| run_state | bool | on change | Stored today; run hours and start counts for the life model are on the roadmap |
| vfd_hz | Hz | 1–15 min | Speed normalization so trends compare like with like |
| vibration | in/s rms | 1–60 min | Condition against the limit for the current operating region |
What it costs to get your archive in
Less than you would guess. A full historical backfill for a two-hundred-well district — around sixteen hundred documents — costs under a hundred dollars in compute. That is why it sits inside onboarding rather than being quoted as a separate project.
We never meter documents. The moment a district hesitates to scan something because it costs them, the historian stops being complete — and completeness is the entire product.