RiverData.org - Rivers, gauges and reservoirs

· RiverData.org

8 min read Original article ↗

RiverData

The state of Europe’s rivers

Explore river flows across Europe, follow local gauges, and see how today compares with the past.

River flows across Europe

101 rivers · GloFAS model · 2026-09-06

Ayeyawady at Mandalay - suspectAyeyawady at Pyay - suspectThanlwin at Hpa-an - suspectDokhtawady at Hsipaw - suspectDokhtawady at Yeywa - suspectDokhtawady at Myitnge - suspectMississippi River at Vicksburg - suspectRed River at Alexandria - suspectRio Grande at El Paso - suspectSnake River at Hells Canyon - suspectTennessee River at Savannah - suspectSacramento River at Freeport - suspectRhine at Basel - 0th percentileRhine at Mainz - 0th percentileRhine at Cologne - 2th percentileRhine at Lobith - 12th percentileDanube at Regensburg - 0th percentileDanube at Vienna - 0th percentileDanube at Budapest - 0th percentileDanube at Belgrade - 0th percentileDanube at Delta - 0th percentilePo at Turin - 2th percentilePo at Piacenza - 44th percentilePo at Ferrara - 37th percentileAdige at Verona - 0th percentileTiber at Rome - 2th percentileRhône at Geneva - 48th percentileRhône at Lyon - 42th percentileRhône at Arles - 35th percentileEbro at Logroño - 1th percentileEbro at Zaragoza - 0th percentileEbro at Tortosa - 1th percentileElbe at Dresden - 19th percentileElbe at Magdeburg - 28th percentileElbe at Hamburg - 30th percentileVistula at Kraków - 13th percentileVistula at Warsaw - 18th percentileVistula at Toruń - 28th percentileVistula at Gdańsk delta - 37th percentileLoire at Orléans - 64th percentileLoire at Tours - 69th percentileLoire at Nantes - 48th percentileOder at Racibórz - 5th percentileOder at Wrocław - 14th percentileOder at Frankfurt (Oder) - 37th percentileOder at Szczecin - 43th percentileSeine at Troyes - 21th percentileSeine at Paris - 21th percentileSeine at Rouen - 34th percentileGaronne at Toulouse - 16th percentileGaronne at Tonneins - 20th percentileGaronne at Bordeaux - 21th percentileDouro at Zamora - 71th percentileDouro at Peso da Régua - 81th percentileDouro at Porto - 80th percentileTagus at Toledo - 32th percentileTagus at Alcántara - 85th percentileTagus at Vila Franca de Xira - 83th percentileWeser at Hann. Münden - 46th percentileWeser at Minden - 48th percentileWeser at Bremen - 48th percentileGöta älv at Vänersborg - 25th percentileGöta älv at Lilla Edet - 21th percentileGöta älv at Gothenburg - 21th percentileThames at Oxford - 24th percentileThames at Reading - 34th percentileThames at Kingston - 38th percentileNemunas at Druskininkai - 47th percentileNemunas at Kaunas - 73th percentileNemunas at Sovetsk - 92th percentileShannon at Carrick-on-Shannon - 27th percentileShannon at Athlone - 19th percentileShannon at Limerick - 22th percentileEuphrates at Keban - 0th percentileEuphrates at Birecik - 65th percentileEuphrates at Deir ez-Zor - 90th percentileEuphrates at Hīt - 95th percentileEuphrates at Nasiriyah - 59th percentileAyeyawady at Myitkyina - 19th percentileAyeyawady at Nyaung-U - 84th percentileThanlwin at Hpasawng - 79th percentileGuadalquivir at Córdoba - 88th percentileGuadalquivir at Seville - 85th percentileGuadiana at Badajoz - 0th percentileGuadiana at Mértola - 86th percentileMinho at Ourense - 47th percentileJúcar at Cullera - 50th percentileSegura at Murcia - 25th percentileMondego at Coimbra - 90th percentileSado at Alcácer do Sal - 76th percentileMeuse at Liège - 41th percentileMeuse at Venlo - 45th percentileScheldt at Antwerp - 38th percentileSaône at Mâcon - 52th percentileDurance at Cavaillon - 5th percentileAllier at Moulins - 34th percentileVienne at Chauvigny - 11th percentileDordogne at Bergerac - 33th percentileCharente at Saintes - 39th percentileSomme at Abbeville - 6th percentileSevern at Worcester - 52th percentileSevern at Gloucester - 54th percentileTrent at Nottingham - 90th percentileYorkshire Ouse at York - 21th percentileTay at Perth - 57th percentileClyde at Glasgow - 59th percentileSpey at Fochabers - 58th percentileAare at Bern - 5th percentileMain at Frankfurt - 21th percentileNeckar at Heidelberg - 20th percentileMoselle at Trier - 39th percentileInn at Passau - 0th percentileVltava at Prague - 0th percentileJihlava at Mohelno - 0th percentileSaale at Halle - 45th percentileHavel at Potsdam - 31th percentileWarta at Poznań - 18th percentileBug at Wyszków - 27th percentileEms at Meppen - 36th percentileIsar at Landshut - 0th percentileTicino at Pavia - 62th percentileAdda at Lodi - 21th percentilePiave at Belluno - 1th percentileArno at Florence - 1th percentileArno at Pisa - 3th percentileBrenta at Bassano del Grappa - 8th percentileReno at Cento - 9th percentileGlomma at Elverum - 52th percentileGlomma at Fredrikstad - 53th percentileDalälven at Älvkarleby - 0th percentileKemijoki at Rovaniemi - 98th percentileOulujoki at Oulu - 88th percentileDaugava at Daugavpils - 80th percentileDaugava at Salaspils - 89th percentileVuoksi at Imatra - 0th percentileTornionjoki at Karunki - 98th percentileNarva at Narva - 81th percentileLuleälven at Boden - 100th percentileUmeälven at Umeå - 81th percentileÅngermanälven at Sollefteå - 70th percentileKymijoki at Kotka - 36th percentileDrammenselva at Drammen - 39th percentileTisza at Szeged - 0th percentileDrava at Osijek - 0th percentileSava at Zagreb - 10th percentileSava at Sremska Mitrovica - 0th percentileVáh at Hlohovec - 0th percentileHron at Brehy - 0th percentileGreat Morava at Ćuprija - 0th percentileOlt at Slatina - 32th percentileSiret at Galați - 55th percentilePrut at Ungheni - 19th percentileNeretva at Mostar - 0th percentileVardar at Skopje - 17th percentileDrin at Shkodër - 0th percentileMaritsa at Plovdiv - 46th percentileMaritsa at Edirne - 46th percentileStruma/Strymon at Serres - 69th percentileMesta/Nestos at Xanthi - 80th percentileAliakmon at Veria - 61th percentileAchelous at Agrinio - 4th percentileDnieper at Kyiv - 55th percentileDnieper at Kremenchuk - 5th percentileDnieper at Kherson - 0th percentileDniester at Mohyliv-Podilskyi - 0th percentileSouthern Bug at Vinnytsia - 41th percentileVolga at Lower Volga - 100th percentileVolga at Volga Delta - 92th percentileDon at Lower Don - 78th percentileDon at Rostov-on-Don - 79th percentileNorthern Dvina at Kotlas - 100th percentileNorthern Dvina at Arkhangelsk - 100th percentilePechora at Pechora - 89th percentilePechora at Oksino - 81th percentileNeva at Saint Petersburg - 3th percentileUral at Orenburg - 72th percentileUral at Atyrau - 74th percentileKuban at Krasnodar - 57th percentileMissouri River at Hermann - 0th percentileOhio River at Metropolis - 60th percentileArkansas River at Little Rock - 0th percentileColumbia River at The Dalles - 57th percentileColorado River at Lees Ferry - 0th percentileYukon River at Eagle - 50th percentilePlatte River at Louisville - 36th percentile

