Ir para o conteúdo principal
gerador.io

Como Validar CPF: Entenda o Algoritmo

Aprenda em detalhes como funciona o algoritmo de validação do CPF, com explicação passo a passo do cálculo dos dígitos verificadores.

12 de fevereiro de 2026 5 min de leitura
Compartilhar:

O algoritmo por tras do CPF

Nem toda sequencia de 11 numeros e um CPF valido. O documento possui dois digitos verificadores que sao calculados matematicamente a partir dos 9 primeiros digitos. Esse mecanismo permite detectar erros de digitacao e numeros inventados.

O algoritmo utilizado e o Modulo 11, amplamente usado em documentos fiscais no mundo inteiro. A validacao do CPF nao confirma se o numero pertence a uma pessoa real — ela apenas verifica se a sequencia numerica e matematicamente consistente.

Entender esse algoritmo e fundamental para desenvolvedores que precisam implementar validacao de CPF em seus sistemas. A validacao algoritmica e a primeira linha de defesa contra dados invalidos em formularios de cadastro, APIs e sistemas de cobranca. Ela nao substitui a consulta a Receita Federal, mas filtra a grande maioria dos numeros digitados incorretamente.

Estrutura do CPF

Um CPF tem o formato XXX.XXX.XXX-DD, onde os 9 primeiros digitos identificam o contribuinte e a regiao fiscal, e os 2 ultimos (DD) sao os digitos verificadores. O nono digito indica a regiao fiscal de emissao — por exemplo, o digito 0 corresponde ao Rio Grande do Sul e o 8 a Sao Paulo.

A formatacao com pontos e hifen e apenas visual — internamente, o CPF e armazenado como uma sequencia de 11 digitos numericos. Em bancos de dados, recomenda-se armazenar apenas os numeros (sem formatacao) e aplicar a mascara visual apenas na apresentacao ao usuario. Isso simplifica consultas, comparacoes e validacoes.

Calculando o primeiro digito verificador

Vamos usar o CPF ficticio 529.982.247-?? para calcular os digitos.

Passo 1: Multiplique cada um dos 9 primeiros digitos por pesos decrescentes de 10 a 2:

  • 5 x 10 = 50
  • 2 x 9 = 18
  • 9 x 8 = 72
  • 9 x 7 = 63
  • 8 x 6 = 48
  • 2 x 5 = 10
  • 2 x 4 = 8
  • 4 x 3 = 12
  • 7 x 2 = 14

Passo 2: Some todos os produtos: 50 + 18 + 72 + 63 + 48 + 10 + 8 + 12 + 14 = 295

Passo 3: Calcule o resto da divisao por 11: 295 / 11 = 26, resto 9

Passo 4: Aplique a regra: se o resto for menor que 2, o digito e 0. Senao, e 11 - resto.

11 - 9 = 2. O primeiro digito verificador e 2.

Calculando o segundo digito verificador

Agora usamos os 10 digitos (incluindo o primeiro verificador): 5299822472

Passo 1: Multiplique por pesos decrescentes de 11 a 2:

  • 5 x 11 = 55
  • 2 x 10 = 20
  • 9 x 9 = 81
  • 9 x 8 = 72
  • 8 x 7 = 56
  • 2 x 6 = 12
  • 2 x 5 = 10
  • 4 x 4 = 16
  • 7 x 3 = 21
  • 2 x 2 = 4

Passo 2: Soma: 55 + 20 + 81 + 72 + 56 + 12 + 10 + 16 + 21 + 4 = 347

Passo 3: Resto: 347 / 11 = 31, resto 6

Passo 4: 11 - 6 = 5. O segundo digito verificador e 5.

CPF completo: 529.982.247-25

Casos especiais: CPFs invalidos

Existem CPFs que passam no algoritmo mas sao considerados invalidos por serem sequencias repetidas:

  • 000.000.000-00
  • 111.111.111-11
  • 222.222.222-22
  • … ate 999.999.999-99

Essas sequencias satisfazem a regra matematica, mas nao sao CPFs reais. Uma boa validacao deve rejeita-las explicitamente.

Alem dessas, a Receita Federal pode invalidar CPFs por outros motivos administrativos, como cancelamento por obito ou suspensao por irregularidade. Porem, essas situacoes nao podem ser verificadas apenas pelo algoritmo — exigem consulta direta ao banco de dados da Receita.

Por que o modulo 11?

O modulo 11 e usado porque gera uma distribuicao eficiente de digitos verificadores e detecta a maioria dos erros comuns de digitacao, incluindo troca de digitos adjacentes e insercao ou omissao de um digito. Esse mesmo algoritmo e utilizado em diversos outros documentos brasileiros, como o CNPJ e titulos de eleitor, alem de ser padrao internacional para codigos de barras ISBN.

A escolha do numero 11 como divisor nao e arbitraria. Usar um numero primo garante uma melhor distribuicao dos restos, o que significa que os digitos verificadores cobrem mais combinacoes possiveis de erros. Alem disso, o modulo 11 detecta 100% dos erros de um unico digito e a grande maioria das transposicoes de dois digitos adjacentes, que sao os tipos de erro mais comuns em digitacao manual.

