Karnoed est en breton et devient un Carnoët français. Ce toponyme est attesté dès l'an 1187 sous une forme identique à celle utilisée par les français actuellement. Avec quelques variantes comme un Cornoet en 1250 ou un Carnoit en 1304, qui voient toutes les lettres prononcées, ce toponyme reste stable dans le temps.
Ce toponyme est à relier à la racine celtique Karn- rappelant l'existence de tombes, ici plus nombreuses que dans les environs immédiats ; l'existence de tumuli, nombreux, confirmant cette explication. La seconde partie du nom pourrait dériver de Koad, bois ou, comme le proposent Hervé Abalain et Jean-Claude Even, un suffixe latin en -etum induisant une de collectif.