Vesistöt
Vesistöt muodostavat Heinolan pinta-alasta yli 19 prosenttia, eli 163 neliökilometriä. Rantaviivaa on 959 kilometriä.
Suurimmat ovat osin Asikkalan puolelle ulottuva Ruotsalainen (74,12 km2), Konnivesi (50,06 km2), joka puolestaan ulottuu osittain Iitin puolelle, sekä Ala-Rieveli (12,98 km2). Merkittäviä järviä ovat myös Imjärvi ja Sonnanen. Myös lammet kuuluvat Heinolan maisemiin.
Heinolan tunnetuin virtavesi Kymenvirta on osa Kymijokea, jonka vesi virtaa Päijänteestä aina Suomenlahteen asti. Muita Heinolan virtavesiä ovat esimerkiksi Lauhjoki, Imkoski ja Sulkavankoski.

Vesien seuranta
Heinolan järvien tilaa seurataan vesistönäytteenotolla. Osa järvistä on jokavuotisessa seurannassa, ja joistakin järvistä näytteitä otetaan muutaman vuoden välein tai harvemmin.
Heinolassa on vielä kokonaan tutkimattomia pieniä järviä. Ympäristötoimen tavoitteena on, että kaikista Heinolan järvistä olisi saatavana alle kymmenen vuotta vanhat analyysitulokset.
Suurimmista ja merkittävimmistä järvistä näytteet ottaa Ely-keskus, pienemmistä vesistöistä kaupungin ympäristötoimi. Näytteenotossa ja analysoinnissa käytetään konsultteja.
Hämeen vesienhoidon toimenpideohjelman mukaan pintavesien tilan arvioinnissa määritetään vesistöjen ekologista tilaa. Arvioinnissa verrataan vesistön veden laadun ja biologisten tekijöiden arvoja järvi- tai jokityypille määritettyihin tilaluokittelun raja-arvoihin.
Heinolan järvistä ekologiselta tilaltaan erinomaisia ovat esimerkiksi Keskinen, Ala-Rieveli, Kuijärvi, Sonnanen, Viilajärvi ja Salajärvi.
Hyvässä ekologisessa tilassa ovat muiden muassa Konnivesi (Maitiaislahti tyydyttävä), Ruotsalainen ja Imjärvi. Kunnostusta vaativia kohteita ovat Konniveden Maitiaislahti, Ruotsalaisen Vaippilaislahti, Tuusjärvi ja Kirkkolampi.
Vesistötutkimuksien raportit
Heinola: Pirttijärvi, Ylä-Pajujärvi, Mielasjärvi, Kousanjärvi, Ilmajärvi, Iso-Rapanen
Hartola: Karajärvi, Nurmijärvi, Ruskealanlampi
Sysmä: Onkijärvi, Hanjärvi, Iso-Ruokopuolinen
Iitti: Levijärvi Merraslahti, Levijärvi, Karkealampi
Heinola: Vihutjärvi, Kivijärvi, Kotajärvi, Kukkajärvi, Lahnajärvi, Linnajärvi
Hartola: Mattilanlampi, Iso Kalliojärvi, Tohtaanjärvi
Sysmä: Ala-Vehkajärvi, Keihäsjärvi, Korkeanalanen
Iitti: Konnivesi Särkilahti, Konnivesi Patolahti, Alasimenlampi
Heinola: Ala-Musteri, Mustjärvi, Onkijärvi, Saarijärvi Vierumäki, Viilajärvi, Vähä-Rihu
Hartola: Iso Kuivajärvi, Iso-Ruokojärvi, Kilpilampi
Sysmä: Salaksjärvi, Kotijärvi, Jalaanjärvi
Iitti: Kirkkojärvi, Vähäjärvi, Matkuslampi
Heinola: Särkijärvi, Kivijärvi, Iso-Rihu, Kannusjärvi, Valkjärvi, Mustalampi
Hartola: Rautavesi Haranlahti, Iso-Paljo, Mielenge
Sysmä: Kahusjärvi, Pitkäjärvi, Enojärvi
Iitti: Ikolanlampi, Mustalampi, Kylliäisjärvi
Heinola: Ylimmäinen, Musta Vehkajärvi, Iso-Palpanen, Välilampi, Janatti, Iso Katisjärvi
Hartola: Vähälampi, Ihanajärvi, Alanenjärvi
Sysmä: Säynätjärvi, Sääksjärvi, Uurajärvi
Heinola: Suurijärvi, Läpiänjärvi, Kalliojärvi, Iso-Palpanen, Vähä-Palpanen, Valkjärvi, Myllyjärvi, Kokkammit, Ristijärvi, Ristijärven laskujoki, Ronsillanjoki
Hartola: Purnujärvi, Lehmijärvi, Ahveslampi
Sysmä: Iso-Ruokopuoleinen, Päijänne Liikolanlampi, Säynätjärvi, Sääksjärveen laskevat ojat 1-3
Heinola: Ottaselkä Ruotsalainen, Ala-pajujärvi, Lintumalahti Konnivesi, Iso Rautjalka, Kotajärvi, Pikijärvi, Saarijärvi, Mustjärvi, Vähä-Samjärvi, Iso Samjärvi, Sääksjärvi ja siihen laskevat ojat 1-3, Ronsillanjoki, Ristijärven laskuoja
Hartola: Valasjärvi, Mattilanlampi, Rautavesi (Kauhtuenlahti, Kurjenlahti ja Uuhivesi)
Sysmä: Suojärvi, Kirkjärvi