Exceptionally lowp0-10Below normalp10-25Normal rangep25-75Above normalp75-90Exceptionally highp90-100

Rhine at Lobith, Netherlands: Below normal, 12th percentile of its own record

How to read the map

Open methodology

Rhine at Lobith

A watch point's latest GloFAS discharge is located on its stored quantile grid for the same seasonal pool. Each river then uses its outlet point when scored, or the mean of its scored points when the outlet is unavailable.

Formulapoint p = linear position of Q between stored percentile-grid values; river p = scored outlet p, else mean(scored point p)

Current discharge
1,093 m³/s

2026-09-06

Seasonal median
1,482 m³/s

p50 of the same seasonal pool

Percentile result
p12

Below normal

Reference depth
13 years

2013-2025

Published resultRhine at Lobith, Netherlands: Below normal, 12th percentile of its own record

Data & provenanceGloFAS v4 daily river discharge via Open-Meteo; the percentile grid is built here from complete stored years. Open this model coordinate

LimitAt least five complete years and enough observations in the seasonal pools are required. Unscored, stale and suspect points stay out of every denominator rather than being treated as normal.

How are Europe’s rivers doing?

Model data: 06 Sept

41 of 101 scored European rivers are below their normal range.

29 have exceptionally low flow and 6 have exceptionally high flow for this time of year.

