O Gerador De CPF O Gerador De CPF

CPF por Estado: O Significado do Dígito Regional

O nono dígito do CPF (o último antes dos dois dígitos verificadores) indica a região fiscal onde o CPF foi emitido. São 10 regiões (dígitos 0 a 9), cada uma cobrindo um ou mais estados brasileiros.

Formato do CPF

XXX.XXX.XX R -VV
             ↑  ↑↑
             │  └┘ Dígitos verificadores (calculados pelo algoritmo)
             └─── Dígito regional (9º dígito)

O CPF 529.982.24**7**-25 tem dígito regional 7, indicando emissão na região fiscal que cobre Minas Gerais, Espírito Santo, Rio de Janeiro.

Tabela de dígitos regionais

DígitoRegião fiscalEstados
05ª Região (Porto Alegre)Rio Grande do Sul
18ª Região (São Paulo)Distrito Federal, Goiás, Mato Grosso, Mato Grosso do Sul, Tocantins
23ª Região (Fortaleza)Amazonas, Pará, Roraima, Amapá, Acre, Rondônia
32ª Região (Belém)Ceará, Maranhão, Piauí
44ª Região (Recife)Paraíba, Pernambuco, Alagoas, Rio Grande do Norte
55ª Região (Salvador)Bahia, Sergipe
66ª Região (Belo Horizonte)Minas Gerais
77ª Região (Rio de Janeiro)Rio de Janeiro, Espírito Santo
88ª Região (São Paulo)São Paulo
99ª Região (Curitiba)Paraná, Santa Catarina

Observações importantes

O dígito regional indica onde o CPF foi emitido, não onde a pessoa mora. Uma pessoa nascida no Rio Grande do Sul (dígito 0) que se mudou para São Paulo continua com o mesmo CPF. O dígito reflete o cadastro original, não o endereço atual.

CPFs emitidos pela internet (a partir de 2010 aproximadamente) podem ter o dígito baseado no endereço informado no momento do cadastro, não necessariamente na região fiscal da repartição.

O dígito regional não é uma regra de validação. O algoritmo de módulo 11 verifica apenas os dois dígitos verificadores (10º e 11º). O dígito regional (9º) entra no cálculo como qualquer outro dígito, mas não é verificado isoladamente.

Uso prático

O dígito regional pode ser usado para:

  • Análise demográfica: distribuição geográfica de cadastros em um sistema
  • Detecção de fraude: CPF com dígito regional inconsistente com o endereço informado pode indicar dado falso (mas não é conclusivo, pessoas migram)
  • Geração de CPF para testes: ao gerar CPFs para ambientes de teste, o dígito regional permite simular distribuição geográfica realista
function getRegiao(cpf) {
  const digits = cpf.replace(/\D/g, "");
  if (digits.length !== 11) return null;

  const regioes = {
    "0": "RS",
    "1": "DF, GO, MT, MS, TO",
    "2": "AM, PA, RR, AP, AC, RO",
    "3": "CE, MA, PI",
    "4": "PB, PE, AL, RN",
    "5": "BA, SE",
    "6": "MG",
    "7": "RJ, ES",
    "8": "SP",
    "9": "PR, SC",
  };

  return regioes[digits[8]] || null;
}

getRegiao("529.982.247-25"); // "RJ, ES"
getRegiao("123.456.780-62"); // "RS"

Distribuição dos CPFs

São Paulo (dígito 8) e Minas Gerais (dígito 6) concentram a maior parte dos CPFs emitidos, refletindo a população desses estados. Os dígitos 0 (RS) e 2 (região Norte) cobrem as menores parcelas.

Isso explica por que o gerador de CPF permite filtrar por estado: os 9 primeiros dígitos são gerados aleatoriamente com o dígito regional correspondente, e os dois verificadores são calculados pelo algoritmo.

Por que isso importa para desenvolvedores

  1. CPFs com zero à esquerda são reais: dígito 0 (RS) gera CPFs como 0XX.XXX.XX0-XX. Se seu sistema perde zeros à esquerda, CPFs gaúchos ficam inválidos
  2. O dígito regional não é validação: não rejeite um CPF porque o dígito não “bate” com o estado informado, a pessoa pode ter migrado
  3. Testes distribuídos: ao popular bancos de teste, varie o dígito regional para cobrir edge cases (especialmente o dígito 0 para testar zeros à esquerda)

Veja também: algoritmo de validação do CPF e validar CPF em 9 linguagens.