Outros sistemas de validacao, como o Luhn algorithm (usado em cartoes de credito), usam modulo 10. A diferenca e que o modulo 11 tem capacidade ligeiramente maior de detectar transposicoes, ao custo de gerar eventualmente o digito “10” (que no caso do CPF e tratado como 0).

Implementacao em codigo

Se voce e desenvolvedor, a implementacao do algoritmo em qualquer linguagem segue a mesma logica:

  1. Remover caracteres nao numericos (pontos e hifen)
  2. Verificar se tem 11 digitos
  3. Rejeitar sequencias repetidas
  4. Calcular o primeiro digito verificador
  5. Calcular o segundo digito verificador
  6. Comparar com os digitos fornecidos

Dicas de implementacao

Aceite entrada com e sem formatacao: seu sistema deve tratar tanto “529.982.247-25” quanto “52998224725” como entradas validas. Remova todos os caracteres nao numericos antes de processar.

Valide o tamanho primeiro: antes de rodar o algoritmo, verifique se a string possui exatamente 11 digitos. Isso evita erros de index out of bounds e rejeita rapidamente entradas claramente invalidas.

Use tipos numericos apropriados: como o CPF tem no maximo 11 digitos, um inteiro de 32 bits nao e suficiente para armazena-lo (o maximo seria 2.147.483.647, que tem 10 digitos). Use um inteiro de 64 bits ou, preferencialmente, armazene como string para preservar zeros a esquerda.

Cuidado com zeros a esquerda: o CPF “012.345.678-90” comeca com zero. Se voce converter para inteiro, o zero sera perdido. Sempre trabalhe com strings ao lidar com CPFs.

Validacao no frontend e no backend: implemente a validacao em ambos os lados. No frontend, para dar feedback imediato ao usuario. No backend, para garantir seguranca, pois a validacao no frontend pode ser contornada por um atacante.

Onde a validacao do CPF e utilizada

A validacao algoritmica do CPF e empregada em praticamente todos os sistemas que lidam com cadastro de pessoas fisicas no Brasil:

  • E-commerces: validacao no checkout antes de processar o pagamento
  • Bancos e fintechs: abertura de conta e verificacao de identidade
  • Sistemas governamentais: acesso a servicos publicos digitais
  • Plataformas SaaS: cadastro de clientes e emissao de notas fiscais
  • Gateways de pagamento: verificacao pre-transacao

Em todos esses casos, a validacao algoritmica e apenas o primeiro passo. Sistemas mais criticos complementam com consulta a APIs da Receita Federal para verificar se o CPF esta ativo, regular e se os dados cadastrais conferem.

Perguntas frequentes

A validacao do CPF garante que o numero pertence a uma pessoa real?

Nao. A validacao algoritmica verifica apenas se os digitos verificadores estao corretos de acordo com a regra matematica do modulo 11. Um CPF pode ser matematicamente valido mas nao estar cadastrado na Receita Federal. Para confirmar que o CPF pertence a uma pessoa real e esta ativo, e necessario consultar a Receita Federal.

Quantos CPFs validos existem matematicamente?

Existem aproximadamente 1 bilhao de combinacoes de 9 digitos (000.000.000 a 999.999.999), menos as 10 sequencias repetidas. Para cada combinacao valida de 9 digitos, os 2 digitos verificadores sao determinados univocamente. Portanto, existem pouco menos de 1 bilhao de CPFs matematicamente validos.

Posso usar o mesmo algoritmo para validar CNPJ?

O CNPJ usa o mesmo principio (modulo 11), mas com pesos diferentes e aplicados sobre 12 ou 13 digitos em vez de 9 ou 10. A logica e a mesma, mas os pesos sao 5,4,3,2,9,8,7,6,5,4,3,2 para o primeiro digito e 6,5,4,3,2,9,8,7,6,5,4,3,2 para o segundo.

O que significa quando um CPF “nao passa na validacao”?

Significa que os digitos verificadores informados nao correspondem ao calculo matematico baseado nos 9 primeiros digitos. Isso geralmente indica um erro de digitacao. O erro mais comum e a troca de dois digitos adjacentes (como digitar 52 em vez de 25), seguido pela digitacao de um digito errado.

Valide ou gere CPFs online

Agora que voce entende a logica, pode aplica-la em seus projetos ou simplesmente usar nosso Validador de CPF online para verificar qualquer numero instantaneamente. Precisa de numeros para testes? Experimente o Gerador de CPF e obtenha CPFs validos em segundos. Ambos funcionam 100% no navegador, sem enviar dados para servidores.

Compartilhar:
AR

Ana Rodrigues

Especialista em Conteúdo Técnico

Jornalista com pós-graduação em Comunicação Digital. 8 anos de experiência produzindo conteúdo técnico acessível sobre finanças, legislação trabalhista e tecnologia.

Fontes e Referências

Ferramentas Relacionadas

Posts Relacionados