Sobrenomes de origem portuguesa e italiana. Em Portugal, é um toponímico, tomado da cidade de Serpa, distrito de Beja, região do Alentejo.
A tradição afirma que a origem estaria em dom Fernando de Portugal (1217-46), chamado de “o Infante de Serpa”, senhor de Serpa e filho de dom Afonso II de Portugal e dona Urraca de Castela. Há, no entanto, poucos registros sobre a linhagem que se tornaria comum e nobre no século 15 — e cujo brasão tem uma serpe, uma serpente ou dragão alado. De toda forma, o nome de família procede do nome da cidade portuguesa, que teria origem pré-romana.
Na Itália, é provável que os sobrenomes (tanto Serpa quanto Serpe) tenham origem em um apelido ligado a uma serpente. Os nomes são comuns na região de Cosenza.
No Brasil, o sobrenome é conhecido desde o século 17. Na Bahia, Diogo de Oliveira Serpa recebeu carta de capitão-mor das entradas dos mocambos em 1653. Entre os primeiros imigrantes italianos temos Gaspare Serpa, chegado no vapor Savoie em 15 de junho de 1885.
Destacamos como personalidade com o sobrenome o pintor Ivan Serpa (1923-73).