574 rivers and streams in Canton Zurich – and why almost one kilometre in four flows underground

Key takeaway
The city of Zurich is crossed by the Limmat and the Sihl, which meet at Platzspitz; the Glatt runs along the north-eastern edge of the city. Across the canton, the official network lists 3,823 numbered watercourses. 574 flow in the open for at least one kilometre, and 37 are of cantonal or regional importance. The longest watercourse in the canton is the Töss at 57.4 km.
Brown trout over pebbles in a clear woodland stream, shot half below and half above the waterline; large butterbur leaves and moss on the bank, a small waterfall behind
Jump to the River Finder Canton Zurich

Everyone knows the Limmat and the Sihl. Canton Zurich's official water network counts 3,473 kilometres of watercourses, 845 of them piped underground. Here are all 574 rivers and streams that flow in the open for at least one kilometre – with municipalities, length and the beats where you can fish with a day ticket.

· Data: official water network of Canton Zurich, as of September 2026
WhatsApp
574
rivers & streams
at least 1 km open
3,473 km
water network
845 km of it piped
37
of cantonal importance
official classification
23
day-ticket beats
out of 289 fishing beats

🌊 Rivers Zurich: the 37 watercourses of cantonal importance

Two rivers flow through the city of Zurich: the Limmat, which leaves the lake at Bürkliplatz, and the Sihl, which joins the Limmat at Platzspitz. The Glatt runs along the north-eastern edge of the city. That is the short answer. The long one lies in the canton's water network: 574 rivers and streams, and 24% of the network runs underground in pipes.

The Office for Waste, Water, Energy and Air (AWEL) manages 4,631 watercourse numbers totalling 3,473 kilometres. 3,823 are ordinary watercourses; the rest are relief channels, original branches and artificial channels. The canton classifies 37 watercourses as being of cantonal or regional importance – they are in the table.

How we count: the definition behind the number
  1. The official network lists 3,823 ordinary watercourses (excluding relief and artificial channels).
  2. 859 of them are at least 1 kilometre long within Canton Zurich.
  3. 574 flow in the open for at least 1 kilometre. That is the list on this page and in the river finder.

There is no single “number of rivers in Canton Zurich”: every figure depends on what counts as a river. We publish the definition so the number can be checked. All lengths refer to Canton Zurich, not to the whole river.

The 37 watercourses of cantonal or regional importance
WatercourseLength in cantonof which openflows through🎣 Day ticket
Töss57.4 km56.5 kmWinterthur, Fischenthal, Baumaavailable
Glatt56.6 km54.6 kmBäretswil, Wetzikon (ZH), Usteravailable
Rhein41.0 km40.9 kmRheinau, Eglisau, Flaachavailable
Sihl37.3 km35.5 kmHorgen, Zürich, Wädenswilavailable
Reppisch26.9 km26.0 kmStallikon, Dietikon, Birmensdorf (ZH)available
Thur22.2 km21.8 kmAndelfingen, Flaach, Altikonavailable
Kempt21.8 km20.8 kmHittnau, Illnau-Effretikon, Fehraltorf–
Eulach21.3 km19.1 kmWinterthur, Elgg, Elsau–
Limmat18.2 km17.7 kmZürich, Dietikon, Schlierenavailable
Jonen17.4 km16.0 kmAffoltern am Albis, Hausen am Albis, Rifferswil–
Jona14.9 km14.3 kmWald (ZH), Rüti (ZH), Hinwil–
Altbach (Bassersdorf)14.7 km12.1 kmBassersdorf, Kloten, Nürensdorf–
Aabach (Grüningen)12.4 km12.1 kmGrüningen, Bubikon, Mönchaltorf–
Haselbach12.0 km9.9 kmMaschwanden, Mettmenstetten, Knonau–
Mederbach11.9 km9.5 kmMarthalen, Kleinandelfingen, Trüllikon–
Landbach10.5 km8.6 kmRafz, Wil (ZH), Hüntwangen–
Dürrenbach (Volketswil)10.4 km6.4 kmVolketswil, Wangen-Brüttisellen, Dübendorf–
Näfbach10.3 km9.6 kmNeftenbach, Seuzach, Winterthur–
Steinenbach10.0 km9.9 kmBauma, Wila, Turbenthal–
Wildbach (Hinwil)10.0 km9.5 kmHinwil, Wetzikon (ZH)–
Furtbach (Regensdorf)9.9 km9.4 kmRegensdorf, Buchs (ZH), Dänikon–
Wildbach (Oberembrach)9.8 km9.5 kmOberembrach, Embrach, Rorbas–
Schwarzbach (Ellikon an der Thur)9.2 km7.4 kmEllikon an der Thur, Dinhard, Rickenbach (ZH)–
Lotzenbach8.5 km7.4 kmFlaach, Buch am Irchel, Berg am Irchel–
Fischbach (Bonstetten)7.6 km6.4 kmBonstetten, Birmensdorf (ZH), Wettswil am Albis–
Fischbach (Steinmaur)7.5 km7.0 kmSteinmaur, Niederglatt, Dielsdorf–
Chimlibach6.2 km4.1 kmVolketswil, Schwerzenbach, Fällandenavailable
Chatzenbach (Turbenthal)5.6 km5.2 kmTurbenthal–
Surb5.6 km4.9 kmNiederweningen, Schöfflisdorf, Oberweningen–
Reuss5.3 km5.3 kmOttenbach, Obfelden–
Kefikerbach4.9 km3.0 kmWiesendangen, Ellikon an der Thur–
Mülibach (Stammheim)4.8 km3.0 kmStammheim–
Thur-Binnenkanal4.5 km4.5 kmAltikon, Thalheim an der Thur, Ossingenavailable
Altbach (Dietlikon)4.5 km3.1 kmDietlikon, Wangen-Brüttisellen, Bassersdorf–
Lorze3.3 km3.3 kmMaschwanden, Obfelden–
Lützelmurg1.7 km1.7 kmElgg, Hagenbuch–
Hinderi Töss1.3 km1.3 kmWald (ZH), Fischenthal–
Context
The Rhine forms the canton's northern border for 41.0 km before heading on to Basel as one of the great rivers of Switzerland. The Thur crosses the Weinland for its last 22.2 km. And in the official register the Glatt is not only called Glatt: its watercourse begins as the Aabach in the Zurich Oberland and so reaches 56.6 km in the canton, although the Glatt itself measures 35.6 km from Lake Greifensee.
24%

