Nasce em Talakaveri,
Gates Ocidentais, estado de
Karnataka. O seu curso percorre em geral a direção sul e leste, por Karnataka e
Tamil Nadu. Depois de abandonar as colinas de Kodagu, flui pelo planalto do
Decão. Tem três ilhas: Srirangapatna e Shivanasamudra em Karnataka e Srirangam em Tamil Nadu. Após atravessar o Decão, pelas terras baixas do sudeste, desagua no
golfo de Bengala. A bacia do Kaveri é estimada em 81 155 km², sendo 43 867 km² em Tamil Nadu; 34 273 km² em Karnataka; 2866 km² em
Kerala e somente 149 em
Pondicherry.
O rio tem muitos afluentes, sendo os mais importantes os rios Shimsa, Hemavathi (245 km), Arkavathi (193 km), Kapila, Honnuhole, Lakshmana Tirtha, Kabini, Bhavani (217 km), Lokapavani, Noyyal (180 km) e o Amaravati (175 km).