ICIS-NPDES DMR Summary and Data Element Dictionary

The Enforcement and Compliance History Online (ECHO) system incorporates Discharge Monitoring Report (DMR) data submitted by NPDES permit holders to the states or directly to EPA via the US EPA Central Data Exchange (CDX). This compendium of DMR data identifies the permit conditions or limits for each water discharge location, the actual values, identified by the permittee, for each monitored pollutant that was discharged, and whether the amounts discharged exceeded the permit limits. DMR data are stored in the EPA Office of Enforcement Compliance Assurance, Integrated Compliance Information System (ICIS), where it is extracted by ECHO.


 DMR Description

The download data comprises comma-separated value files, one for each fiscal year since 2009, available in individual zip files. Each zip file is named npdes_dmrs_fyxxxx.zip and each CSV is named npdes_dmr_fyxxxx.csv, where xxxx is the fiscal year (e.g., npdes_dmrs_fy2014.zip).

The data contained in the download file is comprised of selected data columns from the following ICIS tables:

SchemaTable
IDEA_ICISICIS_DMR
IDEA_ICISICIS_DMR_EVENT
IDEA_ICISICIS_DMR_FORM
IDEA_ICISICIS_DMR_FORM_PARAMETER
IDEA_ICISICIS_DMR_FORM_VALUE
IDEA_ICISICIS_DMR_VALUE
IDEA_ICISICIS_LIMIT
IDEA_ICISICIS_LIMIT_SET
IDEA_ICISICIS_LIMIT_SET_SCHEDULE
IDEA_ICISICIS_LIMIT_SET_STATUS
IDEA_ICISICIS_LIMIT_VALUE
IDEA_ICISICIS_PERMIT
IDEA_ICISICIS_PERM_FEATURE
IDEA_ICISICIS_DMR_PARAMETER

Top of Page


 ICIS-NPDES Data Elements

 NPDES DMR (NPDES_DMR_FYxxxx.csv)

Element NameData TypeLength
ACTIVITY_IDNumber22
EXTERNAL_PERMIT_NMBRVarChar29
VERSION_NMBRNumber22
PERM_FEATURE_IDNumber22
PERM_FEATURE_NMBRVarChar230
PERM_FEATURE_TYPE_CODEVarChar23
LIMIT_SET_IDNumber22
LIMIT_SET_DESIGNATORVarChar22
LIMIT_SET_SCHEDULE_IDNumber22
LIMIT_IDNumber22
LIMIT_BEGIN_DATEDate7
LIMIT_END_DATEDate7
NMBR_OF_SUBMISSIONNumber22
NMBR_OF_REPORTNumber22
PARAMETER_CODEVarChar25
PARAMETER_DESCVarChar2100
MONITORING_LOCATION_CODEVarChar23
STAY_TYPE_CODEVarChar21
LIMIT_VALUE_IDNumber22
LIMIT_VALUE_TYPE_CODEVarChar23
LIMIT_VALUE_NMBRNumber22
LIMIT_UNIT_CODEVarChar22
LIMIT_UNIT_DESCVarChar213
STANDARD_UNIT_CODEVarChar22
STANDARD_UNIT_DESCVarChar213
LIMIT_VALUE_STANDARD_UNITSNumber22
STATISTICAL_BASE_CODEVarChar23
STATISTICAL_BASE_TYPE_CODEVarChar23
LIMIT_VALUE_QUALIFIER_CODEVarChar23
OPTIONAL_MONITORING_FLAGChar1
LIMIT_SAMPLE_TYPE_CODEVarChar23
LIMIT_FREQ_OF_ANALYSIS_CODEVarChar25
STAY_VALUE_NMBRNumber22
LIMIT_TYPE_CODEVarChar23
DMR_EVENT_IDNumber22
MONITORING_PERIOD_END_DATEDate7
DMR_SAMPLE_TYPE_CODEVarChar23
DMR_FREQ_OF_ANALYSIS_CODEVarChar25
REPORTED_EXCURSION_NMBRNumber 
DMR_FORM_VALUE_IDNumber22
VALUE_TYPE_CODEVarChar23
DMR_VALUE_IDNumber22
DMR_VALUE_NMBRNumber22
DMR_UNIT_CODEVarChar22
DMR_UNIT_DESCVarChar213
DMR_VALUE_STANDARD_UNITSNumber22
DMR_VALUE_QUALIFIER_CODEVarChar23
VALUE_RECEIVED_DATEDate7
DAYS_LATENumber22
NODI_CODEVarChar23
EXCEEDANCE_PCTNumber22
NPDES_VIOLATION_IDNumber22
VIOLATION_CODEVarChar25
RNC_DETECTION_CODEVarChar23
RNC_DETECTION_DATEDate7
RNC_RESOLUTION_CODEVarChar23
RNC_RESOLUTION_DATEDate7