of watercourses in Canton Zurich are piped underground: 845 of 3,473 km (ConvivaPlus analysis of the official water network).

Definition

Piped (eingedolt)

A piped watercourse flows through a pipe or closed culvert underground, mostly beneath roads and built-up areas. The official network records every stretch as "open" or "piped".

🕳️ ConvivaPlus Buried Stream Index: where the stream runs underground

Top of the ConvivaPlus Buried Stream Index is Trüllikon, where 66.9% of the watercourse network is piped underground. The most piped kilometres are in Zürich, at 48.8 km. As a share, though, that only ranks 40 of 112.

How we calculate it: for each municipality we count the entire public watercourse network from the official data, assigned to the municipal area by points every 50 metres, and divide the piped metres by the network. The ranking covers the 112 of 160 municipalities with at least 10 km of network, because below that a single culvert can tip the share. Exactly who comes first depends on that threshold; the pattern does not: rural municipalities lead, not Zurich or Winterthur.

Piping a stream underground is banned in Switzerland: Art. 38 of the Waters Protection Act, which has no official English version, prohibits covering or culverting watercourses. It has been in force since 1 November 1992. The authorities may only grant exceptions for flood relief and irrigation channels, transport crossings, agricultural and forestry access roads and small drainage ditches that carry water only at times. Existing culverts may also be replaced where an open watercourse is not possible or would cause serious disadvantages for farming. What Art. 38 does not require is reopening streams that were already piped. That is the job of revitalisation, which Art. 38a has required of the cantons since 2011. So despite the ban, 845 kilometres in Canton Zurich still run through pipes.

The ten municipalities with the highest share of buried streams
RankMunicipalityNetworkpipedShare
1Trüllikon10.9 km7.3 km66.9%
2Dinhard12.2 km8.0 km65.4%
3Stadel11.7 km7.1 km61.1%
4Hagenbuch10.5 km6.0 km56.9%
5Gossau (ZH)33.8 km18.5 km54.8%
6Volketswil13.9 km7.6 km54.5%
7Bülach15.4 km8.3 km53.9%
8Stammheim27.0 km14.1 km52.2%
9Wiesendangen29.4 km14.4 km48.9%
10Regensdorf20.3 km9.8 km48.0%
Share piped underground: the leaders against the two cities
1. Trüllikon66.9%
2. Dinhard65.4%
3. Stadel61.1%
4. Hagenbuch56.9%
5. Gossau (ZH)54.8%
40. Zürich31.3%
54. Winterthur25.8%
🕳️ Buried Stream Index: municipality → share underground
ConvivaPlus.ch

Zürich: 31.3% piped · 48.8 of 156.1 km · rank 40 of 112

💧 Limmat: Zurich's city river from Bürkliplatz to Dietikon

Of the Limmat's 36 kilometres, only 18.2 belong to Canton Zurich. The other half runs through Aargau to the Aare, and yet it drives two power stations in the middle of Zurich.

It leaves the lake at Bürkliplatz and flows through the old town past the Fraumünster, the Grossmünster and the town hall. At Platzspitz it takes in the Sihl, and the Letten and Höngg power stations use its drop right in the city.

In summer the Limmat is the city's swimming pool: at the Oberer and Unterer Letten river baths and on the Werdinsel you drift for free. Below Zurich it calms down and flows past Fahr Abbey to Dietikon.

Fact file
  • · Total length: 36 km, from Lake Zurich to the Aare near Gebenstorf/Untersiggenthal (AG)
  • · In Canton Zurich: 18.2 km through 8 municipalities
  • · Drop: 78 metres between the lake and the Aare
  • · Main tributaries: Sihl (at Platzspitz) and Reppisch (at Dietikon)

🏔️ Sihl: the river under the main station

The Sihl runs beneath the 16 tracks of the main station, but only part of it belongs to Zurich: of its 69 kilometres, 37.3 lie in the canton, and its source on the Drusberg is in Canton Schwyz.

Right after the station it joins the Limmat at Platzspitz. It is the wilder of the two city rivers: after heavy rain it rises within hours.

The Sihl once carried the city's firewood: logs from the Sihlwald forest were floated down to Zurich. That forest is now the Wildnispark Zürich Sihlwald.

Fact file
  • · Total length: 69 km, source on the north-east slope of the Drusberg (SZ)
  • · In Canton Zurich: 37.3 km, from the Schwyz border to Platzspitz
  • · Catchment: about 344 km²
  • · Sihlsee: at 11 km² Switzerland's largest reservoir

🛡️ The Sihl–Lake Zurich relief tunnel

Up to CHF 6.7 billion: that is the damage Zurich would face if the Sihl burst its banks unprotected. To prevent it, the canton is building a tunnel from Langnau am Albis to Thalwil for about CHF 175 million, which diverts part of the Sihl straight into the lake during floods. It is expected to be needed roughly every 10 to 20 years.

