// Environmental testing labs · Discharge monitoring reports
Discharge monitoring report data, worked up from your results for the permittee's signatory.
A permit client sends its flows and a parameter list, and someone at your lab turns a month of results into the values that go on the DMR: averages, maximums, loads and the way each non-detect is shown. In a free AI proof of concept, AI drafts those values for 20 to 30 monitoring periods you already worked, with the math shown on every line. Your reviewer, the person on your team who knows your permit clients best, sets each draft beside the worksheet that went to the client. The permittee still signs and submits.
- Periods tested
- 20 to 30, already worked
- DMRs signed or submitted
- None
- Limits judged
- None
// The one job
From a month of results to the values on the DMR
Today a project manager or reporting specialist pulls every result for the outfall and period, adds the client's flows, works out each statistic the permit asks for, applies the state's rule for non-detects, rounds to the permit's decimals and sends the worksheet to the client, who enters it in NetDMR or the state's own system.
In the proof of concept, AI reads copies of the same results, flows and permit pages and drafts the value for every parameter and statistic, with each input result and each step of the calculation beside it. The excursion count and every compliance call are left to people. Nothing is entered, signed or submitted.
for the signatory
// What makes it hard
Where DMR values go wrong between the bench and the form
The permit sets the statistics. Under 40 CFR 122.45, a continuous discharger other than a POTW gets maximum daily and average monthly limits, and a POTW gets average weekly and average monthly. Section 122.41 makes averages arithmetic unless the permit says otherwise, so a geometric mean for bacteria has to be written into the permit, and it puts any extra monitoring done with a Part 136 method into the calculation, so a result from an added sample can't be dropped. Pennsylvania DEP's DMR instructions turn a concentration into a load by multiplying milligrams per liter by flow in million gallons a day and by 8.34, run weekly averages Sunday to Saturday, and round each value to as many decimals as the permit limit carries. Florida DEP counts a partial week at the end of a month with the following month.
Every state treats a non-detect its own way. Connecticut DEEP asks for a zero in the value field with the detection level in the comments, uses zero for averaging, and asks permittees not to use NODI code B. Pennsylvania uses the reporting limit, drops the less-than sign for the arithmetic and puts it back on the answer if any value in the set was a non-detect, so less than 1.0, 2.0, less than 1.0 and 1.0 average to less than 1.3. Florida DEP uses half the method detection limit or half the effluent limit, whichever is lower, and doesn't accept a lab's I qualifier on Part B of its form. The draft applies the rule your reviewer names for each client's state and permit, and says on every line which rule it used.
Bacteria and missing data break the usual math. Pennsylvania's instructions substitute 1 for a zero in a geometric mean, report a too-numerous-to-count plate as a value with a greater-than sign rather than as TNTC, let the greater-than sign win when a set has both signs, and ask for the largest volume filtered whenever a result is a non-detect. A month with no discharge, a conditional parameter that wasn't triggered and a sample never taken each has its own No Data Indicator on EPA's list, codes C, 9 and E among them, and Connecticut reminds permittees that a NODI code can never excuse a limit exceedance. The draft suggests a code only where the client's own records show why a value is missing, and marks it for the signatory.
Codes, comments and the excursion column. One quantity can wear several parameter codes: Connecticut lists 74076 for flow on the day of sampling, 00056 for average daily flow, 50047 for the maximum during 24 hours and 00058 for an instantaneous flow rate, and wants the sample date of monthly and quarterly monitoring in the comments. The No. Ex. column counts results outside the limits; in Pennsylvania's example, a pH permit of 6.0 to 9.0 with readings of 5.9 and 9.1 gets a 2. Filling it means judging each value against its limit, so the draft leaves it blank for the permittee's people.
Signing stays with the permittee. Since December 21, 2016, 40 CFR 127 has had DMRs submitted electronically. For NetDMR, the Texas Commission on Environmental Quality says consultants, labs and contractors register as data providers who can enter and view DMR data but cannot sign or submit, and a new signatory signs a subscriber agreement for each permit first. Under 40 CFR 122.22 the person who signs certifies under penalty of law that the information is true, accurate and complete. Your reviewer will check each input result, each formula, every rounding, every non-detect and every suggested NODI against the worksheet your lab sent.
// What you send
Copies from your permit reporting desk
20 to 30 worked periods
For each, the lab reports for the outfall and period, the client's flow records and the DMR worksheet or copy of record that came of it. Include a month with an added sample and one full of non-detects.
Each client's permit pages
The effluent limits and monitoring requirements pages, plus the state DMR instructions you follow for that client, so each draft runs on the same rules your team used.
No logins
We never sign in to NetDMR, a state reporting system, your LIMS or a client's records. You send copies, and every entry and signature stays where it is today.
An NDA, then look-alikes if needed
Permit numbers, flows and results stay with you until the NDA is signed. If a client's data can't leave, we build look-alike periods with your reviewer.
// Before it starts
Settled before the first monitoring period
A DMR goes out under the permittee's signature and a penalty-of-law certification, so the owner settles the rules first.
- Your reviewer
- Named by the owner, often the project manager for permit clients
- Non-detect rule
- Written per client: the state's instructions and any permit language
- Compliance calls
- Excursions and exceedances left to people, always
- Success criteria
- Agreed first: inputs, statistics, rounding, NODI suggestions
- Price
- A range for running DMR data live
- NDA
- Signed before permits or results move
// How it's judged
Each draft beside the worksheet your lab sent
| On the same 20 to 30 periods | The worksheet you sent | The AI draft |
|---|---|---|
| Every result for the outfall and period used, added samples included | Scored on your periods | Scored on your periods |
| The permit's statistic for each parameter, with the math shown | Scored on your periods | Scored on your periods |
| Loads from the concentration and the flow on each sample day | Scored on your periods | Scored on your periods |
| Non-detects handled by the client's state rule | Scored on your periods | Scored on your periods |
| Rounding to the decimals of each permit limit | Scored on your periods | Scored on your periods |
| Bacteria geometric means and their greater-than or less-than signs | Scored on your periods | Scored on your periods |
| NODI suggestions backed by the client's own records | Scored on your periods | Scored on your periods |
| Lines left for your reviewer, and the reason | Scored on your periods | Scored on your periods |
// After a yes
About 30 days on new monitoring periods
If your reviewer says yes, new periods for your permit clients get the same drafting for about 30 days.
Each worksheet is checked by your reviewer before it goes to the client, and the permittee's signatory still reviews, signs and submits the DMR.
Scoring carries on the same way all month, and nothing else is added until the run is judged.
// What could come next
Other jobs, in a likely order
- 01Next
Pretreatment reports for industrial users
A categorical industrial user's June and December results worked up the same way, for the user's own signatory.
- 02Then
Electronic data deliverables
Signed results laid out in each consultant's or agency's EDD format, for your data group to release.
- 03Later
Bottle orders for permit monitoring
The permit's parameter list turned into a draft kit order with containers, preservatives and holding times, for sample control to check.
// One hard limit
It never signs, submits or judges a DMR.
It works out values from copies of results you already reported and shows its math on a review sheet. It never reports, qualifies or changes a result, never decides whether a sample or a value meets a permit limit, never fills the excursion count, never signs or submits a report, an EDD or a DMR, and never contacts a client or an agency. Your qualified staff decide what the worksheet says, and the permittee's signatory signs.
Priced per job. You get a range before the proof of concept and a fixed price before you sign.
The range depends on how many permit clients get DMR data from you, how many outfalls and parameters each one reports, and how many state rule sets you follow.
// Questions
What lab managers ask about DMR data
Does the AI decide whether a client violated its permit?
Can it handle states with different non-detect rules?
Will it enter the values in NetDMR for our clients?
What about pretreatment reports to a POTW?
Does it use the flows our client sends?

Rob Eason, founder
// Book a call with Rob
Bring a quarter of DMR worksheets.
Thirty minutes with Rob. Tell him about your lab and role, how many permit clients get DMR data from you, and which states they report to. Hold back permits and results until the NDA is signed.
- Co-owned a 60-employee financial services firm and sold his share to his partner.
- Ran GOSO Technologies, a Boston solar company rated 5/5 across 24 Google reviews.
- 5/5 across 83 reviews in HighLevel's Certified Admin Directory.
- 4.3/5 from 6 Google reviews of Massmarket AI.
- Every directory and Google review, critical ones included, is shown word for word at massmarket.ai/reviews.
- Takes every proof-of-concept call himself.
