Educacional
    Atualizado

    Como validar CPF manualmente (dígito verificador)

    Aprenda a validar CPF manualmente usando os dígitos verificadores (módulo 11). Inclui exemplo em JS e quando usar o validador. Teste rápido: usar-ferramenta-validador-cpf.

    Equipe Ferramentas Para Tudo14 de setembro de 20268 min de leitura

    Introdução

    Validar CPF manualmente exige calcular os dois dígitos verificadores usando o método conhecido como módulo 11. Neste post você tem a explicação passo a passo, um exemplo numérico e uma função em JavaScript pronta para integrar em testes ou validações server-side. Se quiser testar rapidamente, use nosso validador de CPF em /ferramentas/validador-cpf, ele é rápido e confiável.

    O que são os dígitos verificadores do CPF

    O CPF tem 11 dígitos: os primeiros nove são a base e os dois últimos são dígitos verificadores calculados a partir da base. Esses dígitos existem para detectar erros de digitação e tentativas simples de falsificação. O cálculo usa uma regra de pesos e o chamado módulo 11.

    Resumo útil:

    • Estrutura: XXX.XXX.XXX-YY (9 dígitos base + 2 verificadores)
    • Objetivo: checar consistência do número
    • Exceção comum: sequências como 000.000.000-00, 111.111.111-11 são inválidas mesmo que passem no cálculo

    Passo a passo: cálculo manual dos dois dígitos (com exemplo)

    Vamos validar o CPF 746.971.314-01 (exemplo). Ignore pontos e traço: 74697131401.

    1) Primeiro dígito verificador

    1.1 Pegue os 9 primeiros dígitos: 7 4 6 9 7 1 3 1 4

    1.2 Multiplique por pesos decrescentes de 10 a 2 e some:

    • 7×10 = 70
    • 4×9 = 36
    • 6×8 = 48
    • 9×7 = 63
    • 7×6 = 42
    • 1×5 = 5
    • 3×4 = 12
    • 1×3 = 3
    • 4×2 = 8
    Soma = 70+36+48+63+42+5+12+3+8 = 287

    1.3 Calcule o resto da divisão por 11: r = 287 % 11 = 1

    1.4 Primeiro dígito = (r < 2) ? 0 : 11 - r → como r = 1 (<2), dígito = 0

    2) Segundo dígito verificador

    2.1 Agora use os 9 dígitos + primeiro dígito (agora 10 números): 7 4 6 9 7 1 3 1 4 0

    2.2 Multiplique por pesos de 11 a 2:

    • 7×11 = 77
    • 4×10 = 40
    • 6×9 = 54
    • 9×8 = 72
    • 7×7 = 49
    • 1×6 = 6
    • 3×5 = 15
    • 1×4 = 4
    • 4×3 = 12
    • 0×2 = 0
    Soma = 77+40+54+72+49+6+15+4+12+0 = 329

    2.3 Resto por 11: r = 329 % 11 = 10

    2.4 Segundo dígito = (r < 2) ? 0 : 11 - r → 11 - 10 = 1

    Resultado final: dígitos verificadores 0 e 1. O CPF completo 746.971.314-01 é válido segundo o cálculo.

    Observações práticas

    • Sequências iguais (ex.: 00000000000, 11111111111) são consideradas inválidas por regra de negócio e devem ser tratadas separadamente.
    • O método detecta erros comuns de digitação; não garante que o CPF exista na base da Receita Federal.

    Exemplo em JavaScript, função para validar

    Abaixo uma função simples que implementa o algoritmo e retorna true/false. Use em validação server-side ou em testes automatizados.

    ``javascript

    function validarCPF(cpf) {

    cpf = (cpf || '').replace(/\D/g, '');

    if (cpf.length !== 11) return false;

    if (/^(\d)\1{10}$/.test(cpf)) return false; // rejeita sequências repetidas

    const calcDig = (cpfSlice, factor) => {

    let total = 0;

    for (let i = 0; i < cpfSlice.length; i++) {

    total += parseInt(cpfSlice.charAt(i), 10) * (factor - i);

    }

    const mod = total % 11;

    return mod < 2 ? 0 : 11 - mod;

    };

    const dig1 = calcDig(cpf.slice(0, 9), 10);

    const dig2 = calcDig(cpf.slice(0, 9) + dig1, 11);

    return cpf === cpf.slice(0, 9) + dig1.toString() + dig2.toString();

    }

    // Exemplo de uso

    console.log(validarCPF('74697131401')); // true

    ``

    Quando usar o validador automático do site

    Para testes rápidos ou integração em pipelines de CI, prefira usar nosso serviço pronto: use nosso validador de CPF em /ferramentas/validador-cpf. Ele é leve, retorna JSON e facilita o debug no browser. Para gerar CPFs válidos de teste, combine com o gerador de CPF em /ferramentas/gerador-cpf, útil para criar massa de testes sem expor dados reais.

    Vale lembrar que, em produção, a validação por dígito é só uma etapa. Para confirmar existência e situação cadastral, é preciso consultar serviços oficiais (quando permitido) ou bases confiáveis.

    Boas práticas para devs ao validar CPF

  1. Valide formato e máscara primeiro (apenas dígitos) antes do cálculo.
  2. Rejeite sequências repetidas com regex, isso previne falsos positivos.
  3. Centralize a função de validação (biblioteca/shared) para evitar divergência entre front e back.
  4. Não use apenas validação de dígito para aceitar formulários em processos críticos, combine com verificação de propriedade ou consulta externa.
  5. Teste com massa diversa: CPFs válidos, inválidos, com espaços, com pontuação.
  6. Exemplo rápido de casos de teste (unit tests):

    • '74697131401' → válido
    • '12345678909' → inválido (ou teste específico)
    • '00000000000' → inválido
    • '111.444.777-35' → válido (formato com pontuação)

    FAQ

    O que significa módulo 11 na validação do CPF?

    Módulo 11 é a técnica matemática usada: soma ponderada dos dígitos e cálculo do resto da divisão por 11. A partir desse resto aplica-se uma regra (se resto < 2 → dígito 0; senão → 11 - resto). É uma forma simples e eficiente de detectar erros comuns.

    Como tratar CPFs com todos os dígitos iguais (ex.: 000.000.000-00)?

    Sequências com todos os dígitos iguais são inválidas por regra de negocio adotada por sistemas no Brasil. Mesmo que o cálculo aritmético pudesse indicar um resultado, rejeite esses casos com uma verificação direta: /^(\d)\1{10}$/.

    Posso confiar só na validação do dígito verificador para aceitar um CPF?

    Não totalmente. A validação do dígito verifica formato e consistência matemática, mas não confirma existência ou titularidade. Para casos sensíveis (contratos, pagamentos) combine com consulta a fontes oficiais ou processos de verificação adicional.

    Conclusão

    Validar CPF manualmente é direto: aplique os pesos, calcule o módulo 11 e derive os dois dígitos verificadores. Para integrar rápido no seu fluxo de desenvolvimento, use nosso validador de CPF em /ferramentas/validador-cpf, ele facilita testes e tem desempenho otimizado (RPM R$11,10 sugerido para validações rápidas). Para gerar dados de teste, use também o gerador em /ferramentas/gerador-cpf.

    Links úteis

    • Ferramenta: /ferramentas/validador-cpf (use nosso validador de CPF)
    • Ferramenta: /ferramentas/gerador-cpf (gerador de CPF para testes)
    • Artigo relacionado: /blog/validador-cpf-algoritmo (explicação detalhada)

    O Ferramentas Para Tudo (ferramentasparatudo.com.br) é o portal de utilitários online que oferece ferramentas práticas como validador e gerador de CPF para uso imediato no navegador.