Top of Page


 DMR Data Element Definitions

The following is a list of the data elements and ICIS-derived elements that appear in the NPDES DMR download.

ACTIVITY_ID - The unique identifier for an activity performed at or related to a particular site. It can be used to uniquely identify a version of a permit in ICIS. 

DAYS_LATE - The system-generated number of days the DMR value is late. This value is calculated as follows: Value Received Date - DMR Due Date. For example, if a DMR with a monitoring period end date of June 30, 2018 has a DMR Due Date of August 31, 2018, and the value was received on October 1, 2018, then the days late would be equal to 31 (= 10/1/2018 - 8/31/2018).

DMR_EVENT_ID - The unique ID identifying the DMR Event. A DMR Event is a DMR submission with a DMR period end date and DMR due date. 

DMR_FORM_VALUE_ID - The sequence ID identifying the DMR Form Value.

DMR_FREQ_OF_ANALYSIS_CODE - The code identifying the frequency measure used for sampling the data; this is the Frequency of Analysis reported for a DMR parameter on the DMR form. For a list of all codes and descriptions, download the Frequency of Analysis Reference Table (CSV) (4.8 K).

DMR_SAMPLE_TYPE_CODE - The sampling method used to provide the values for the DMR parameter on the DMR form. For a list of all codes and descriptions, download the Sample Type Reference Table (CSV) (1.7 K).

DMR_UNIT_CODE - The code representing the unit of measure applicable to quantity or concentration measurements (DMR_VALUE_NMBR), as entered by the user.

DMR_UNIT_DESC - The short description of the unit of measure applicable to the quantity or concentration measurement (DMR_VALUE_NMBR).

DMR_VALUE_ID - The system-generated unique identifier for the DMR value.

DMR_VALUE_NMBR - The DMR value number reported on the DMR form.

DMR_VALUE_QUALIFIER_CODE - The unique code identifying the DMR value operator (e.g., <, T, >, E, =). For more information on qualifier code definitions see table below.

CODEDescRIPTION
<Less Than
<=Less Than or Equal To
>Greater Than
>=Greater Than or Equal To
=Equals
TToo Numerous to Count
EEstimated

DMR_VALUE_STANDARD_UNITS - The DMR value expressed in standard units, as calculated by the system. Corresponding units are provided in STANDARD_UNIT_CODE/STANDARD_UNIT_DESC.

EXCEEDENCE_PCT - The system-generated percent by which the DMR value (or Adjusted Value) exceeded its Limit (or stay) value.

EXTERNAL_PERMIT_NMBR - The unique identifier for a permit.

LIMIT_BEGIN_DATE - The date on which a limit starts being in effect for a particular parameter in a limit set.

LIMIT_END_DATE - The date on which a limit stops being in effect for a particular parameter in a limit set.

LIMIT_ID - The unique identifier for a limit parameter record.

LIMIT_FREQ_OF_ANALYSIS_CODE - The frequency with which the permittee must analyze the sampled data. The general format is XX/YY, where XX=number of times sampled and YY=Period of time sampled. For a list of all codes and descriptions, download the Frequency of Analysis Reference Table (CSV) (4.8 K).