How these river conditions are calculated

Open methodology

River verdict

Each model point is placed in its own seasonal record. A river uses its scored outlet point when available; otherwise it uses the mean percentile of its scored points. The headline then counts rivers, so a river with several watch points still has one vote.

Formulariver p = outlet p, else mean(scored point p); exceptional signal if rivers below P10 ÷ scored ≥ 20%; else below-normal if rivers below P25 ÷ scored ≥ 34%; else within range

Scored rivers
101 / 101

one result per river

Below p25
41 / 101

41% below normal

Below p10
29 / 101

29% · exceptional-signal headline at 20%

Median river
p36

oldest included day 2026-09-06

Published result41 of 101 scored European rivers are below their normal range.

Data & provenanceGloFAS v4 river model only · percentile of each watch point's own record, same day of year · 101 of 101 rivers and 158 of 158 points scored · as of 06 Sept. GloFAS v4 discharge via Open-Meteo. Point scores use only the stored model record; official gauges and reservoir readings are reported elsewhere and are not blended into this verdict. Open the source registry

Limit0 rivers without a score are excluded, not counted as normal.

Major rivers at a glance

Flow at each basin outlet, compared with its seasonal median.

Explore statistics

Basin flow data is currently unavailable.

What's new

A new homepage for RiverData

The homepage now starts with the river map. River details sit beside it, with the status summary and basin comparison below.

A redesigned footer and native arrow icons make navigation clearer on desktop, tablet and mobile.

Slapy and Vltava reservoir updates

Live reservoir readings and history now load independently, with clearer observation times and usable storage figures. The river reservoir table no longer duplicates dams, and available reservoir data stays visible while river gauges load.

Dated drought context explains Slapy's role in supporting downstream flows. Instantaneous zero outflow is distinguished from daily releases.

Data coverage & operationsLive feeds, stored history and collection status

Data serviceLive fallbackpersistent database is not attached

Official gauges live18,93813,937 reported within 6 h · by provider

Stored historyNot connectedpercentiles and backfills require storage

Reservoir sourcesLive onlybasin operators + Global Water Watch

This deployment has no persistent database attached. Live upstream data can still render, but scheduled ingestion, stored histories and archive counts cannot run.

Map layersexpand

major river · clickable tributary / branch · clickable selected downstream path final outlet latest official Q European model comparison operating nuclear plant core reservoirEurope · 06 Sept 2026