Lengthabout 2 km
Inner diameter6.6 m
Costabout CHF 175 million
Construction startMarch 2022
Breakthrough26 November 2024
Completionexpected Q1 2027
Active from250 m³/s Sihl discharge
Protects up toflood peaks of 600 m³/s
Warning
August 2005 shows how close it can get: the Sihl carried 290 m³/s back then. The tunnel kicks in from 250 m³/s.

🌿 Glatt and Töss: the rivers of the Unterland and Winterthur

The Glatt leaves Lake Greifensee and flows through Dübendorf, Wallisellen and Opfikon to the Rhine at Rheinsfelden, about 36 km. Officially its upper course belongs to it: it rises as the Aabach in the Zurich Oberland, so the watercourse passes through 12+ municipalities.

With “Fil Bleu Glatt”, the canton and the cities of Dübendorf, Wallisellen, Zurich and Opfikon are upgrading the Glatt. Footpaths, cycle paths and new habitats are due by 2031, a continuous recreation area along the water by 2034.

The Töss rises in Canton St. Gallen near the Tössstock and joins the Rhine at Tössegg after about 60 km. Within Canton Zurich its 57.4 km watercourse is the longest of all. Its name probably comes from “tosen”, to roar.

Between Steg and Turbenthal the Töss seeps away after a few days without rain and its bed runs dry. Further downstream stood the Hard spinning mill of 1802, Switzerland's first factory.

Other rivers of cantonal importance

Reppisch (26.9 km in the canton)Rises as the Chrebsbach at Lake Türlen and joins the Limmat at Dietikon via the power station's tailrace. The historic Aumüli mill near Stallikon stands on it.
Eulach (21.3 km in the canton)Rises as the Farenbach north of the Schauenberg, crosses Winterthur and joins the Töss in Wülflingen.
Thur (22.2 km in the canton)Flows through the Zurich Weinland near Andelfingen and joins the Rhine at Flaach.

🗺️ Streams list: the 574 rivers and streams in Canton Zurich with at least 1 km open

From A for Aabach to Z: every watercourse in the canton that flows in the open for at least one kilometre. Names that occur more than once are shown with their main municipality – “Dorfbach” alone appears 18 times. The river finder shows length, municipalities and fishing beats for each entry. Matching streams to municipalities and beats is a ConvivaPlus analysis: in the official data, watercourses, municipal boundaries and fishing beats are three separate layers.

A (23)

Aabach (Grüningen) · Aabach (Oetwil am See) · Aabach (Wädenswil) · Abistbach · Aegertenbach (Horgen) · Aegertenbach (Küsnacht) · Aescherbach · Albisgüetlibach · Albisrieder Dorfbach · Allmendbach · Altbach (Bassersdorf) · Altbach (Dietlikon) · Alteggbach · Altenbach · Alter Ellikerbach · Anderbach · Anwandelbach · Arletsbach · Arsbach · Aschbach · Aspbach · Auholzgraben · Auslikerbach

Ä (6)

Ägetswilerbach · Ämerlibach · Ämeterbach · Ärgetenbach · Äuligraben · Äusserer Dollikerbach

B (36)

Bachgadenbach · Bachtobelbach · Bachtobelgraben (Seuzach) · Bachtobelgraben (Wiesendangen) · Balibach · Bäntalbach · Bärenbach · Bedenseebach · Berentalbach · Beugenbach · Binzikerrietkanal · Binzmühlebach · Birribodenbach · Blattenbach · Bolsternbach · Bombach · Brähenbach · Brandbach (Illnau-Effretikon) · Brandbach (Wädenswil) · Brandbach (Zürich) · Brandrütibach · Breitibach · Brüelbach (Illnau-Effretikon) · Brüelbach (Wallisellen) · Brunnenbach (Hinwil) · Brunnenbach (Maschwanden) · Brünnibach · Brüttenbach · Bsetzibach/Neuhusbach · Buebbach · Buechwaldbach · Buehalmbach · Büelbach (Adliswil) · Büelbach (Wald) · Bünisbach · Büntertöbelibach

C (33)

Chalenbach · Chälenbach · Chämibach (Neftenbach) · Chämibach (Turbenthal) · Chämmerlibach · Chämmeterbach · Chämptnerwaldbach · Chapfbach · Chatzenbach (Laufen-Uhwiesen) · Chatzenbach (Turbenthal) · Chatzentobelbach · Chilenbach · Chimlibach · Chindismülibach · Chirchtobelbach · Chlausbach · Chlusbach · Cholerbach · Choltobelbach · Chottenbach · Chräbsbach (Steinmaur) · Chräbsbach (Winterthur) · Chräbsenbach · Chrattenbach · Chrebsbach (Horgen) · Chrebsbach (Niederweningen) · Chrebsbach (Thalwil) · Chrebsschüsselibach · Chriesitobelbach · Chringelbach · Chrummbach · Chrüzlenbach · Chuesenbach

D (35)

Dachseggbächli · Dändlikerbach · Dättnauerbach · Dickbucherbach · Dickibach · Diebisbach · Dieterswilerbach · Diezikonerbach · Döltschibach · Dorfbach (Bachenbülach) · Dorfbach (Dällikon) · Dorfbach (Dättlikon) · Dorfbach (Hagenbuch) · Dorfbach (Küsnacht) · Dorfbach (Lufingen) · Dorfbach (Männedorf) · Dorfbach (Maur) · Dorfbach (Meilen) · Dorfbach (Mettmenstetten) · Dorfbach (Nürensdorf) · Dorfbach (Oetwil am See) · Dorfbach (Otelfingen) · Dorfbach (Stadel) · Dorfbach (Steinmaur) · Dorfbach (Weiningen) · Dorfbach (Winkel) · Dorfbach (Zürich) · Dorfbach Egg · Dorfbach Hinteregg · Dorfbach Neerach · Dorfbach Riedt · Düggelbach · Dunkelbach · Dürrenbach (Affoltern am Albis) · Dürrenbach (Volketswil)

