Hasta 1985 los naturalistas agruparon a los hipopótamos con los cerdos, basándose en la estructura de sus molares. Sin embargo, varias líneas de pruebas, primero de las proteínas en sangre, luego de la sistemática molecular y ADN, y del registro fósil, muestran que sus parientes vivos más cercanos son los cetáceos (ballenas, marsopas, etc.). El ancestro común de hipopótamos y ballenas divergió en los rumiantes y el resto de los ungulados; el linaje de cetáceos e hipopótamos se separó poco después.
La teoría más reciente sobre los orígenes de los hipopotámidos sugiere que hipopótamos y ballenas compartieron un antepasado semiacuático común que se bifurcó de los artiodáctilos hace aproximadamente 60 millones de años. Este hipotético grupo ancestral probablemente se dividió en dos ramas hace aproximadamente 54 millones de años. Una rama evolucionaría en los cetáceos, comenzando posiblemente hace aproximadamente 52 millones de años con la protoballena Pakicetus y otros antepasados tempranos de las ballenas conocidos colectivamente como Archaeoceti, que eventualmente experimentaron una adaptación hacia los completamente acuáticos cetáceos. La otra rama se convertiría en los antracotéridos, una gran familia de bestias cuadrúpedas, la más temprana de las que en el Eoceno tardío se habría parecido a hipopótamos más delgados y con cabezas comparativamente pequeñas y estrechas. Todas las ramas de los antracotéridos, salvo la que evolucionó en los hipopotámidos, se extinguieron durante el Plioceno sin dejar descendencia.