3 model cells · GloFAS v4
71 of 72 rivers scoredWhere every number comes from
Each row is a field you can see somewhere in this product: which of our endpoints serves it, who publishes it, how often it changes, and whether it is measured, modelled, or worked out here from other numbers.
Not reporting right now: Austria, Slovakia, Romania, Bulgaria, Moldova, Slovenia, Russia, Syria, Iraq. 31 of them carry standing limits that are true even on a perfect day — every one is named in the coverage tables below.
Basis: 32 sensor networks and 2 model, satellite and derived layers · standing limits and today’s faults counted apartWhere coverage is partial- Measureda sensor reading, unchanged
- Modelledsomeone else's model output
- Derived herecomputed here from measured inputs; formula stated
- Operator reportedan operator-published declaration, not a sensor reading
- Referencea fixed published figure
River discharge is GloFAS v4 — Copernicus EMS model output, delivered by the Open-Meteo Flood API. Rainfall is ERA5 reanalysis — Copernicus C3S through the Open-Meteo Archive API. These model fields produce the Europe-wide percentile score; no gauge or reservoir value is folded into it.
Physical station readings come separately from CHMI HPPS (Czechia), PEGELONLINE — WSV (Germany), Hub’Eau hydrométrie and Vigicrues (France), Environment Agency hydrology (England), IMGW-PIB dane publiczne (Poland), SAIH Ebro — CHE (Spain), and ARPAE Emilia-Romagna levels plus ARPAE calculated instantaneous discharge (Italy). ARPAE discharge is calculated from provisional levels and rating curves, not a separate direct sensor reading. A national threshold, such as CHMI’s Czech drought discharge, remains a country-only gauge result and never becomes the European verdict.
The live network table below also links each newer national source directly, including Finland, Austria, Slovakia and Ukraine. Country filters on the map now show every loaded gauge from that network.
Reservoir operator data comes from the ISVS Voda register with the five Povodí basin authorities, while Global Water Watch supplies satellite surface area. These are reservoir-specific observations, not river-flow scores. Every field, its model and its qualifier is a row below.
The continental map is a model, not a measurement: GloFAS cells are 5 km and no gauge validates most of them. Official national networks now supply physical gauge locations, but availability and measured fields vary by provider. Where an official discharge reading is absent, the profile may show a separately labelled GloFAS model value instead; the two are never presented as the same observation. Satellite surface area is not storage fill, dam safety or gate state, and 15 tracked reservoirs have no satellite id and can never report.
A feed that fails shows a gap; it is never filled with a plausible stand-in. Reading age, provider quality flags and registry status are shown separately and never remove a station from the map — only an explicit provider registry status does that. Just aligned, unflagged readings enter fresh-reading comparisons; a watch point without five complete years and enough samples in its seasonal pools is not scored at all, and the years behind every percentile that is scored are published with it.
9 of 33 feeds are down and 24 are partial. A feed at 90% or more with no current fault reads near full; below that it reads partial. A field the publisher has never issued remains a standing limit. The two columns on the right keep those apart: the left one is how the source is built, the right one is what is broken today.
| Feed | Publisher | Coverage | Arriving now | Partial by design | Wrong right now |
|---|---|---|---|---|---|
Czechia/api/czech-gauges | CHMI | Partial | 4 of 7 · 57%reported within 24 h |
| — |
Germany/api/gauges | PEGELONLINE / WSV | Near full | 691 of 729 · 95%reported within 24 h |
| — |
France/api/gauges | Hub’Eau / Vigicrues | Partial | 2,934 of 6,142 · 48%reported within 24 h |
| — |
England/api/gauges | Environment Agency | Near full | 3,509 of 3,826 · 92%reported within 24 h |
| — |
Poland/api/gauges | IMGW-PIB Hydro | Near full | 860 of 913 · 94%reported within 24 h |
| — |
Spain/api/gauges | SAIH Ebro / CHE | Near full | 20 of 20 · 100%reported within 24 h |
| — |
Italy/api/gauges | ARPAE Emilia-Romagna | Near full | 6 of 6 · 100%reported within 24 h |
| — |
Switzerland/api/gauges | FOEN / BAFU | Partial | 167 of 253 · 66%reported within 24 h |
| — |
Sweden/api/gauges | SMHI HydroObs | Near full | 195 of 195 · 100%reported within 24 h |
| — |
Ireland/api/gauges | OPW waterlevel.ie | Near full | 439 of 443 · 99%reported within 24 h |
| — |
Finland/api/gauges | Syke Hydrologiarajapinta | Near full | 420 of 420 · 100%with a latest daily observation |
| — |
Lithuania/api/gauges | LHMT / Meteo LT | Near full | 97 of 97 · 100%reported within 24 h |
| — |
Slovenia/api/gauges | ARSO | Partial | 170 of 193 · 88%reported within 24 h |
| — |
Netherlands/api/gauges | Rijkswaterstaat WaterWebservices | Partial | 116 of 212 · 55%reported within 24 h |
| — |
Austria/api/gauges | eHYD Hydrographie Österreich | Near full | 299 of 299 · 100%reported within 24 h |
| — |
Slovakia/api/gauges | SHMÚ | Near full | 389 of 389 · 100%reported within 24 h |
| — |
Ukraine/api/gauges | Ukrainian Hydrometeorological Centre | Near full | 59 of 60 · 98%reported within 24 h |
| — |
Austria/api/gauges | DanubeHIS / ICPDR | Not reporting | 0 of 15 · 0%reported within 24 h |
|
|
Slovakia/api/gauges | DanubeHIS / ICPDR | Not reporting | 0 of 6 · 0%reported within 24 h |
|
|
Hungary/api/gauges | DanubeHIS / ICPDR | Near full | 47 of 47 · 100%reported within 24 h |
| — |
Croatia/api/gauges | DanubeHIS / ICPDR | Near full | 24 of 24 · 100%reported within 24 h |
| — |
Serbia/api/gauges | DanubeHIS / ICPDR | Near full | 15 of 15 · 100%reported within 24 h |
| — |
Romania/api/gauges | DanubeHIS / ICPDR | Not reporting | 0 of 38 · 0%reported within 24 h |
|
|
Germany/api/gauges | DanubeHIS / ICPDR | Near full | 14 of 14 · 100%reported within 24 h |
| — |
Bosnia and Herzegovina/api/gauges | DanubeHIS / ICPDR | Partial | 2 of 3 · 67%reported within 24 h |
| — |
Bulgaria/api/gauges | DanubeHIS / ICPDR | Not reporting | 0 of 0reported within 24 h | — |
|
Czechia/api/gauges | DanubeHIS / ICPDR | Partial | 4 of 7 · 57%reported within 24 h |
| — |
Moldova/api/gauges | DanubeHIS / ICPDR | Not reporting | 0 of 0reported within 24 h | — |
|
Slovenia/api/gauges | DanubeHIS / ICPDR | Not reporting | 0 of 10 · 0%reported within 24 h |
|
|
Russia/api/gauges | Dartmouth Flood Observatory | Not reporting | 0 of 3 · 0%reported within 24 h |
|
|
Syria/api/gauges | Dartmouth Flood Observatory | Not reporting | 0 of 1 · 0%reported within 24 h |
|
|
Iraq/api/gauges | Dartmouth Flood Observatory | Not reporting | 0 of 2 · 0%reported within 24 h |
|
|
| Feed | Publisher | Coverage | Arriving now | Partial by design | Wrong right now |
|---|---|---|---|---|---|
Continental watch points/api/continental | GloFAS v4 via Open-Meteo | Near full | 114 of 124 · 92%scored against their own record |
| — |
Czech reservoir stored volume/api/reservoir-volumes | Povodí basin authorities — Prehled.aspx and Objemy.aspx | Loading | —reporting a stored volume | — | — |
Counts are what the endpoint in each row is serving at this moment, not a published service level — reload and they move. A network reporting below its full station count is normal at any given minute; a network reporting nothing, or one with an entry in the last column, is not. Nothing here is ever filled in with a plausible stand-in: a feed that fails leaves a gap and says so.
Network availability9,821 of 14,382 official gauges reported in the last six hours.
| Country | Provider | Gauges | Reported 6 h | Reported 24 h | Discharge Q | Level W | Median age |
|---|---|---|---|---|---|---|---|
| France | Hub’Eau / Vigicrues | 6,142 | 46% | 48% | 2,208 | 2,924 | 32 min |
| England | Environment Agency | 3,826 | 89% | 92% | 286 | 3,347 | 32 min |
| Poland | IMGW-PIB Hydro | 913 | 93% | 94% | 696 | 890 | 2 h |
| Germany | PEGELONLINE / WSV | 729 | 94% | 95% | 84 | 691 | 17 min |
| Ireland | OPW waterlevel.ie | 443 | 99% | 99% | 0 | 443 | 17 min |
| Finland | Syke Hydrologiarajapinta | 420 | Daily | latest Aug 12 | 420 | 0 | 65 h |
| Slovakia | SHMÚ | 389 | 99% | 100% | 0 | 389 | 17 min |
| Austria | eHYD Hydrographie Österreich | 299 | 100% | 100% | 267 | 32 | 2 h |
| Switzerland | FOEN / BAFU | 253 | 66% | 66% | 168 | 0 | 12 min |
| Netherlands | Rijkswaterstaat WaterWebservices | 212 | 55% | 55% | 212 | 0 | 0 min |
| Sweden | SMHI HydroObs | 195 | 94% | 100% | 195 | 0 | 32 min |
| Slovenia | ARSO | 193 | 87% | 88% | 152 | 165 | 62 min |
| Lithuania | LHMT / Meteo LT | 97 | 100% | 100% | 0 | 97 | 32 min |
| Ukraine | Ukrainian Hydrometeorological Centre | 60 | 98% | 98% | 0 | 60 | 92 min |
| Hungary | DanubeHIS / ICPDR | 47 | 96% | 100% | 28 | 47 | 3 h |
| Romania | DanubeHIS / ICPDR | 38 | 0% | 0% | 6 | 6 | 39 h |
| Croatia | DanubeHIS / ICPDR | 24 | 100% | 100% | 19 | 24 | 3 h |
| Spain | SAIH Ebro / CHE | 20 | 100% | 100% | 19 | 20 | 17 min |
| Austria | DanubeHIS / ICPDR | 15 | 0% | 0% | 14 | 1 | 28 h |
| Serbia | DanubeHIS / ICPDR | 15 | 100% | 100% | 6 | 15 | 3 h |
| Germany | DanubeHIS / ICPDR | 14 | 100% | 100% | 10 | 14 | 3 h |
| Slovenia | DanubeHIS / ICPDR | 10 | 0% | 0% | 9 | 10 | 28 h |
| Czechia | DanubeHIS / ICPDR | 7 | 57% | 57% | 4 | 4 | 3 h |
| Italy | ARPAE Emilia-Romagna | 6 | 100% | 100% | 5 | 6 | 25 min |
| Slovakia | DanubeHIS / ICPDR | 6 | 0% | 0% | 5 | 6 | 27 h |
| Bosnia and Herzegovina | DanubeHIS / ICPDR | 3 | 67% | 67% | 1 | 2 | 3 h |
| Russia | Dartmouth Flood Observatory | 3 | 0% | 0% | 3 | 0 | 29 h |
| Iraq | Dartmouth Flood Observatory | 2 | 0% | 0% | 2 | 0 | 29 h |
| Syria | Dartmouth Flood Observatory | 1 | 0% | 0% | 1 | 0 | 29 h |
| Field | Our API | Publisher | Model, dataset & feed | Confidence | Updates | Read this first |
|---|---|---|---|---|---|---|
| Continental river status (percentile vs own record) | /api/continental | GloFAS v4 via Open-Meteo | Derived here | daily, from the stored record | Scored against the point's own day-of-year climatology, built here from the complete years the store actually holds — the depth is published with every percentile and deepens as the backfill lands. At least five complete years and 100 observations in each seasonal pool are required; otherwise the point reports as awaiting-backfill and stays out of the totals rather than counting as normal. | |
| Continental region rollups | /api/continental | GloFAS v4 via Open-Meteo | Derived here | daily, with the points beneath them | A region's median and low/high counts cover only scored points: points the backfill has not reached are excluded from the totals as awaiting-backfill, and a coordinate that reads suspiciously like it missed its river is dropped from the rollup while it is re-checked. | |
| Flow & rain percentiles vs own record (Statistics) | /api/pulse | GloFAS v4 + ERA5 via Open-Meteo | Derived here | daily, from stored climatology (live pull when storage is cold) | Each day is scored as a midrank percentile within a pool of the same calendar day ±10 days across the whole record. The served flow record begins in 1997 — the API accepts 1984 but returns no discharge before that — while the rain pools reach back to 1984; at the record edges percentiles are quantised by however many samples a calendar day has. GloFAS is a model, not a gauge. | |
| Days below p10 / year-clock envelope (Statistics) | /api/pulse | GloFAS v4 via Open-Meteo | Derived here | daily, with the percentile strips | The count is over the trailing 365 days, and 36 is the expected number in a normal year — read it against that baseline, not against zero. The clock's envelope is drawn only from a completed climatology; a basin whose backfill is still running shows no envelope rather than a partial one. | |
| Model low-flow comparison (below P10 / P10–P20 / at or above P20) | /api/flow | Derived from stored GloFAS climatology | Derived here | recomputed when a basin gains a complete year | Monthly P10/P20 boundaries for modeled discharge come only from each model cell's stored record. A basin whose backfill has not completed is left unscored. These model percentiles are not Q355, Q364, or a national official drought assessment. | |
| Live sensor network coverage & freshness | /api/gauges?view=summary | CHMI, PEGELONLINE/WSV, DanubeHIS/ICPDR, Hub’Eau/Vigicrues, Environment Agency, IMGW-PIB, SAIH Ebro/CHE, ARPAE, FOEN/BAFU, SMHI, OPW, Syke, LHMT, ARSO and Rijkswaterstaat |
| Derived here | half-hourly ingest | Reporting shares are network health, not water status. A provider that failed on a load reads as zero, and the failure is printed next to it. |
| Ingest & storage health | /api/health | This service's own ingest ledger and row counts in D1 | computed here | Derived here | computed per request | Job recency and row counts, not data validation — a job can run on time and store wrong values without tripping anything here. The yield alert only catches a parser whose recognised-row count collapses, the usual sign of quietly changed upstream markup. |
| River discharge (model cells) | /api/flow | GloFAS v4 via Open-Meteo | Modelled | daily | 5 km model cells, not physical gauges. | |
| Czech gauge discharge & water level | /api/czech-gauges | CHMI | Measured | 10 minutes to hourly, varies by station | Current values are parsed from CHMI's live page: they publish current data only as one file per station, so there is no bulk JSON alternative. | |
| Czech drought & flood band | /api/czech-gauges | CHMI Open Data (meta3.json) | Derived here | thresholds change rarely; readings every 10–60 minutes | The thresholds are CHMI's published DRYQ and SPA1–3 for that profile; the comparison of each reading against them is computed here, not taken from a status label scraped off a page. The two disagree on about a dozen stations. | |
| Czech gauge history | /api/czech-gauge-series | CHMI Open Data | Measured | daily validated, plus operational samples | Validated daily values and operational samples are mixed in one series. | |
| German gauge level, flow, datum & water temperature | /api/gauges | PEGELONLINE / WSV | Measured | 15 minutes to hourly | Only 14 of 73 Elbe stations publish discharge; most publish level only. | |
| Danube main-stem gauges | /api/gauges | DanubeHIS / ICPDR | Measured | latest values contributed by participating national services | This is the full main-stem set currently exchanged through DanubeHIS, not a claim that every country publishes every national gauge there. Co-located German copies are excluded because the app already ingests PEGELONLINE directly; German DanubeHIS stations without a direct counterpart are retained. | |
| French & English gauges | /api/gauges | Hub'Eau / Vigicrues and the Environment Agency | Measured | 15 minutes to hourly | — | |
| Polish, Ebro & Po gauges | /api/gauges | IMGW-PIB, SAIH Ebro / CHE and ARPAE Emilia-Romagna | Measured | provider real-time feeds | ARPAE water level is an unvalidated real-time observation. Its separate 10-day instantaneous-discharge product is calculated from those levels and rating curves, may be revised, and is shown only for stations present in that product; missing discharge is never inferred. | |
| Reservoir level & outflow | /api/czech-reservoirs | Povodí basin authorities (PVL, PLA, PMO, POH, POD) | Measured | 10 minutes to hourly | Operators publish without warranty; the feed intermittently returns partial results. | |
| Reservoir stored volume, capacity, inflow & flood room | /api/reservoir-volumes | Povodí basin authorities — Prehled.aspx and Objemy.aspx | Measured | hourly | Conservation pool split into filled and free; not every dam reports pools. | |
| Reservoir satellite surface area | /api/reservoirs | Global Water Watch | Measured | per satellite pass, can lag weeks | Surface area is not storage fill, dam safety or gate state. | |
| Basin rainfall & year-on-year | /api/precipitation | Open-Meteo (ERA5 archive + forecast) | Modelled | daily | — | |
| River kilometres & bed elevation | /api/czech-gauges, /api/gauges | National station registers and published gauge datums | Reference | static | Czech kilometres run from the sea, German from the state border; both are converted to one axis here. | |
| Reach power (ρ·g·Q·Δh) | computed in the browser | Derived from measured discharge and surveyed elevation | computed here | Derived here | with each reading | Gravitational power carried by the flow, not metered generation. A floor: reaches without a discharge reading contribute nothing. |
| Nuclear plant water use | static reference in app/lib/nuclear-plants.ts | Operator and IAEA PRIS capacities; cooling coefficients from published reviews | Derived here | static | Estimated from capacity and cooling type. No operator publishes live abstraction; treat as order-of-magnitude, not as a permit figure. | |
| French nuclear unit availability | /api/nuclear-status | EDF Open Data | Operator reported | intraday | Available capacity is not metered generation. A generic environmental notice is shown as reported but is classified as water-related only when EDF explicitly names water temperature or low river flow. | |
| European nuclear unit generation | /api/nuclear-status | Fraunhofer ISE Energy-Charts, primarily from ENTSO-E | Operator reported | intraday where the national publisher reports | Actual electricity generation is not declared availability. Low or zero output is never classified as an outage, drought curtailment or water-related event without a separate explicit operator notice. | |
| River restoration projects | static reference in app/lib/restoration-projects.ts | Project pages from Climate-ADAPT, RESTORE, Dam Removal Europe, LIFE, IUCN and national reporting | Reference | static | Hand-compiled, and a curated register rather than a census — 40 projects across 28 countries, against thousands of works Europe has actually carried out. Scale figures are each cited to the page they were read from and are not comparable between entries: the register mixes channel kilometres, hectares, cost and barrier counts. Map markers on linear projects are indicative reach markers, not site boundaries, and only 12 of the 40 are taken from a published coordinate. | |
| Commercial navigation threshold | static reference | Indicative planning figure | Reference | static | Navigability is governed by fairway depth, not discharge. The authoritative source is the WSV fairway bulletin. |
| Station | River | GPS | Capacity | Cooling | Status | Est. withdrawal | Est. consumption |
|---|---|---|---|---|---|---|---|
| Temelín ČEZ · show on our map | Vltava | 49.1803, 14.3761 | 2,110 MWe | Cooling tower | 2.1–6.8 m³/s | 1.5–5.1 m³/s | |
| Dukovany ČEZ · show on our map | Jihlava | 49.0850, 16.1497 | 2,040 MWe | Cooling tower | 2.0–6.5 m³/s | 1.4–4.9 m³/s | |
| Brokdorf PreussenElektra · show on our map | Elbe | 53.8506, 9.3444 | 1,410 MWe | Once-through | shut down 2021 | — | — |
| Krümmel Vattenfall · show on our map | Elbe | 53.4097, 10.4092 | 1,346 MWe | Once-through | shut down 2011 | — | — |
| Brunsbüttel Vattenfall · show on our map | Elbe | 53.8914, 9.2011 | 771 MWe | Once-through | shut down 2011 | — | — |
| Stade PreussenElektra · show on our map | Elbe | 53.6289, 9.5350 | 630 MWe | Once-through | shut down 2003 | — | — |
| Bugey EDF · show on our map | Rhône | 45.7972, 5.2700 | 3,580 MWe | Once-through | 64.4–113.1 m³/s | 1.6–5.4 m³/s | |
| Saint-Alban EDF · show on our map | Rhône | 45.4047, 4.7558 | 2,670 MWe | Once-through | 93.5–160.2 m³/s | 0.5–1.6 m³/s | |
| Cruas EDF · show on our map | Rhône | 44.6339, 4.7539 | 3,660 MWe | Cooling tower | 3.7–11.7 m³/s | 2.6–8.8 m³/s | |
| Tricastin EDF · show on our map | Rhône | 44.3310, 4.7315 | 3,660 MWe | Once-through | 128.1–219.6 m³/s | 0.7–2.2 m³/s | |
| Chinon EDF · show on our map | Loire | 47.2306, 0.1706 | 3,620 MWe | Cooling tower | 3.6–11.6 m³/s | 2.5–8.7 m³/s | |
| Saint-Laurent EDF · show on our map | Loire | 47.7206, 1.5786 | 1,830 MWe | Once-through | 64.0–109.8 m³/s | 0.4–1.1 m³/s | |
| Dampierre EDF · show on our map | Loire | 47.7336, 2.5175 | 3,560 MWe | Cooling tower | 3.6–11.4 m³/s | 2.5–8.5 m³/s | |
| Belleville EDF · show on our map | Loire | 47.5097, 2.8750 | 2,620 MWe | Cooling tower | 2.6–8.4 m³/s | 1.8–6.3 m³/s | |
| Civaux EDF · show on our map | Vienne | 46.4561, 0.6542 | 2,990 MWe | Cooling tower | 3.0–9.6 m³/s | 2.1–7.2 m³/s | |
| Golfech EDF · show on our map | Garonne | 44.1111, 0.8403 | 2,620 MWe | Cooling tower | 2.6–8.4 m³/s | 1.8–6.3 m³/s | |
| Cattenom EDF · show on our map | Moselle | 49.4158, 6.2181 | 5,200 MWe | Cooling tower | 5.2–16.6 m³/s | 3.6–12.5 m³/s | |
| Chooz EDF · show on our map | Meuse | 50.0900, 4.7906 | 3,000 MWe | Cooling tower | 3.0–9.6 m³/s | 2.1–7.2 m³/s | |
| Nogent EDF · show on our map | Seine | 48.5161, 3.5178 | 2,620 MWe | Cooling tower | 2.6–8.4 m³/s | 1.8–6.3 m³/s | |
| Blayais EDF · show on our map | Gironde | 45.2561, -0.6917 | 3,640 MWe | Once-through | 127.4–218.4 m³/s | 0.7–2.2 m³/s | |
| Fessenheim EDF · show on our map | Rhin | 47.9036, 7.5625 | 1,760 MWe | Once-through | shut down 2020 | — | — |
| Beznau Axpo · show on our map | Aare | 47.5522, 8.2278 | 730 MWe | Once-through | 25.6–43.8 m³/s | 0.1–0.4 m³/s | |
| Gösgen KKG · show on our map | Aare | 47.3658, 7.9689 | 1,010 MWe | Cooling tower | 1.0–3.2 m³/s | 0.7–2.4 m³/s | |
| Leibstadt KKL · show on our map | Rhein | 47.6013, 8.1837 | 1,245 MWe | Cooling tower | 1.2–4.0 m³/s | 0.9–3.0 m³/s | |
| Tihange Engie Electrabel · show on our map | Meuse | 50.5328, 5.2756 | 1,030 MWe | Cooling tower | 1.0–3.3 m³/s | 0.7–2.5 m³/s | |
| Almaraz CNAT · show on our map | Tajo | 39.8081, -5.6969 | 2,017 MWe | Cooling tower | 2.0–6.5 m³/s | 1.4–4.8 m³/s | |
| Ascó ANAV · show on our map | Ebro | 41.2000, 0.5694 | 1,992 MWe | Cooling tower | 2.0–6.4 m³/s | 1.4–4.8 m³/s | |
| Cofrentes Iberdrola · show on our map | Júcar | 39.2167, -1.0500 | 1,064 MWe | Cooling tower | 1.1–3.4 m³/s | 0.7–2.6 m³/s | |
| Trillo CNAT · show on our map | Tajo | 40.7014, -2.6222 | 1,003 MWe | Cooling tower | 1.0–3.2 m³/s | 0.7–2.4 m³/s | |
| Paks MVM Paksi Atomerőmű · show on our map | Duna | 46.5725, 18.8542 | 1,889 MWe | Once-through | 66.1–113.3 m³/s | 0.4–1.1 m³/s | |
| Cernavodă Nuclearelectrica · show on our map | Dunăre | 44.3224, 28.0573 | 1,300 MWe | Once-through | 45.5–78.0 m³/s | 0.3–0.8 m³/s | |
| Kozloduy Kozloduy NPP · show on our map | Dunav | 43.7461, 23.7705 | 2,006 MWe | Once-through | 70.2–120.4 m³/s | 0.4–1.2 m³/s | |
| Jaslovské Bohunice Slovenské elektrárne · show on our map | Váh | 48.4944, 17.6806 | 943 MWe | Cooling tower | 0.9–3.0 m³/s | 0.7–2.3 m³/s | |
| Mochovce Slovenské elektrárne · show on our map | Hron | 48.2639, 18.4569 | 1,370 MWe | Cooling tower | 1.4–4.4 m³/s | 1.0–3.3 m³/s | |
| Krško NEK · show on our map | Sava | 45.9384, 15.5155 | 688 MWe | Once-through | 12.4–21.7 m³/s | 0.3–1.0 m³/s | |
| Isar 2 PreussenElektra · show on our map | Isar | 48.6056, 12.2931 | 1,410 MWe | Cooling tower | shut down 2023 | — | — |
| Emsland RWE · show on our map | Ems | 52.4742, 7.3179 | 1,335 MWe | Cooling tower | shut down 2023 | — | — |
| Neckarwestheim 2 EnBW · show on our map | Neckar | 49.0411, 9.1750 | 1,310 MWe | Cooling tower | shut down 2023 | — | — |
Withdrawal is what passes through the condensers; consumption is what does not come back, lost to evaporation. A once-through station moves enormous volumes and returns nearly all of it several degrees warmer; a cooling tower takes far less but evaporates most of what it takes. These are ranges estimated from capacity and cooling design, not metered abstraction — no operator here publishes a live figure, and the published envelopes are wide. Where an estimate approaches or exceeds a river’s own discharge, the station is running on regulated reservoir release rather than the natural stream: Dukovany draws from Mohelno for exactly that reason. This comparison is not a power-output percentage and never triggers a water-curtailment badge. That badge requires a dated primary source confirming both output below 50% and water as the cause. Coordinates are site centroids.
Registry last reviewed 2026-08-08. A provenance table can drift from the code like any other documentation; this date is when every row above was last checked against the endpoint that serves it.