E (7)

Eichbach · Eichhölzlibach · Eichtlenbach · Eichwistobelbach · Eierbach · Emmetbach · Eulach

F (24)

Falkentobelbach · Feienbächli · Feietbach · Feldenmasbach · Fellibach · Fischbach (Bonstetten) · Fischbach (Hinwil) · Fischbach (Steinmaur) · Fisibach · Fluechbach · Föhrenbach · Föhreneggbach · Fridgraben · Friesenbergbach · Früetobelbach · Fuchslochbach · Fulauer Tobelbach · Fürbach · Furtbach (Neftenbach) · Furtbach (Niederhasli) · Furtbach (Pfäffikon) · Furtbach (Regensdorf) · Furtbach (Turbenthal) · Furtbach (Wallisellen)

G (40)

Geerenbach · Geilikerbach · Gfängbach · Gfellholzbach · Ghöchbach · Giegenbach · Giessenbach (Bauma) · Giessenbach (Bubikon) · Giessenbach (Illnau-Effretikon) · Giessenbach (Turbenthal) · Giessengraben · Gigerbach · Girennestbach · Girstelbach · Glatt · Glatt Altlauf · Gockhuserbach · Goldbächli · Gontenbach (Adliswil), Waldibach (Langnau am Albis) · Gossauerbach · Grabibach · Grändelbach · Grenzbach · Grenzbach (Stäfa), Scheidbach (Männedorf) · Gripbach · Grossbach · Gruehaldenbach · Gruenholzbach · Grundbach (Stäfa) · Grundbach (Wald) · Grütbach · Gsteinbach · Gubelbächli · Guggerenbach · Guldilochbach · Gulmenbach · Guntenbach · Guschbach · Gwandgraben · Gyrhaldenbächli

H (54)

Haarbach · Habersaatenhaubächli · Habersaaterbach · Hapbach · Harberenbach · Hardbach · Haselbach · Haslenbach (Egg) · Haslenbach (Uetikon am See) · Haslibach · Hatwilerbächli · Heischer Dorfbach · Heiterholzbach (Hinwil), Wissenbach (Wald) · Hellbach (Illnau-Effretikon) · Hellbach (Lindau) · Helltobelbächli · Hertenbach · Heslibach · Heuelgraben · Hinderi Töss · Hindernordbach · Hinterbach · Hinterdorfbach · Hinterer Chrebsbach · Hinterholzbach · Hirslenbach · Hischwilerbach · Hochrütibach · Höcklerbach · Hofbach · Hoferbach · Hofibach · Hofnerbach · Hofstetterbach · Holderbach · Holenweidlibach · Höllbächli · Hölltobelbach · Horbenbach · Horisbach · Hornbach · Hörnentalbach · Hostbach · Huebbach (Thalheim an der Thur) · Huebbach (Wald) · Huebbach (Wila) · Huebwiesengraben · Hüenerbach · Hundschilenbach · Hüslenbach · Hüslibach · Hüttenbach · Hüttlibach · Hutzikerbach

I (4)

Innerer Dollikerbach · Innervollikerbach · Islenbach · Itelbach

J (6)

Jätbach · Jona · Jonen · Jörenbach · Juchbach · Jungholzbach

K (6)

Katzenbach · Kefikerbach · Kempt · Kiesbächli · Kolbenhofbach · Krebsbach

L (38)

Landbach · Ländenbach · Langenbach · Langenbächli · Langhaldenbach · Langwiesbach · Langwisbach · Lattenbach · Lättenbach (Ottenbach) · Lättenbach (Stallikon) · Läufebach · Laufenbach · Leebach · Leibach · Leimbach · Leisenbach · Lenzertobelbach · Lettenbach · Letzibach · Leuenbach · Lieburgerbach · Limmat · Lindauerbach · Lindenbach · Littibach · Lobenstelbach · Lochbach (Bauma) · Lochbach (Embrach) · Lochbach (Wald) · Lochbach (Wila) · Lochbrunnenbach · Loomattbach · Loorenbach · Lorenbach · Lorze · Lotzenbach · Lüssisbächli · Lützelmurg

M (32)

Mannenrainbach · Marchlenbach · Mattenbächli · Mederbach · Medikerbodenbach · Meilibach · Meralterbach · Mettlenbach · Mittlerer Chrebsbach · Mittlerer Hellbach · Moosbach (Affoltern am Albis) · Moosbach (Andelfingen) · Moosbach (Oberembrach) · Moosrütibach · Mostbach · Mötschenbach · Mühlebach · Mühlibach · Mülibach (Altikon) · Mülibach (Bauma) · Mülibach (Dachsen) · Mülibach (Hausen am Albis) · Mülibach (Richterswil) · Mülibach (Schlieren) · Mülibach (Stammheim) · Mülibach (Weiach) · Mülibach (Wildberg) · Mülibach (Winkel) · Mülitobelbach (Illnau-Effretikon) · Mülitobelbach (Russikon) · Müslibach (Buchs) · Müslibach (Herrliberg)

N (11)

Näfbach · Nänikerbach · Nebelbach · Neuer Breitwiesenkanal · Neuthalerbach · Nideltobelbach · Niederfeldbach · Niederweningerbach · Nordholzbach · Nübandholzbach · Nussbergerbach

O (9)

Obermattbach · Oberseener Dorfbach · Obertalerbach · Oberweningerbach · Oberwiesenbach · Obisbächli · Oerischwandbach · Ohringerbach · Orflenbach

P (3)

Pfaffenbrunnenbach · Possengraben · Püntenbach

Q (1)

Qualletbach

R (46)