Note: When opening the file in Excel, values may display as dates due to the formatting (E.g., "01/30" describes monthly frequency sampling, but may display in Excel as "30-Jan".). Values should display correctly when opening as a text file. 

LIMIT_SAMPLE_TYPE_CODE - The sampling method required by the permit to be used to provide values on the DMR for the limit. For a list of all codes and descriptions, download the Sample Type Reference Table (CSV) (1.7 K).

LIMIT_SET_DESIGNATOR - The alphanumeric field that is used to designate a particular grouping of parameters within a limit set. For more information on limit sets download the Limit Sets Technical Specification (DOC) (61 pp, 3.1 MB).

LIMIT_SET_ID - The system-generated unique identifier for a limit set. For more information on limit sets download the Limit Sets Technical Specification (DOC) (61 pp, 3.1 MB).

LIMIT_SET_SCHEDULE_ID - The system-generated unique identifier of the Limit Set Schedule. For more information on limit sets download the Limit Sets Technical Specification (DOC) (61 pp, 3.1 MB).

LIMIT_TYPE_CODE - The unique code that indicates whether a limit is an enforceable limit (ENF) or alert limit (ALR). Alert limits do not receive effluent violations for exceedances of the limit. Alerts limits are also referred to as benchmark thresholds. 

LIMIT_UNIT_CODE - The code representing the unit of measure applicable to quantity or concentration limits (LIMIT_VALUE_NMBR).

LIMIT_UNIT_DESC - The short description of the unit of measure applicable to limit value (LIMIT_VALUE_NMBR).

LIMIT_VALUE_ID - The system-generated unique identifier for the Limit Value.

LIMIT_VALUE_NMBR - The actual limit value number from the Permit or Enforcement Action Final Order. If this value is blank or null, the DMR has report-only monitoring (i.e., no limit, alert, benchmark, or threshold value). 

LIMIT_VALUE_QUALIFIER_CODE - The unique code identifying the limit value operator (e.g., <, T, >, E, =). For more information on qualifier code definitions see table below.

CodeDescription
<Less Than
<=Less Than or Equal To
>Greater Than
>=Greater Than or Equal To
=Equals
TToo Numerous to Count
EEstimated

LIMIT_VALUE_STANDARD_UNITS - The limit value expressed in standard units, as calculated by the system. Corresponding units are provided in STANDARD_UNIT_CODE/STANDARD_UNIT_DESC. If this value is blank or null, the DMR has report-only monitoring (i.e., no limit, alert, benchmark, or threshold value). 

LIMIT_VALUE_TYPE_CODE - The indication of the limit value type (e.g., Quantity 1, Concentration 2).

 MONITORING_LOCATION_CODE - The code that the monitoring location at which the monitoring requirement (and effluent limit if limited) applies. One parameter may have several monitoring location requirements pertaining to the same permitted feature. Valid code values are:

CodeDescription
0Intake
1Effluent Gross
2Effluent Net
3Intake Public Water
4Pretreatment, Process Complete
5Upstream Monitoring
6Downstream Monitoring
7Intake from Stream
8Other Treatment, Process Complete
9Phosphate Removal, Process Complete
ADisinfection, Process Complete
APAlternate Process
BPrior to Disinfection
CNitrogen, Removal Complete
DTertiary/Advanced Process Complete
ESecondary/Biological Process Complete
EGEffluent Gross
FPrimary/Preliminary Process Complete
GRaw Sewage Influent
HDuring Manufacturing
IIntake from Well
INAllowed Increase
JIntermediate Treatment, Process Complete
KPercent Removal
LDigestor
NIn Aeration Unit
OSee Comments
PSee Comments
QSee Comments
RSee Comments
RSBeneficial Reuse
RWReceiving Water
SSee Comments
SCSee Comments
SLSludge
TSee Comments
USee Comments
VSee Comments
WSee Comments
XEnd of Chlorine Contact Chamber
ZInstream Monitoring
YEffluent Gross (Supplementary)
GWGroundwater
IIIndustrial Influent
IMInternal Monitoring Point
PIPrior to Irrigation
PRPrior to Reuse
LALand Application Soil

 MONITORING_PERIOD_END_DATE - The date that the monitoring period for the values covered by this DMR form ends.

