Action required — by priority
| Priority | ID | Area | Tag | Source | Pollutant | Notes |
|---|
Emission sources
| ID | Area | Tag | Source | Pollutant | kg/h | t/y | Control | Status |
|---|
Emission Overview
| Rank | Equipment Tag | Description | Main Pollutant | Emission (t/y) |
|---|
No quantified emission sources yet — add Gas Flow, Concentration and Operating Hours to at least one source in the Register to see this overview.
| Source | % of pollutant |
|---|
| Source | Pollutant | Actual | Limit | Utilisation | Status |
|---|
No applicable limits entered yet — add an Emission Limit Value to a pollutant in the Register to see compliance status here.
| Pollutant | Facility Total (kg/y) | Sources | Threshold (kg/y) | Utilisation | Status |
|---|
No Lower Limit (Threshold) entered yet — add one to a pollutant in the Register to see the facility-wide check here.
- ✅ Do not add different pollutants together for decision-making — 1 t/y NOx and 1 t/y CO₂ are not equivalent.
- ✅ Use % contribution within one pollutant to find the biggest sources of that pollutant.
- ✅ Check compliance per source and per pollutant — each has its own applicable limit.
- ✅ A small mass can still be a big issue if it's close to or above its limit.
- ✅ Use both the environmental-load view and the compliance view together for the full picture.
How this register works
The workflow
Each entry follows: Plant → Equipment → Emission source → Emission type → Component → Quantity → Existing control → Action. Not every field needs to be filled in right away — you can register a source with just a tag and equipment type, and come back to add quantities once they're known.
Equipment Type & smart suggestions
Choosing an Equipment Type (e.g. Storage Tank, Pump, Reactor) changes the suggested options in the Emission Point field — e.g. a Storage Tank suggests P/V Valve, Filling, Pumping Out; a Pump suggests Mechanical Seal, Flange, Drain. These are suggestions, not a locked list — you can still type anything.
Operating Mode vs. Frequency
Operating Mode is the plant condition the emission happens under (Normal, Startup, Upset, Emergency...). Frequency is how often it happens (Continuous, Intermittent, Occasional). Keeping these separate matters: a reactor's normal process vent (Continuous) is a very different problem from its emergency depressurization vent (Occasional) — even though both are "the reactor."
Gas Flow: Nm³/h or kg/h — pick whichever you actually measured
Choose Nm³/h if your flow comes from a volumetric measurement (orifice plate, vortex meter, process calculation). Choose kg/h if it comes from a mass flow meter (e.g. Coriolis). This matters because it changes which concentration units make sense below — a volumetric flow needs a volumetric or mg/Nm³-style concentration to multiply against; a mass flow needs a mass-basis concentration (wt%, g/kg, mg/kg) instead. The tool updates the available Unit options automatically when you switch.
Each pollutant gets its own concentration, unit and basis
Different pollutants are measured differently in practice — VOC as g/Nm³ from a stack test, CH₄ as vol% from a gas analysis, NOx as mg/Nm³ at a specific O₂ reference. Selecting a pollutant opens its own row with a Unit dropdown scoped to what's actually used for that pollutant, a Basis (Normal dry/wet, Process conditions, or "Dry @ reference O₂" — which reveals a Reference O₂ field, since 80 mg/Nm³ at 3% O₂ is a genuinely different number than 80 mg/Nm³ with no reference stated), a Determination Method (Measured, CEMS, Lab Analysis, Mass Balance, Emission Factor, etc.), a Data Source, and a Data Quality rating. Multiple pollutants on the same source each get their own rate, summed into the entry's Total Emission Rate.
Data Quality — what each level means
| Data Quality | Meaning |
|---|---|
| High | Reliable, up-to-date, and representative data |
| Medium | Usable data, but with some assumptions or uncertainty |
| Low | Limited data or significant assumptions/uncertainty |
| Unknown | Data quality has not yet been assessed |
How mass-based units calculate (mg/Nm³, g/Nm³, mg/kg, g/kg, wt%)
These are direct — concentration × flow, adjusted for the unit's magnitude:
Rate (kg/h) = Flow (Nm³/h) × Concentration (g/Nm³) ÷ 1,000
Mass-basis units (with a kg/h flow) work the same way, just without needing a molecular weight at all — mass fraction × mass flow is already a mass flow.
How volumetric units calculate (ppmv, vol%) — the part that's easy to get wrong
You can't just multiply Nm³/h by a vol% reading — that gives you a volume of pollutant, not a mass. Converting it properly takes 3 steps, worked through with a real example (1,000 Nm³/h stream, 3 vol% CO₂):
1. Volume of pollutant: 1,000 Nm³/h × 0.03 = 30 Nm³/h of CO₂
2. Convert to moles, using the molar volume constant (22.414 Nm³/kmol at 0°C, 1 atm — this is fixed for any ideal gas, not specific to CO₂): 30 ÷ 22.414 = 1.3385 kmol/h
3. Convert to mass, using CO₂'s own molecular weight (44.01 kg/kmol): 1.3385 × 44.01 = 58.9 kg/h
ppmv works exactly the same way — just remember ppmv is parts per million, so you divide by 1,000,000 instead of 100. Example: 20,000 Nm³/h stream, 80 ppmv NOx:
1. Volume of pollutant: 20,000 Nm³/h × (80 ÷ 1,000,000) = 1.6 Nm³/h of NOx
2. Convert to moles: 1.6 ÷ 22.414 = 0.0714 kmol/h
3. Convert to mass, using NOx's molecular weight (46.01 kg/kmol, as NO₂-equivalent — the standard convention): 0.0714 × 46.01 = 3.28 kg/h
This is exactly why VOC and Dust/PM don't offer ppmv or vol% as options: VOC is a mixture with no single fixed molecular weight, and dust isn't a gas at all — neither can be converted this way without making up a number. If you only have a volumetric reading for one of these, switching Gas Flow to kg/h and using a mass-basis unit instead is the responsible way to still quantify it.
Total rate and annual emission
The entry's Total Emission Rate is the sum of every pollutant row's rate. Add Operating Hours (h/y) and the Annual Emission calculates too: Annual (t/y) = Total Rate × Hours ÷ 1,000. Leave any of this blank if you don't know it yet — the entry still saves, just without a quantified emission (it'll show up flagged for "Review" or "Action Required" rather than silently guessed at).
Destination Equipment vs. Final Destination
These are kept separate on purpose. "Destination Equipment" (e.g. Carbon Filter CF-101) is where the emission physically goes first. "Final Destination" (Atmosphere, Treatment, Flare, Recovery) is where it actually ends up. This avoids the common mistake of assuming an emission is "handled" just because it passes through a filter — there's usually still a residual emission to atmosphere on the other side.
Assessment Status & Priority
OK — quantified and adequately controlled. Review — not yet fully assessed, no immediate red flag. Action Required — needs a decision or a project. When you select Action Required, a Priority field appears:
- Priority 1 — Immediate: address as soon as practical, e.g. safety, compliance, or clearly uncontrolled significant emissions.
- Priority 2 — Within 3 months: a real gap, but can be scheduled into near-term work.
- Priority 3 — Within 1 year: worth fixing, lower urgency — fits into annual planning.
Every Action Required entry automatically appears in the "Action required — by priority" summary at the top of the Register tab, sorted 1 → 3, so you can see at a glance what needs attention first.
Substance Class
An emission limit value and a lower threshold apply to each substance class. The substance classes are as follows:
- inorganic substances: gaseous (gA) and solid (sA)
- organic substances: gaseous (gO)
- particulate substances (S)
- Substances of Very High Concern (ERS, MVP1, MVP2)
Selecting a Substance Class on a pollutant row shows its official limit value and lower threshold from BAL Tabel 5.30, and auto-fills both the Emission Limit Value (ELV) and the Lower Limit (Threshold) where they apply — you can always overwrite the suggested values. Note that the applicable value for a specific activity may instead be set in Hoofdstuk 4 of the Bal rather than Tabel 5.30 — always check which one actually governs your activity before relying on the auto-filled number. This information can be found at: Emissiegrenswaarden lucht | Informatiepunt Leefomgeving.
ELV vs. Lower Limit — these are two different tests, not the same number twice. The Emission Limit Value is a concentration ceiling (e.g. mg/Nm³) — how strong the stream is allowed to be. The Lower Limit (Threshold) is an annual mass limit (kg/y) — how much of that substance is allowed to leave the site over a whole year, regardless of concentration. A source can be well within its ELV every moment it operates and still cross its annual threshold if it runs often enough — which is exactly why both are tracked separately here.
Why the ELV field is always mg/Nm³, even if your Concentration was entered in a different unit (wt%, ppmv, g/kg...): an Emission Limit Value is always defined against a volumetric concentration basis, regardless of how a plant happens to measure it. So the tool converts your measured value back to an equivalent mg/Nm³ figure before comparing it to the ELV, rather than comparing two different kinds of numbers directly.
Stream Density, and why it appears when Gas Flow is kg/h. When flow is measured volumetrically (Nm³/h), converting to mg/Nm³ is direct. When flow is measured as a mass flow (kg/h), the stream's volume isn't known unless you also know its density — a Stream Density (kg/m³) field appears for exactly this: Volumetric flow = Mass flow ÷ Density, and from there the same mg/Nm³ conversion applies. Rough references: air ≈ 1.29, natural gas ≈ 0.72, CO₂ ≈ 1.98 kg/m³ — but use your stream's actual value where you have it, since composition changes this meaningfully. Leave it blank and the Compliance Overview honestly shows "Enter density" instead of guessing a percentage.
Important — the density must be at Normal conditions (typically 0 °C and 1.01325 bar), the same reference basis that "Nm³" itself is defined at. Density measured at actual operating temperature and pressure (a much hotter or more pressurized real stream) will be a different number and will throw off the whole conversion — if your only density figure is at process conditions, it needs to be corrected to Normal conditions first, not entered as-is.
Worked example — wt% to mg/Nm³: 1,000 kg/h stream, 3 wt% VOC, density 1.29 kg/m³ (air, at Normal conditions):
1. Pollutant mass rate: 1,000 kg/h × (3 ÷ 100) = 30 kg/h VOC
2. Equivalent volumetric flow, using density: 1,000 kg/h ÷ 1.29 kg/m³ = 775.2 Nm³/h
3. Equivalent concentration: (30 kg/h × 1,000,000) ÷ 775.2 Nm³/h = 38,700 mg/Nm³
Worked example — mg/kg to mg/Nm³: 500 kg/h stream, 200 mg/kg CH₄, density 0.72 kg/m³ (natural gas, at Normal conditions):
1. Pollutant mass rate: 500 kg/h × 200 mg/kg ÷ 1,000,000 = 0.1 kg/h CH₄
2. Equivalent volumetric flow: 500 kg/h ÷ 0.72 kg/m³ = 694.4 Nm³/h
3. Equivalent concentration: (0.1 kg/h × 1,000,000) ÷ 694.4 Nm³/h = 144.0 mg/Nm³
Notice the pattern is the same both times: get the pollutant's own mass rate first (Step 1), turn the stream's mass flow into a volumetric flow using density (Step 2), then divide one by the other (Step 3). The tool does all three steps automatically the moment you fill in Concentration, Gas Flow and Stream Density — this is just what's happening underneath.
To look up which substance class a specific chemical falls under, or to check its hazard properties, use RIVM's Dashboard | Zoeksysteem Risico's van stoffen.
Editing, duplicating & expanding rows
✏️ Edit reopens the form pre-filled so you can change any field on that exact entry. ⧉ Duplicate also pre-fills the form, but saves as a brand new entry — useful when the same equipment has multiple emission points (e.g. a tank with both a P/V valve and a thermal breathing loss). Click the ▸ next to any row to expand a detail panel showing every field that isn't in the compact table — Service, Mechanism, Operating Mode, Destination chain, Notes, and more.
Save, Open, Print & Reset
Save downloads your register as a .json file to your own computer — nothing is stored on any server. Open loads a previously saved file back in. Print gives a clean printout without the toolbar. Reset clears everything in the current session (after confirming) — make sure you've saved first if you want to keep your work.
This register is a structured screening and tracking tool for internal engineering use — it is not a substitute for a certified environmental compliance assessment or regulatory emissions inventory.