鴨川は現在、出町柳で高野川と合流しY字形になっていますが、京都盆地が東北に高く西南に低いという地形を考えると、上賀茂付近から南流して現在の堀川の筋に続くのが元々の流路であり、平安京遷都の際に都の東側に人為的に流路が変更され、そのため洪水被害が絶えなかったと主張する「鴨川つけかえ説」もありましたが、現在は古くから現状と大差のない流路であったことが証明され、つけかえ説は科学的に否定されています。
とはいえ、高さ55mの東寺の五重塔の頂上とその約8km上流に位置する北山通がほぼ同じ標高であることが象徴している通り、大都市を流れる河川としては急勾配であることに加え、平安京造営時に北山の木が伐採され、市街地の東への拡大にともない河原が市街地化したことなどの要因から、しばしば氾濫し洪水を起こしたのは事実です。
そのため鴨川の水害対策として、堤を修理するために824年(天長元年)には防鴨河使(ぼうがし)が設置されるなどしましたが、成果はあまりなかったといいます。
この点、平安後期に「院政」を開始し、その権力を思うままにした白河法皇でさえ、「平家物語」の中で「賀茂河の水・双六の賽(すごろくのさい)・山法師、是ぞわが心にかなはぬもの」と自らの意に沿わないもの「天下三不如意(てんかさんふにょい)」の第一に鴨川の水を挙げたほどです。
その後桃山時代には豊臣秀吉が築いた御土居の東側は鴨川に沿って造られたため、堤防としての役割も兼ね水害も減少しますが、戦前の1935年(昭和10年)6月29日に発生した集中豪雨では、死傷者83名を出したのみならず、鴨川にかかる26の橋のうち三条・五条大橋など15の橋が流失する大被害をもたらしたといいます(被害がなかったのは北大路橋・賀茂大橋・七条大橋の3つのみ)。
これを受けて1936年(昭和11年)より護岸の大改修事業が行われ、戦争による中断などはあったものの1947年(昭和22年)に鴨川工事は完成。
全体的に川底が2~3m掘り下げるとともに石張りの護岸を設け、西側にはみそそぎ川を新たに作り、五条大橋~塩小路橋間の京阪線の緑地帯を撤去して川幅の拡幅を図るなどの改修工事が行われました。
それまで堤防の上を走っていた京阪線の地下化や琵琶湖疏水の暗渠化を行い、川の幅を広げる工事についても1979年(昭和54年)に着工、1987年(昭和62年)5月に完成。その後も水害の起きにくい川へと改修が進められています。