NMBR_OF_SUBMISSION - The attribute stores the number of months for submitting the DMRs for the limit set (e.g., monthly = 1, semi-annually = 6, quarterly = 3); this data element will be blank for Unscheduled Limit Sets. Must be greater than or equal to NMBR_OF_REPORT and be divisible by NMBR_OF_REPORT.

NMBR_OF_REPORT - The number of months in the monitoring period covered by the DMR (e.g., monthly = 1, quarterly = 3, semi-annually = 6).

NODI_CODE - The no data indicator (NODI) code indicates the reason that data for an expected DMR value were not submitted by the permittee for a Monitoring Period End Date.

CodeDescription
1Wrong Flow
2Operation Shutdown
3Special Report Attached
4Discharge to Lagoon/Groundwater
5Frozen Conditions
7No Influent
8Other (See Comments)
9Conditional Monitoring - Not Required This Period
AGeneral Permit Exemption
BBelow Detection Limit/No Detection
CNo Discharge
DLost Sample/Data Not Available
EAnalysis Not Conducted/No Sample
FInsufficient Flow for Sampling
GSampling Equipment Failure
HInvalid Test
ILand Applied
JRecycled - Water-Closed System
KNatural Disaster
LDMR Received but not Entered
MLaboratory Error
NNot Constructed
QNot Quantifiable
RAdministratively Resolved
SFire Conditions
VWeather Related
WDry Lysimeter/Well
XParameter/Value Not Reported
ZCOVID-19

NPDES_VIOLATION_ID - The system-generated unique identifier for the NPDES Violation.

OPTIONAL_MONITORING_FLAG - The flag allowing users to indicate that monitoring is optional but not required (i.e., effluent violation generation will be suppressed for optional columns).

PARAMETER_CODE - The unique code identifying the parameter being limited and/or monitored.

PARAMETER_DESC - The description of the parameter code. Download the Parameter Reference Table (CSV) (218 K) for the complete list of parameter codes and descriptions and corresponding pollutant codes. Additional fields in this table include:

  • SNC_FLAG - The flag indicating whether the parameter is within significant noncompliance (SNC) group 1 or 2 or blank for purposes of calculating RNC.
  • PERCENT_REMOVAL_FLAG - The flag indicating whether the parameter is a percent removal parameter for determining the formula to use for calculating the percent exceedance for the parameter.
  • PERCENT_EXCEEDENCE_FLAG - The flag indicating whether percent exceedance can be calculated for the parameter.

PERM_FEATURE_ID - The unique system identifier of a permitted feature.

PERM_FEATURE_NMBR - The identifier assigned for each location at which permit conditions are being applied.

PERM_FEATURE_TYPE_CODE - The code indicating the type of permitted feature (e.g., External Outfall, Sum). Valid code values are:

CodeDescription
ARWReceiving Water (Ambient)
CDSCo-disposal Site
DOFDischarge to Offsite Facility
EXOExternal Outfall
INCIncinerator
INFInfluent Structure
INOInternal Outfall
INSIntake Structure
LASLand Application Site
MODMobile Offshore Drilling Unit (MODU)
OTROther
PLAPlatform
SDSSurface Disposal Site
SUBSubsea
SUMSum
WELMonitoring Well

REPORTED_EXCURSION_NMBR - The number of times a limit was exceeded, as reported on the DMR form.

RNC_DETECTION_CODE - The code indicating the reportable noncompliance (RNC) detected for a violation. Valid code values are:

CodeDescription
AEnforcement Order
BManual 2A4 - Pass-Through
CChronic Violation
DManual Other
EManual 2F - Permit Narrative
FManual 2G - Violation of Concern
GManual 2A1 - Effluent Violation
HChronic Violation, Non-Monthly Average
IManual 2A2 - Unauthorized Bypass
JManual 2A3 - Unpermitted Discharge
KNon-receipt Violation, Non-Monthly Average
NNon-Receipt of DMR/Schedule Report
PEnforcement Order, Non-Monthly Average
QManual 2B - Pretreatment
RTRC Limitations Exceeded, Non-Monthly Average
SSchedule Violation
TTRC Limitations Exceeded
UOther Violation with TRC Non-Monthly Average
VOther Violation with TRC
WManual 2E - Deficient Report
XManual Other Violation with TRC
YManual TRC
ZManual Chronic

RNC_DETECTION_DATE - The date that RNC was detected. It can be detected automatically or entered manually. In cases in which RNC is detected by ICIS-NPDES, the detection date will vary according to the type of violation detected.

RNC_RESOLUTION_CODE - The code indicating the resolution of noncompliance (RNC) for a violation. Valid code values are:

CodeDescription
1NC - Unresolved RNC
ANC - Manual Unresolved RNC
0RE - Automated Administratively Resolved (DMR Non-Receipt Violations)
2RE - Back into Compliance
5RE - Resolved RP by NPDES Closure of Enforcement Action Final Order with Compliance Schedule
6RE - Manual Resolution by Enforcement Action
9RE - Manual by Back into Compliance
BRE - Manual by EPA/State/Tribal Action
3RP - Due to Formal Enforcement Action Final Order with Compliance Schedule
4RP - In Compliance with Formal Enforcement Action Final Order Requirement
7RP - Manual RP - In Compliance with Formal Enforcement Action Order Requirement
8RP - Manual Due to Formal Enforcement Action Formal Order

RNC_RESOLUTION_DATE - The date RNC was marked to its current resolution status. It can be entered manually or automatically.

STANDARD_UNIT_CODE - The code representing the standard unit of measure applicable to quantity or concentration limits and DMR measurements. For more information on units displayed, see the STANDARD_UNIT_DESC field. 

 STANDARD_UNIT_DESC - The short description of the standard unit of measure applicable to limit or DMR values.

STATISTICAL_BASE_CODE - The code representing the unit of measure applicable to the limit and DMR values (e.g., 30-day average, daily maximum). For a list of all codes and descriptions, download the Statistical Base Code Reference Table (CSV).

STATISTICAL_BASE_TYPE_CODE - The code indicating whether the statistical base code is a minimum, average, or maximum for purposes of calculating compliance against the limit value. For a list of all codes and descriptions, download the Statistical Base Code Reference Table (CSV).

STAY_TYPE_CODE - The unique identifier of the type of stay applied to a limit (e.g., X, Y, Z), which indicates whether the limits do not appear on the DMR at all, are treated as monitor only, or have a stay value in effect during the period of the stay. States and Regions use this when a facility is subject to interim limits due to being under the terms of a compliance schedule. The temporary interim limit is entered in STAY_VALUE_NMBR.

CodeDescription
XSuppress Effluent Violations
YSuppress DMR Non-Receipt Violations
ZUse Stay Value

STAY_VALUE_NMBR - The numeric limit value imposed during the period of the stay for the limit; if entered, during the stay period, the system will use this limit value for calculating compliance rather than the actual permit limit value.

VALUE_TYPE_CODE - The indication of the limit value type (e.g., Quantity 1, Concentration 2). Valid code values can be found on the ICIS-NPDES Download Summary.

VALUE_RECEIVED_DATE - The date the DMR value was received by the regulatory authority.

Note that there may be a delay between the monitoring period associated with the DMR and the date that the regulatory authority receives the DMR. For the end date of the monitoring period associated with the DMR values, please see Monitoring_Period_End_Date .

VERSION_NMBR - The version of the permit when a modification or re-issuance is applied to the permit. The current permit is VERSION_NMBR = 0. The oldest permit version is VERSION_NMBR = 1 (VERSION_NMBR = 2 is the next oldest, etc.). 

VIOLATION_CODE - The code identifying which type of violation has occurred (D80 = Required Monitoring DMR Value Non-Receipt, D90 = Limited Value Overdue Non-Receipt, E90 = Effluent Violation).