Ir para o conteúdo

Gerador de CNPJ para teste de software

Números com dígitos verificadores consistentes para você testar software, no formato numérico de sempre e no alfanumérico que a Receita passou a emitir em julho de 2026. Nada sai do seu navegador.

Leia antes de copiar

Os números desta página são matematicamente válidos — passam na conta dos dígitos verificadores. O que eles não são é garantia de não pertencerem a ninguém: a raiz é sorteada do mesmo espaço de onde saem os CNPJs emitidos, sem consulta a base alguma, então um número daqui pode coincidir com o CNPJ de uma empresa real. Quem precisa saber consulta a Receita, que publica a situação cadastral de qualquer CNPJ de graça.

Servem para uma coisa: testar software. Popular um banco de desenvolvimento, exercitar a máscara de um formulário, conferir se o seu cadastro já aceita o formato alfanumérico. Usar documento falso para se identificar é crime — Código Penal, art. 307. ver o artigo no Planalto →

De 1 a 100 por vez

O alfanumérico vale desde julho de 2026: é com ele que se testa se o seu cadastro já aceita letras.

As 4 posições depois da raiz. 0001 é a matriz; 0002 em diante são filiais. Em branco vira a matriz.

Os CNPJs se refazem a cada mudança de campo — o botão leva você até eles.

Seu número de teste, destrinchado

1 CNPJ · numérico · com pontuação · matriz

O que compõe este número

Sem pontuaçãocomo o banco de dados costuma guardar o campo — sem ponto, barra nem traço 04841692000151
Raiz — as 8 primeirassorteadas; identificam a empresa e são as mesmas em todas as filiais 04841692
Ordem do estabelecimento0001 é a matriz; 0002 em diante são as filiais 0001 — matriz
Dígitos verificadorescalculados por módulo 11 — estes dois não são sorteados e nunca têm letra 51
Formatoo alfanumérico passou a ser emitido em 31/07/2026; os dois valem numérico — só dígitos
Este CNPJ é de alguma empresa?

Não sabemos, e esta página não teria como saber. O gerador sorteia a raiz e calcula os dois últimos pela regra pública do módulo 11, sem consultar base alguma. Como os CNPJs emitidos vêm desse mesmo espaço, é perfeitamente possível que o número acima já tenha sido emitido. Passar na conta dos verificadores diz que o número é bem formado, e nada além disso — não diz que ele está livre. Ao contrário do CPF, a titularidade de um CNPJ é pública: a consulta da Receita responde de graça. É por isso que estes números servem no seu ambiente de teste, e só nele.

CNPJ gerado 04.841.692/0001-51
Módulo 11 · regra do CNPJ alfanumérico em vigor desde 31/07/2026 ver o algoritmo

O lote, pronto para copiar

04.841.692/0001-51

Um CNPJ por linha. O CSV sai com cabeçalho cnpj e o JSON como lista de textos, montados no seu navegador.

Como melhorar esta calculadora?

Faltou uma verba, o número saiu diferente do seu contracheque ou alguma palavra ficou confusa? Escreva. Quem lê é a pessoa que mantém o site, e é daí que sai a próxima versão desta página.

Escrever uma sugestão →

Abre seu programa de e-mail com o assunto e a página já preenchidos, e com as perguntas que ajudam a entender o caso. Sem formulário, sem cadastro, sem cookie.

publicidade

336×280 · in-content

Validar um CNPJ

Cole um número para conferir se ele passa na conta dos dígitos verificadores. Aceita os dois formatos pela mesma conta, com ou sem pontuação, e roda no seu navegador — nada é enviado a lugar nenhum. Ela responde se o número é bem formado, nunca se ele existe ou de quem é.

Com ou sem pontuação — o que não for letra ou dígito é ignorado

O veredito se atualiza enquanto você digita.

Veredito

Dígitos verificadoresDígitos verificadores conferem Conferem
Formatolido no próprio número alfanumérico — com letras na raiz
Ordem do estabelecimentoas 4 posições depois da raiz 01DE — filial

O CNPJ alfanumérico, e o que ele quebra

Desde 31 de julho de 2026 a Receita Federal emite CNPJ com letras, pela Instrução Normativa RFB nº 2.229/2024, que alterou a IN RFB nº 2.119/2022. O motivo é prosaico: o espaço de raízes puramente numéricas está perto do fim. Nenhum CNPJ já emitido muda — os dois formatos coexistem, os dois valem para todos os fins, e os alfanuméricos aparecem só nos registros novos. Na prática, o seu sistema precisa aceitar os dois, para sempre.

O formato das 14 posições

O que cada pedaço do número guarda
PosiçõesO que éAceita
1 a 8Raiz — identifica a empresa0-9 e A-Z
9 a 12Ordem — matriz (0001) ou filial0-9 e A-Z
13 e 14Dígitos verificadoressó 0-9

