1001Ferramentas
Validadores

Como funciona a validação de CPF e CNPJ (o dígito verificador)

O passo a passo do dígito verificador do CPF e do CNPJ pelo módulo 11, o novo CNPJ alfanumérico e por que validar o formato não confirma que o número existe.

Atualizado em 30 de junho de 2026 · 9 min de leitura

O que é um dígito verificador

Pegue um CPF qualquer, como 111.444.777-35. Os nove primeiros algarismos identificam o cadastro; os dois últimos, depois do traço, não foram escolhidos por ninguém. Eles são calculados a partir dos outros nove por uma conta fixa. Esse é o dígito verificador: um número derivado matematicamente do restante, com uma única função — detectar erros de digitação antes que eles virem cadastro errado.

A ideia é antiga e está em todo lugar: código de barras, ISBN de livro, número de cartão (que usa o algoritmo de Luhn), conta bancária. Se você troca um algarismo por engano ou inverte dois dígitos vizinhos, a conta do verificador deixa de fechar e o sistema responde "número inválido" sem precisar consultar banco nenhum.

CPF e CNPJ usam um método chamado módulo 11. Ele é especialmente bom nos dois erros humanos mais frequentes ao digitar números longos: trocar um dígito (digitar 8 onde era 3) e transpor dois algarismos adjacentes (digitar 21 em vez de 12). Como cada posição é multiplicada por um peso diferente, mexer em qualquer casa altera o resultado final.

Validar o dígito verificador é uma operação puramente local e gratuita: não envolve a Receita Federal, não consulta nenhuma base e funciona offline. É só aritmética sobre os números que você já tem em mãos.

O algoritmo do CPF passo a passo (módulo 11)

O CPF tem 11 dígitos: 9 de base mais 2 verificadores. Vamos calcular os dois dígitos de 111.444.777-?? e ver de onde saem o 3 e o 5.

Primeiro dígito verificador

Multiplique cada um dos 9 primeiros algarismos por pesos que vão de 10 a 2, da esquerda para a direita, e some os produtos:

DígitoPesoProduto
11010
199
188
4728
4624
4520
7428
7321
7214
Soma162

Agora divida a soma por 11 e olhe o resto: 162 ÷ 11 = 14, com resto 8. A regra é: se o resto for 0 ou 1, o dígito é 0; caso contrário, o dígito é 11 menos o resto. Como 8 é maior que 1, o primeiro dígito é 11 − 8 = 3.

Segundo dígito verificador

Repita o processo, agora com os 10 primeiros algarismos (incluindo o 3 que acabamos de achar) e pesos de 11 a 2. A soma dá 204. 204 ÷ 11 = 18, com resto 6. Logo, o segundo dígito é 11 − 6 = 5. Fechou: 111.444.777-35 é um CPF matematicamente válido.

Se quiser conferir um número sem fazer a conta na mão, o Validador de CPF roda exatamente esse algoritmo e mostra na hora se o dígito bate. Para gerar números de teste já com o dígito correto, há o Gerador de CPF.

O algoritmo do CNPJ

O CNPJ tem 14 dígitos: 8 da raiz (identifica a empresa) + 4 da ordem (a filial, em geral 0001) + 2 verificadores. O método é o mesmo módulo 11, mas os pesos são diferentes: eles começam em 2 e sobem até 9, depois reiniciam. Para o primeiro dígito, os pesos aplicados aos 12 algarismos são 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2.

Vamos validar 11.222.333/0001-??. Multiplicando e somando, chega-se a 102. 102 ÷ 11 = 9, resto 3 → primeiro dígito = 11 − 3 = 8. Para o segundo dígito, os pesos viram 6, 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2 sobre os 13 algarismos: a soma é 120, 120 ÷ 11 = 10, resto 10 → segundo dígito = 11 − 10 = 1. Resultado: 11.222.333/0001-81.

O Validador de CNPJ automatiza esse cálculo. Se o seu problema é só apresentação — transformar 11222333000181 na máscara com pontos, barra e traço —, use o Formatar CNPJ, que só aplica a pontuação sem mexer no número.

O novo CNPJ alfanumérico

A partir de julho de 2026, a Receita Federal passa a emitir CNPJs alfanuméricos. O formato continua com 14 caracteres e a mesma máscara, mas as 12 primeiras posições (raiz + ordem) podem conter letras maiúsculas de A a Z além dos dígitos de 0 a 9. As duas últimas posições continuam numéricas — os dígitos verificadores nunca serão letras.