Rällikerbach · Ramisbach · Ränggerbach · Ratzenhaldenbach · Rausenbach · Räzerenbach · Reidbach · Reinisbach · Reinsbergbach · Reppisch · Reuss · Rhein · Rheingraben · Rhynerbach · Riedgraben · Riedikerbach · Rietbach (Elgg) · Rietbach (Stammheim) · Rietbach (Turbenthal) · Rietgraben (Oberglatt) · Rietgraben (Truttikon) · Rietlibach · Ringwilerbach · Risbach · Ristallbach · Ritzlibach · Rohrbach (Buch am Irchel) · Rohrbach (Maur) · Roodbach · Rosentalbach · Rossbächli · Rossspaltibach · Rossweidbach · Rotenbach · Rötibach · Rousskanal · Ruebisbach · Rüeggenbach · Rüetschwilerbach · Rumisbergbach · Ruppentobelbach · Rüsselbach · Rütibach · Rütiwaldbächli · Rütschlibach · Rutzenbach

S (76)

Sackbach · Sacktobelbach · Sägelbach · Sagenbach (Hinwil) · Sagenbach (Wädenswil) · Sagentobelbach · Sagibach · Sarbentalbach · Schäflibach · Schattlibach · Schaugenbach · Schlegeltobelbach · Schliefenbächli · Schlierenbach · Schliifibach · Schlipfbach · Schluhbach · Schluhbächli · Schmittenbach (Fischenthal) · Schmittenbach (Stäfa) · Schmittenbach (Wald) · Schneitbach · Schüepbach · Schürbach (Adliswil) · Schürbach (Nürensdorf) · Schürlibach · Schwämmibach · Schwandenbächli · Schwändibach · Schwarzbach (Ellikon an der Thur) · Schwarzbach (Grüningen) · Schwarzbach (Hinwil) · Schwarzbach (Wil) · Schwarzbach (Zürich) · Schwarzenbach (Hittnau) · Schwarzenbach (Mettmenstetten) · Schwarzenbach (Otelfingen) · Schwarzenbach (Rifferswil) · Sechtbach · Seegraben · Seeligraben · Sennhüslibach · Sennhüttenbach · Sibletenbach · Sihl · Simeligraben · Singelenbach · Sonnenbach · Sonnentalbach · Spiessenhauerbach · Spitalerbach · Spitzgraben · Stammbach · Stampfenbach (Embrach) · Stampfenbach (Mettmenstetten) · Steichelbach · Steigbach (Weisslingen) · Steigbach (Winterthur) · Steinbach · Steinenbach · Steinereggbach · Steinstägenbach · Steintobelbach · Stierenweidbach · Stigelibach · Stockenbach · Stöckentobelbach · Stoffelbach · Storcheneggbach · Stosstobelbach · Stötzlibach · Striempelbach · Stumpbach · Sülibach · Sulzergraben · Surb

T (32)

Tägelbach · Talbach (Hausen am Albis) · Talbach (Schleinikon) · Taleggbach · Talgartenbächli · Talgraben · Tannereggbach · Teischlibach · Teufenbach · Thur · Thur-Binnenkanal · Tichelrütibach · Tobelbach (Birmensdorf) · Tobelbach (Dietikon) · Tobelbach (Langnau am Albis) · Tobelbach (Mettmenstetten) · Tobelbach (Neftenbach) · Tobelbach (Ottenbach) · Tobelbach (Russikon) · Tobelbach (Stammheim) · Tobelbuebenbach · Töbelibach · Tobelmülibach · Toggwilerbach · Tollenbach · Tomenrainbach · Tonnenbach · Torlentobelbach · Töss · Trüebenbach · Tüfbach · Tüfenbach

U (3)

Uelibächli · Uessiker Dorfbach · Uessiker Schulhausbach

V (4)

Vogelbach · Vogelsangbächli · Volkemerbach · Vollikerbach

W (38)

Walchibach · Waldbach · Walenbach · Wallikerbach · Waltensteiner Eulach · Wändhüslenbach · Wangnerbach · Wäschbach · Wehrenbach · Weidbach · Weidelbach · Weidlibach · Weierbach · Weiherbach · Welsikonerbach · Werrikerbach · Wigartenbach · Wildbach (Hinwil) · Wildbach (Oberembrach) · Wildebach · Wilenbach · Winzelenbach · Wisbach · Wisenbach (Hettlingen) · Wisenbach (Wiesendangen) · Wissenbach (Bäretswil) · Wissenbach (Hedingen) · Wissenbach (Hinwil) · Wissenbach (Weisslingen) · Wisspeterbach · Witikonerbach · Wolfbach · Wolserbach · Worbgraben · Wöschbach · Wüeribach (Gossau) · Wüeribach (Horgen) · Wylbach

Z (7)

Zelgbach · Zellerbach · Zellerunterwaldbach · Zilbach · Zopfbach (Adliswil) · Zopfbach (Wädenswil) · Zweienbach

Limits of the list: municipalities are derived from points every 100 metres; a stream that touches a municipality for only a few metres may be missing there. The data come from the canton's water network, updated weekly.

🔢 How many streams? Why other numbers circulate

How many streams does Canton Zurich have? The correct answers range from 574 to 4,631. Taking the largest means counting watercourse numbers, not streams: they include flood relief channels, artificial channels and 2,964 watercourses shorter than one kilometre within the canton.

The chain of definitions: from the map to the list (official network, as of 16.09.2026)
  1. 42,137 line segments on the official map. These are records, not streams: one stream consists of many segments, because each carries its own attributes, such as open or culverted.
  2. 4,631 watercourse numbers: each number is one watercourse. They include flood relief channels, original branches and artificial channels.
  3. 3,823 of them are ordinary watercourses, type “Normalgewässer” in the official register.
  4. 859 of them are at least 1 kilometre long within the canton. The other 2,964 are shorter.
  5. 574 of them flow in the open for at least 1 kilometre. That is our list and the finder.