As letras são maiúsculas, de A a Z, sem acento. Os dois verificadores nunca têm letra: são calculados, não sorteados.

O que costuma quebrar

  • A coluna do banco declarada como número. BIGINT, NUMERIC, long — nenhum guarda letra. O CNPJ sempre foi texto de tamanho fixo; agora não dá mais para fingir que não é.
  • A validação com regex de 14 dígitos. Um \d{14} passa a recusar CNPJ legítimo, e quem recebe a recusa é um cliente de verdade.
  • A conversão para inteiro antes do módulo 11. Todo parseInt no CNPJ estoura ou trunca em silêncio quando aparece uma letra.
  • A máscara do formulário. inputmode="numeric" abre o teclado errado no celular e, em alguns componentes, bloqueia a digitação de letra.

O teste mais rápido: gere um CNPJ alfanumérico acima, cole no seu cadastro e veja o que acontece. Se for recusado, você achou o bug antes do seu cliente.

Como o dígito verificador é calculado

O CNPJ tem 14 posições: 12 de base e dois verificadores no fim. Os dois últimos saem de uma conta de módulo 11 sobre os anteriores, e é ela que permite a um sistema recusar um número digitado errado sem consultar ninguém. Vamos calcular os dois de 12.ABC.345/01DE-35, o exemplo publicado pela própria Receita Federal.

A conta abaixo acompanha o CNPJ do validador: troque o número lá e os passos daqui se refazem sobre ele.

1. Cada caractere vira um número: ASCII − 48

É a única parte que a regra de 2026 mudou. Cada posição vale o código do caractere na tabela ASCII menos 48. Como 0 é o 48 da tabela, os dígitos continuam valendo o que valiam — e as letras entram acima do 9: A→17 · B→18 · C→19 · D→20 · E→21, até Z→42. Num CNPJ sem letra nada disso muda coisa alguma, e é por isso que uma implementação só valida os dois formatos.

2. Primeiro verificador: pesos de 5 a 2, com volta ao 9

Multiplique o valor de cada uma das 12 posições da base (12ABC34501DE) pelo seu peso. Os pesos vão de 2 a 9 da direita para a esquerda, recomeçando depois do 9 — numa base de 12, 5 4 3 2 9 8 7 6 5 4 3 2:

1×5 + 2×4 + 17×3 + 18×2 + 19×9 + 3×8 + 4×7 + 5×6 + 0×5 + 1×4 + 20×3 + 21×2 = 459

Divida por 11 e olhe o resto: 459 ÷ 11 = 41, resto 8. A regra é resto menor que 2 vira dígito 0; caso contrário o dígito é 11 − resto. Aqui, 11 − 8 = 3: o primeiro verificador é 3.

3. Segundo verificador: uma posição a mais, pesos deslocados

Agora a base tem 13 posições (12ABC34501DE3), já com o primeiro verificador no fim, e os pesos começam em 6:

1×6 + 2×5 + 17×4 + 18×3 + 19×2 + 3×9 + 4×8 + 5×7 + 0×6 + 1×5 + 20×4 + 21×3 + 3×2 = 424

424 ÷ 11 = 38, resto 611 − 6 = 5. O segundo verificador é 5, e a base fecha em 12.ABC.345/01DE-35.

Se o CNPJ que você digitou termina em outros dois dígitos, é por isso que o validador recusa: a base é a mesma, mas os verificadores dela são estes.

4. A exceção que quase todo validador esquece

00000000000000 passa nessa conta: soma zero, resto zero, dígito zero. É a única sequência de caracteres repetidos que fecha — as outras 35 não —, e é o valor que aparece em coluna mal migrada. Por isso a regra precisa recusá-la numa linha à parte, antes do módulo 11.

Código pronto em JavaScript e Python

As duas fazem o que a seção acima descreve e aceitam os dois formatos: limpam o que não é letra nem dígito, sobem para maiúscula, recusam tamanho errado, sequência repetida e letra nos verificadores, e conferem o módulo 11. Use à vontade, inclusive em projeto comercial.

JavaScript

function validarCNPJ(valor) {
  const c = valor.toUpperCase().replace(/[^0-9A-Z]/g, '');
  if (c.length !== 14) return false;
  if (/^(.)\1{13}$/.test(c)) return false;
  if (!/^\d{2}$/.test(c.slice(12))) return false;

  // ASCII − 48: '0'…'9' viram 0…9 e 'A'…'Z' viram 17…42.
  // Pesos de 2 a 9, da direita para a esquerda, recomeçando depois do 9.
  const dv = (n) => {
    let soma = 0;
    for (let i = 0; i < n; i++) {
      soma += (c.charCodeAt(i) - 48) * (((n - 1 - i) % 8) + 2);
    }
    const resto = soma % 11;
    return resto < 2 ? 0 : 11 - resto;
  };

  return dv(12) === +c[12] && dv(13) === +c[13];
}

Python

import re

