La longueur de son cours d'eau est de 27,3 km. Il prend sa source dans les Monts d'Arrée à Saint-Rivoal, juste au-dessus de Brasparts à près de 300 m, et à 1 km au nor-ouest du Ménez Mikael (381 m) et de la chapelle de Saint-Michel. Il coule alors globalement du nord-ouest vers le sud-est en s'éloignant de la pointe du Finistère : à contrario de l'Aulne qui coule vers la pointe du Finistère.
Puis il alimente le Réservoir de Saint-Michel à 220 m, d'où il sort avec un débit moyen de 1,1 m³/s, puis la retenue du Rusquec (218 m) qui alimente l'usine hydroélectrique de Saint Herbot sur la commune de Loqueffret d'où il ressort à 95 m après 336 m dans une conduite. L'ancien cours empruntait le chaos du Rusquec, où il formait une cascade très célèbre au XIX et début du XX siècle.
La vallée de l'Ellez s'écoule ensuite, parfois encaissée de plus de 70 m, le long de la limite communale Sud de Plouyé. Il se jette dans l'Aulne à Pénity-Saint-Laurent (Landeleau), à l'intersection des limites communales de Plouyé, Landeleau et Kergloff. Son bassin versant est de 138 km².
Autrefois l'Ellez s'appelait Taël à la sortie des marais de Botmeur, elle tirait son nom de l'adjectif ta (v)el (calme, silencieux). Le lieu-dit Nestavel a conservé cette appellation: le hameau proche de la tavel, la rivière calme, silencieuse.