Length works the same way: Canton Zurich itself publishes four different figures for its network, two of them in the same report. None is wrong. They count different things.

How long is the river network in Canton Zurich?
SourceLengthWhat is counted
ConvivaPlus, official network (as of 16.09.2026)3,473 kmwatercourses in their bed, open and culverted, without lines through lakes
Same network with lake crossings3,646 kmplus 173 km of lines through lakes, for 438 watercourses
Canton: water report 2022, condition survey3,678 kmtotal network of the ecomorphological survey, 2022
Canton: water report 2022, monitoring network3,618 kmwatercourses in the canton, in the chapter on its roughly 150 monitoring stations
Canton: page on ecological enhancementabout 3,600 kmrounded, basis of the revitalisation plan
Canton: environmental report, water3,550 km“in total”, no reference date, basis of the watercourse condition

The biggest difference is the lake crossings: lines with which the canton continues a watercourse through a lake. The longest belongs to the Limmat: officially it “flows” 28.2 km along the length of Lake Zurich before it becomes a river at Bürkliplatz. With all lake crossings, the same network reaches 3,646 km, 32 km off the 3,678 km of 2022. The water report (published in German) explains the remaining gap itself: the digital network is corrected continuously, among other things by extending stream lines in forests, adding lake crossings and deleting culverted sections.

That is why this page never gives a number on its own, but always what it counts. Anyone quoting a figure on Zurich's streams should take the definition along: 574 rivers and streams that flow in the open for at least one kilometre, in a network of 3,473 km without the lakes.

🔎 River finder: every stream by municipality, length and day ticket

Enter your municipality or a name: the finder shows the 574 rivers and streams with length in the canton, open kilometres, municipalities and fishing beats.

🌊 River finder: municipality → stream → length, fishing
ConvivaPlus.ch

574 rivers and streams from Canton Zurich's official water network

574 of 574 watercourses
  • Winterthur, Fischenthal, Bauma, Zell (ZH)
  • Bäretswil, Wetzikon (ZH), Uster, Opfikon
  • Rheinau, Eglisau, Flaach, Laufen-Uhwiesen
  • Horgen, Zürich, Wädenswil, Adliswil
  • Stallikon, Dietikon, Birmensdorf (ZH), Hausen am Albis
  • Andelfingen, Flaach, Altikon, Ossingen
  • Hittnau, Illnau-Effretikon, Fehraltorf, Pfäffikon
  • Winterthur, Elgg, Elsau, Schlatt (ZH)
  • Zürich, Dietikon, Schlieren, Unterengstringen
  • Affoltern am Albis, Hausen am Albis, Rifferswil, Mettmenstetten
  • Wald (ZH), Rüti (ZH), Hinwil, Dürnten
  • Bassersdorf, Kloten, Nürensdorf, Oberglatt

Counted: ordinary watercourses flowing in the open for at least 1 km within the canton. · 2026-09-16

No guarantee: official raw data of Canton Zurich. Whether you may swim or fish at a given spot is set by the municipality, the beat leaseholder and the canton.

verified · ConvivaPlus

🏊 River swimming: river baths, bans and rules in Zurich

Right where the Limmat flows most beautifully through the old town, swimming is banned: between Quaibrücke and the Letten canal. Right after, from the Letten canal on, you can drift legally and for free: four river baths on the Limmat and the Schanzengraben charge no entry.

River baths in the city of Zurich
River bathWaterEntryGood to know
Oberer LettenLimmatfreeon the dam by the Letten power station canal; current facility from 1951/52
Unterer LettenLimmatfreefamily-friendly, with paddling pool
Au-Höngg (Werdinsel)Limmatfreefamily-friendly, large grounds
Männerbad SchanzengrabenSchanzengrabenfreemen only during the day
Frauenbad StadthausquaiLimmatCHF 8women only during the day
Where swimming in the Limmat is banned
Under Art. 16 of the City of Zurich's general police ordinance, swimming and bathing in the Limmat is banned from Quaibrücke to the Letten canal. It is also banned between the Oberer Letten bath and the Letten power station, and above and below the Höngg weir.

Rules for river swimming

24% of all watercourses in Canton Zurich flow underground: 845 of 3,473 kilometres are piped.

🎣 Fishing day ticket: where to fish in Canton Zurich without an annual permit

Only 23 of the 289 fishing beats in Canton Zurich sell day tickets: on the Rhine, Thur, Glatt, Limmat and Lake Türlen. Most of the others are auctioned to leaseholders, and if you are not a leaseholder, you need a ticket. The ConvivaPlus day-ticket check in the river finder shows for every stream whether such a beat lies on it: that applies to 32 rivers and streams.