def validar_cnpj(valor: str) -> bool:
    c = re.sub(r"[^0-9A-Z]", "", valor.upper())
    if len(c) != 14 or c == c[0] * 14 or not c[12:].isdigit():
        return False

    def dv(n: int) -> int:
        soma = sum((ord(c[i]) - 48) * ((n - 1 - i) % 8 + 2) for i in range(n))
        resto = soma % 11
        return 0 if resto < 2 else 11 - resto

    return dv(12) == int(c[12]) and dv(13) == int(c[13])

Um bom conjunto de casos de teste: 12.ABC.345/01DE-35 (alfanumérico, passa), 11.222.333/0001-81 (numérico, passa), 00.000.000/0000-00 (repetido, precisa ser recusado), 11.222.333/0001-82 (verificador errado) e 12.ABC.345/01DE-3X (letra no verificador, precisa ser recusado).

Para que serve — e para que não serve

Serve

  • Descobrir se o seu sistema aceita o formato novo. Um CNPJ alfanumérico colado no cadastro responde em dois segundos o que uma reunião de planejamento leva uma hora para estimar.
  • Popular banco de desenvolvimento. Uma tabela de fornecedores com CNPJ como chave única precisa de números que não se repitam. O lote desta página sai sem repetição, e por isso o INSERT não estoura no meio.
  • Exercitar máscara e validação de formulário. Conferir que o campo aceita com e sem pontuação, que aceita letra maiúscula e que recusa 13 posições.
  • Testar matriz e filial. Vários estabelecimentos com a mesma raiz, mudando só a ordem, é o que exercita a regra de negócio que agrupa CNPJs por empresa.

Não serve

  • Identificar-se perante alguém. Cadastro em site de terceiro, emissão de nota, contrato, abertura de conta. Isso é uso de documento falso, é crime (CP, art. 307) e é rastreável.
  • Burlar validação de sistema alheio. Passar na conta dos verificadores não torna o número seu. Como a base do CNPJ é pública, qualquer sistema que consulte a Receita recusa na hora — ou, se o número for de alguém, você acaba de usar o CNPJ de outra empresa. Nos dois casos a tentativa fica registrada.
  • Descobrir dados de uma empresa. Esta página não consulta base nenhuma. Para situação cadastral e razão social existe a consulta pública da Receita.

O irmão deste gerador é o gerador de CPF; os outros ficam no hub de geradores. Para as contas que valem dinheiro — Salário líquido, Rescisão trabalhista ou Férias — veja as calculadoras trabalhistas.

Perguntas frequentes

O CNPJ gerado aqui é de alguma empresa?

Não sabemos, e quem garante isso está prometendo o que não pode. O gerador faz a conta dos dois dígitos verificadores sobre uma raiz sorteada, sem consultar base nenhuma — então um número daqui pode coincidir com o de uma empresa real. Diferente do CPF, dá para conferir: a consulta de CNPJ da Receita é pública. Por isso estes números servem no seu ambiente de teste e em lugar nenhum além dele.

Posso usar esse número para me cadastrar em algum site?

Não. Estes números existem para testar software que você mesmo está construindo: popular um banco de desenvolvimento, exercitar a máscara de um formulário, rodar um teste automatizado. Usar documento falso para se identificar é crime, previsto no art. 307 do Código Penal.

O que é o CNPJ alfanumérico e desde quando ele vale?

É o novo formato do CNPJ, instituído pela Instrução Normativa RFB nº 2.229/2024 e implantado em 31 de julho de 2026, porque o espaço de raízes numéricas está perto do fim. As 12 primeiras posições passaram a aceitar letras de A a Z; as duas últimas continuam numéricas, porque são calculadas. Os dois formatos coexistem e nenhum CNPJ já emitido muda.

O que quebra no meu sistema com o CNPJ alfanumérico?

Três coisas: a coluna do banco declarada como número inteiro, que não guarda letra; a validação com regex de 14 dígitos, que passa a recusar CNPJ legítimo; e a conversão para inteiro antes de calcular o verificador, que estoura ou trunca. O teste rápido é gerar um CNPJ alfanumérico aqui e colar no seu formulário.

Como calcular o dígito verificador quando o CNPJ tem letras?

A conta é a mesma de sempre — módulo 11, com pesos de 2 a 9 da direita para a esquerda. O que muda é o valor de cada posição: em vez do dígito, usa-se o código do caractere na tabela ASCII menos 48. Como o caractere 0 vale 48 na tabela, os dígitos continuam valendo o que valiam, e as letras entram acima do 9: A vale 17 e Z vale 42. Por isso um validador só serve aos dois formatos.

Por que 00.000.000/0000-00 é recusado se a conta fecha?

Porque a conta fecha mesmo: soma zero, resto zero, dígito zero. É a única sequência de caracteres repetidos que passa no módulo 11 do CNPJ, e é justamente o valor que aparece em coluna mal migrada. Por isso a regra precisa recusá-la numa linha à parte.