De l’indo-européen commun*h₂ōwyóm («œuf») qui a également donné ᾠόν, ôión en grec ancien, خایهẖāya en persan, egg en anglais, etc.
Le \o\ s’est probablement ouvert dès l’époque latine *ŏvu, pour se modifier ensuite suivant la règle des voyelles accentuées: ŏ > ǫ (bas-empire) > uo (époque romane) → voir uef en ancien français.
Le neutre latin est devenu masculin dans les langues romanes. Le pluriel latin ova en -a, devenant uova a changé de genre et est devenue féminin. L’italien a un pluriel irrégulier féminin uova, l’espagnol a hueva, le portugais ova (« frai, ensemble des œufs pondus par un poisson ») qui sont des féminins singuliers avec un sens collectif, le français a ove masculin mais parfois féminin selon le modèle de l’ancien français ove, ueve.