O cálculo do dígito muda em um detalhe elegante: em vez de usar o valor do algarismo, usa-se o código ASCII do caractere menos 48. Para os dígitos isso não muda nada — o '0' tem ASCII 48, então 48 − 48 = 0; o '9' tem ASCII 57, e 57 − 48 = 9. Para as letras, 'A' vira 65 − 48 = 17, 'B' = 18, e assim por diante até 'Z' = 90 − 48 = 42.

Essa escolha mantém total compatibilidade: como dígito menos 48 dá o próprio dígito, todos os CNPJs numéricos antigos continuam válidos e válidos pelo mesmo cálculo. Os pesos (5, 4, 3, 2, 9, 8…) e a regra do "11 menos o resto" permanecem idênticos.

Sistemas que tratam o CNPJ como número inteiro vão precisar passar a tratá-lo como texto. Para testar a aceitação de letras no seu cadastro, o Validador de CNPJ Alfanumérico aplica a regra do ASCII menos 48 e confere os dois dígitos numéricos finais.

Validar o formato não é confirmar que o número existe

Esse é o mal-entendido mais comum. O dígito verificador prova apenas consistência interna: que aqueles 11 ou 14 algarismos formam uma combinação aritmeticamente coerente. Ele não diz nada sobre o mundo real. Um CPF que passa na validação pode:

  • nunca ter sido emitido a ninguém;
  • estar suspenso, cancelado ou pendente de regularização;
  • pertencer a outra pessoa que não a que preencheu o formulário.

Há ainda um detalhe traiçoeiro: sequências de algarismos repetidos, como 111.111.111-11, passam no cálculo puro do módulo 11 (faça a conta — os dois dígitos batem). Por isso os validadores sérios rejeitam explicitamente todos os números de dígitos iguais, mesmo quando a aritmética fecha. Confirmar que um documento existe e está ativo exige consultar as bases oficiais da Receita Federal — algo que nenhuma validação local faz.

Quando usar dados de teste em vez de documentos reais

Programadores e analistas de QA precisam o tempo todo de CPFs e CNPJs que passem na validação para testar formulários, importações e relatórios. A tentação de usar o próprio documento — ou o de um colega — é grande, e é exatamente o que você deve evitar.

Documento de pessoa real é dado pessoal protegido pela LGPD. Espalhar CPFs reais em bancos de teste, prints de tela, planilhas de homologação e logs cria um passivo desnecessário. A alternativa correta é gerar números fictícios, porém matematicamente válidos, com o Gerador de CPF e o Gerador de CNPJ. Eles produzem dígitos verificadores corretos — o formulário aceita — sem corresponderem a nenhuma pessoa ou empresa específica.

Resumo do fluxo saudável: gere dados fictícios para popular o teste, valide com o Validador de CPF ou o Validador de CNPJ para garantir que sua rotina aceita o que deve, e reserve as consultas às bases oficiais apenas para o ambiente de produção, com documentos reais e consentimento.

Perguntas frequentes

Um CPF que passa na validação é de uma pessoa real?

Não necessariamente. A validação confirma só que o dígito verificador bate com os outros nove números. O CPF pode jamais ter sido emitido, ou estar inativo. Para saber se existe e qual a situação cadastral, é preciso consultar a Receita Federal.

Posso usar um CPF gerado num cadastro real?

Não. Os geradores produzem números válidos no formato, mas usá-los para abrir conta, emitir nota ou se passar por outra pessoa configura fraude. Eles servem apenas para teste de software e demonstração.

O CNPJ alfanumérico invalida os antigos?

Não. O novo cálculo usa o código ASCII menos 48, e para os dígitos esse valor é o próprio dígito. Todos os CNPJs numéricos já emitidos continuam válidos pelo mesmo algoritmo, sem nenhuma alteração.

Por que 000.000.000-00 às vezes "passa"?

Porque sequências de algarismos iguais satisfazem por acaso a aritmética do módulo 11. São casos inválidos por regra de negócio, e qualquer validador correto os rejeita antes mesmo de calcular o dígito.

Qual a diferença entre validar e formatar um documento?

Formatar só aplica a máscara visual (pontos, barra e traço) sem julgar se o número é coerente. Validar executa o cálculo do dígito verificador e responde se o número é aritmeticamente consistente. São operações independentes.

Ferramentas citadas neste guia

Continue lendo