Varios ríos atraviesan la ciudad de Oaxaca: el río Atoyac, el río San Felipe, el río Jalatlaco (actualmente entubado y sobre el cual corre la Calzada de la República), el río Seco y el río Salado.