Deriva dal nome longobardo composto dai termini ans, "divinità" ed helm, "elmo", con il significato quindi di "elmo divino, elmo sacro o difensore di Dio".
Nel 500 si trova la latinizzazione Anshelmus italianizzato poi in Anselmo.
Il cognome Anselmi è diffuso in tutto il centronord, con presenze significative anche nel barese e nel trapanese. Anselmetti è tipico del biellese. Anzelmetti, praticamente unico, è dovuto ad errori di trascrizione. Anselmetto, molto raro, è tipico del torinesse. Anselmini, tipicamente lombardo, ha presenze a Milano e nel milanese e nel basso bresciano. Anselmino è specifico del torinese. Anzelmi, estremamente raro, parrebbe toscano o pugliese. Anzelmo, decisamente meridionale, ha un ceppo nel napoletano, uno nel barese ed uno nel palermitano.