🎣 Day ticket availableThe 23 beats with day tickets
BeatWaterDistrictStretch (official)
Glatt 203Glatt3Glatt, von der Brücke bei Schwerzenbach bis zum Steg Überlauf im Chreis, inkl Chimlibach, Zilbach, Kahlenbächli und Wisbach. Zu beachten ist die Verordung zum Schutze des Greifensees.
Glatt 204Glatt3Glatt, vom Überfall im Chreis bis zur Brücke Bahnhofstrasse Dübendorf, inkl. Oberwasserkanal
Limmat 352Limmat3Limmat, von der Münsterbrücke bis zur Rudolf Brun-Brücke
Limmat 353Limmat3Limmat, von der Rudolf Brun-Brücke bis zum Dachwehr beim Drahtschmiedlisteg, inkl. Oberwasserkanal bis zum Rechen des EW Letten der Stadt Zürich
Limmat 354Sihl3Limmat, vom Dachwehr beim Drahtschmiedlisteg bis zum Lettensteg, einschl. Sihl vom Mattensteg beim Platzspitz bis zur Mündung in die Limmat
Limmat 355Waidbach3Limmat, vom Lettensteg bis zum Hardturmsteg, einschl. Unterwasserkanal des EW Letten der Stadt Zürich
Limmat 359Maasbächli3Limmat, von Limmatkilometer 12,880 bis zum linksseitigen Fischereimarkstein ca. 120 m unterhalb des Wehres bei der Europabrücke, einschl. Oberwasserkanal des EW am Giessen, jedoch ohne Hauserkanal (Rev. 361)
Limmat 360HWE Bombach3Limmat, vom linksseitigen Fischereimarkstein ca. 120 m unterhalb des Wehres bei der Europabrücke bis zum linksseitigen Fischereimarkstein ca. 40 m oberhalb der Gemeindegrenze mit dem Unterwasserkanal des EW am Giessen, jedoch ohne Hauserkanal
Limmat 364Ämetbach3Limmat, vom linksseitigen Fischereimarkstein unterhald der Mündung Schäflibach, bis zum linksseitigen Fischereimarkstein unterhalb der Reppischmündung, inkl. Länggenbach und Oberwasser- und Unterwasserkanal der EKZ. Die Fischerei im Oberwasserkanal zwischen der Überlandstrasse-Brücke und dem Turbinengebäude ist nur rechtsufrig bis auf Höhe des blauen Tores auf dem EKZ-Gelände erlaubt. Das rechtsseitige Limmatufer innerhalb des Schutzgebietes darf zur Fischereiausübung nicht betreten werden.
Rhein 22Rhein1Hauptstauhaltung Rheinau (linke Stromhälfte). Fischereiverbot bei Kraftwerksanlagen siehe Verbotstafeln.
Rhein 23Rhein1Obere und untere Hilfsstauhaltung Rheinau (linke Stromhälfte). Fischereiverbot bei Kraftwerksanlagen siehe Verbotstafeln. Linksufrige Freiangelstrecke für Jugendliche gemäss Fischereitafeln.
Rhein 25Rhein1Rhein Rüedifahr: Vom unteren Hilfswehr Rheinau bis zur Rheinpegelstation bei der Gemeindegrenze Marthalen (linke Stromhälfte). Fischereiverbot bei Kraftwerksanlagen siehe Verbotstafeln.
Rhein 27Rhein1Rhein Ellikerwasser: Von der Rheinpegelstation bei der Gemeindegrenze Marthalen bis schaffhausisch-badische Grenze (linke Stromhälfte). Ab hier ganze Strombreite bis zur zürcherisch-schaffhausischen Grenztafel.
Rhein 29Zieglerholzbächli1Rhein, ganze Strombreite von der zürcherisch-schaffhausischen Grenztafel Flaacherbach bis zur Grenztafel Tobelbächli.
Rhein 30Chastenbuckbach1Rhein, ganze Strombreite von der Grenztafel bei der Mündung des Tobelbächlis bis zur rechtsufrigen Fischereigrenztafel Tössegg.
Rhein 31Mühlebach1Rhein, ganze Strombreite von der rechtsufrigen Fischereigrenztafel Tössegg bis zur Strassenbrücke Eglisau. Vorbehalten bleiben Bestimmungen über den Rennruderbetrieb.
Rhein 32Landvogtstobelbach1Rhein, ganze Strombreite, von der Strassenbrücke Eglisau bis zur zürcherisch-badischen Landesgrenze. Ab Landesgrenze linke Stromhälfte bis zum Stauwehr des KW Eglisau. Fischereiverbot zwischen Fischereisignal und Stauwehr des Kraftwerks Eglisau. Vorbehalten bleiben Bestimmungen über den Rennruderbetrieb
Rhein 33Dorfbach1Rhein, linke Stromhälfte vom Stauwehr des EW Eglisau bis zur zürcherisch-aargauischen Kantonsgrenze. Fischereiverbot zwischen Fischereisignal und Stauwehr des Kraftwerks Eglisau.
Thur 61Huebwiesengraben1Thur, von der Kantonsgrenze ca. 250 m oberhalb des Steges bei Feldi bis zur Brücke Gütighausen, inkl. Thur-Binnenkanal. Befischung in Thur über halbe Flussbreite auf Grenzstrecke ZH/TG. Ohne Kiesweiher (Revier 193) und ohne Äuligraben und Auweiher.
Thur 62Weiherbach1Thur, von der Brücke in Gütighausen bis zur Eisenbahnbrücke bei Ossingen, ohne Gütighauserweiher.
Thur 63Hostbach1Thur, von der Eisenbahnbrücke bei Ossingen bis zur Autobahnbrücke bei Andelfingen, inkl. Ossingerbach und Hostbach, ohne Weierholzweiher (Revier 80) und Fischzucht Waser (Revier 82).
Thur 64Thur1Thur, von der Autobahnbrücke bei Andelfingen bis zum Altener Felsen.
TürlerseeFellibach4Türlersee mit Zuflüssen und Ausfluss bis zum Regulierweiher. Zu beachten ist die Verordnung zum Schutz des Türlersees (Ufer-Betretregelungen).

Leased, private, protected beats: what it means

AuctionThe canton leases the beat to the highest bidder, currently for the 2026–2034 lease period. The leaseholders decide whether and how many tickets they issue.
Private beatThe fishing right belongs not to the canton but to private owners – on the Limmat, for example, to Einsiedeln Abbey.
Direct leaseThe canton awards the beat directly, without an auction.
Protected beatNo fishing here, so fish stocks can recover.
Context
Without a permit you can fish on four lakes: the free angling right on Lake Zurich, Greifensee, Pfäffikersee and Türlersee lets anyone fish from the shore with very limited equipment. There is no free angling on rivers and streams.

