Para José Pedro Machado (Dicionário Etimológico-Onomástico da Língua Portuguesa), trata-se de um apelido/sobrenome proveniente de uma antiga alcunha baseada no nome comum carneiro. Como nome próprio, está atestado, pelo menos, desde o século XIII: «Johanne Carneyro» (ibidem).
Manuel de Sousa, em As Origens dos Apelidos das Famílias Portuguesas, dá como incerta a proveniência do apelido: portuguesa, relacionada com um lugar assim chamado em Gestaçô (Guimarães, Norte de Portugal); e espanhola ou francesa. Manuel de Sousa indica, sem datar, que a mais antiga referência deste apelido é a um Pedro Carneiro, senhor das terras de Valdevez (hoje, no distrito de Viana do Castelo, Norte de Portugal).
Tem, portanto, cabimento a hipótese de o apelido derivar de um topónimo do Norte de Portugal. Note-se, porém, que as localidades conhecidas por Carneiro nem sempre devem este nome ao animal assim designado. Machado não menciona este aspecto, mas há povoações galegas chamadas Carneiro, nome que, segundo Fernando Cabeza Quiles (Os nomes de lugar – Topónimos de Galicia: a súa orixe e o seu significado), tem origem num radical indo-europeu *carn-, com o sentido genérico de «pedra». Carneiro pode, portanto, ser também um «lugar onde (só) existem pedras».