The legal basis is federal law: under Art. 5a of the Ordinance to the Federal Fisheries Act (VBGF), anyone acquiring a fishing entitlement must prove sufficient knowledge of fish, crayfish and animal-welfare-compliant fishing. The FOEN enforcement guide distinguishes: for permits of up to one month, written information suffices; longer permits require a course. Accordingly, Canton Zurich requires the certificate of competence (SaNa) for the annual permit. Leased beats accept ticket holders from age 10; the fisheries and hunting administration sells permits from mid-December online and in its app.

💡Did you know?

24% of watercourses in Canton Zurich flow underground: 845 of 3,473 kilometres are piped.

Source: Kanton Zürich, Gewässernetz (CC0)

🥾 Riverside walks: three river trails in Canton Zurich

The finest river walks in the canton need neither mountain nor train: they start at the edge of town and follow the water.

Töss: Winterthur – TösseggAbout 16 km and 4 to 4½ hours, flat and family-friendly: past the Hard spinning mill and Freienstein castle ruin to the mouth at the Rhine. At Tössegg there is a restaurant with a boat landing and a beaver nature trail.
Limmat: Zurich – Fahr Abbey – DietikonFrom the Werdinsel in Höngg along the Limmat to Fahr Abbey, an Aargau exclave, and on to Dietikon.
Sihl: Wildnispark Zürich SihlwaldSwitzerland's first nature discovery park since 2010. The forest has not been managed since around 2000 and is turning back into wilderness.

💦 Waterfalls and swimming spots along Zurich's streams

96 destinations in the ConvivaPlus Ausflugs-Radar lie no more than 100 metres from one of these streams and rivers, 81 of them waterfalls. The watercourse with the most: Töss, with 8. One click takes you to the place in the radar, with access, suitability and map.

Tobelbach (Russikon): Oberer Giessen · Unterer Giessen
Aabach (Wädenswil): Aabach-Wasserfall
Bäntalbach: Giessen Bäntal
Brandrütibach: Chuppenacher-Wasserfall
Chatzentobelbach: Chatzenbach Giessen
Dickibach: Tätschfels
Fisibach: Bachsertal
Gigerbach: Chatzetöbeli
Haslenbach (Uetikon am See): Haslenbach-Wasserfall
Hüttenbach: Bernhardsfall
Jörenbach: Jörentobel
Mülibach (Wildberg): Steiland Giess
Reidbach: Giessbachfall
Sagentobelbach: Sagentobelbachfall
Wallikerbach: Luppmen-Wasserfall
Wildbach (Hinwil): Wildbach-Wasserfall

All destinations in the Ausflugs-Radar →

📊
Quick poll

Where do you prefer to cool off in summer?

One click – anonymous, no sign-up required.

❓ FAQ about the rivers of Canton Zurich

Answers are based on the official water network, the City and the Canton of Zurich.

🔍

People also ask

Related questions from our magazine

Zurich river baths →
Zurich islands →
Swiss rivers list →
Lakes of Switzerland →
🏆 The ConvivaPlus verdict

The watercourse finding

Zurich is not a city of two rivers but a canton of 574 rivers and streams – a quarter of them under the tarmac. If you want to swim, the city has four free baths. If you want to fish, know the beat first: only 23 of 289 issue day tickets.
Written by
Marco Gisler
Marco Gisler

ConvivaPlus Editor · Data & Switzerland

Writes about Switzerland in figures – official data recalculated, counting method explained.

  • Population
  • 26 cantons
  • Waterways
  • Official data
Researched & sourced · for Switzerland
Sources & methodology14
Researched & source-checked · for Switzerland
As of: 10/06/2026
Official data
01
Canton of Zurich: public surface waters (GIS-ZH no. 45, CC0) →Number, name, length, open/piped, importance — basis of all watercourse figures
02
Canton Zurich: Wasser und Gewässer 2022, main report (AWEL, in German) →3678 km (PDF p. 48, ecomorphology) and 3618 km (PDF p. 25, monitoring network); updates to the digital network — accessed 06.10.2026
Official bodies
03
Canton Zurich: environmental report, water (in German) →1700 km of 3550 km in total in poor condition — accessed 06.10.2026
04
Canton Zurich: ecological enhancement (in German) →about 100 of 3600 km prioritised for revitalisation — accessed 06.10.2026
Official data
05
Canton of Zurich: fishing beats (network 2025) →Lease regime, day tickets, stretch descriptions
Authorities
06
Canton of Zurich: how and where to fish →Day tickets, free angling, SaNa certificate
07
Canton of Zurich: Sihl–Lake Zurich relief tunnel →Length, cost, schedule, discharge values
09
City of Zurich: swimming in open water →Bans under Art. 16 APV, rules
Other sources
10
Wildnispark Zürich: Sihlwald nature park →Label since 2010, unmanaged forest
11
Wikipedia: Limmat, Sihl, Töss, Glatt, Reppisch, Eulach →Total lengths and catchments beyond the canton
Legal basis
12
Waters Protection Act (GSchG, SR 814.20), Art. 38 and 38a →Culverting ban, exceptions, revitalisation — version as of 1 August 2025, accessed 17.09.2026
13
Ordinance to the Federal Fisheries Act (VBGF, SR 923.01), Art. 5a →Proof of competence for a fishing entitlement — version as of 1 January 2021, accessed 17.09.2026
14
FOEN: enforcement guide on fishing entitlement requirements (2007) →Permits up to one month: written information; longer: course — accessed 17.09.2026

All information without guarantee. Found an error? → support@conviva-plus.ch

What do you think of this article?

Found an error or have feedback? Let us know or write to us directly.

Recommendation

Make ConvivaPlus a preferred source

Pick ConvivaPlus as a preferred source in Google Search – our guides then appear higher in your Top Stories.