Ferramentas gratuitas para desenvolvedores. Nenhum dado real de pessoas é consultado ou armazenado.Como funciona o algoritmo do CPF →
Fundamentos

Dígitos do CPF e regiões fiscais: o que o número revela

O que cada dígito do CPF significa, a tabela completa das regiões fiscais pelo nono dígito e como descobrir a UF de emissão por código.

Roberto GuerraPublicado em 05 de outubro de 2026Editar no GitHub

Um CPF parece uma sequência de 11 números sem significado, e em boa parte é. Mas dois blocos têm função definida: os dois últimos dígitos são verificadores, e o nono dígito indica a região fiscal onde a inscrição foi feita. Este guia explica cada parte, traz a tabela completa das regiões e mostra como extrair a UF por código, junto com os limites do que essa informação permite concluir.

Anatomia do CPF

Tome o CPF de exemplo 529.982.247-25. A máscara divide o número em quatro grupos, mas a divisão que importa para o código é outra:

Posições Dígitos no exemplo Função
1 a 8 5 2 9 9 8 2 2 4 Número de base, sem significado próprio
9 7 Região fiscal da inscrição
10 2 Primeiro dígito verificador
11 5 Segundo dígito verificador

Os nove primeiros dígitos, juntos, formam o número de inscrição. Os dois últimos são calculados a partir deles com o algoritmo de módulo 11, descrito no guia sobre o algoritmo de validação do CPF. Isso tem uma consequência prática: se você conhece os nove primeiros dígitos, conhece o CPF inteiro, porque os verificadores não acrescentam informação nova, apenas protegem contra erros de digitação.

A pontuação também não faz parte do número. “529.982.247-25” e “52998224725” representam o mesmo CPF, e a forma recomendada de armazenamento é a segunda, como texto de 11 caracteres. Guardar como número inteiro perde o zero à esquerda dos CPFs que começam com 0, e o valor passa a ter só 10 dígitos.

O nono dígito e a tabela de regiões fiscais

A Receita Federal organiza o país em regiões fiscais, e o nono dígito do CPF indica em qual delas a inscrição foi feita. A correspondência é esta:

Nono dígito Região fiscal Estados
0 10ª RS
1 1ª DF, GO, MS, MT, TO
2 2ª AC, AM, AP, PA, RO, RR
3 3ª CE, MA, PI
4 4ª AL, PB, PE, RN
5 5ª BA, SE
6 6ª MG
7 7ª ES, RJ
8 8ª SP
9 9ª PR, SC

O dígito 0 corresponde à décima região, já que só existe uma posição para o número. Fora isso, o dígito coincide com o número da região.

Aplicando a tabela ao exemplo: em 529.982.247-25, o nono dígito é 7, então o CPF foi inscrito na 7ª região fiscal, que abrange Espírito Santo e Rio de Janeiro. Não é possível, só pelo número, dizer qual dos dois. Já em 529.982.248-06 o nono dígito é 8, o que aponta para São Paulo, o único estado da 8ª região. O CPF 111.444.777-35, também válido e muito usado em testes, tem o nono dígito 7 e, portanto, pertence à mesma região de ES e RJ.

Repare que só três regiões correspondem a um estado único: 0 (RS), 6 (MG) e 8 (SP). Nas demais, o nono dígito restringe a origem a um grupo de estados e nada mais.

O que o CPF não revela

Existe muita informação equivocada circulando sobre o que dá para extrair de um CPF. Os pontos abaixo valem para qualquer número.

Não tem data de nascimento. Nenhum grupo de dígitos codifica dia, mês ou ano.

Não tem sexo. Diferente de documentos de alguns outros países, o CPF não reserva faixas ou dígitos para indicar sexo. Qualquer regra que tente inferir isso do número está errada.

Não indica cidade nem é sequencial por município. O único componente geográfico é o nono dígito, que aponta para uma região fiscal, ou seja, um grupo de estados. Os oito primeiros dígitos não identificam município, bairro ou agência, e não é possível montar uma tabela de “CPFs de Campinas” ou “CPFs de Niterói” a partir deles.

Não indica onde a pessoa mora hoje. O nono dígito reflete a região da inscrição. Alguém inscrito no Rio de Janeiro e que hoje mora em Curitiba continua com um CPF da 7ª região.

Não confirma que o número existe. Um CPF com dígitos verificadores corretos e uma região fiscal coerente pode simplesmente nunca ter sido emitido. O guia CPF válido vs. CPF existente trata dessa diferença.

Na prática, isso significa que usar o nono dígito para decisões de negócio é arriscado. Ele serve como informação de apoio, por exemplo para exibir “inscrito na região ES/RJ” em uma tela de conferência, mas não como substituto do endereço informado pela pessoa.

Como descobrir a UF pelo código

A lógica é direta: limpe a pontuação, confira que sobraram 11 dígitos, leia o nono dígito e procure na tabela. Em JavaScript, a posição 9 é o índice 8, já que strings começam em 0.

uf-do-cpf.js
const REGIOES_FISCAIS = {
'0': ['RS'],
'1': ['DF', 'GO', 'MS', 'MT', 'TO'],
'2': ['AC', 'AM', 'AP', 'PA', 'RO', 'RR'],
'3': ['CE', 'MA', 'PI'],
'4': ['AL', 'PB', 'PE', 'RN'],
'5': ['BA', 'SE'],
'6': ['MG'],
'7': ['ES', 'RJ'],
'8': ['SP'],
'9': ['PR', 'SC'],
};

function limparCpf(valor) {
return String(valor ?? '').replace(/\D/g, '');
}

function ufDoCpf(valor) {
const d = limparCpf(valor);
if (d.length !== 11) return [];
return REGIOES_FISCAIS[d[8]] ?? [];
}

function digitoDaUf(uf) {
const alvo = uf.trim().toUpperCase();
for (const [digito, ufs] of Object.entries(REGIOES_FISCAIS)) {
  if (ufs.includes(alvo)) return Number(digito);
}
return undefined;
}

ufDoCpf('529.982.247-25'); // ['ES', 'RJ']
ufDoCpf('529.982.248-06'); // ['SP']
ufDoCpf('111.111.111-11'); // ['DF', 'GO', 'MS', 'MT', 'TO'] (não valida!)
digitoDaUf('sp');          // 8

Dois cuidados com essa função.

Primeiro, ela não valida o CPF. Para 111.111.111-11, que não é considerado válido, ela devolve a lista da 1ª região, porque só olha o nono dígito. O mesmo vale para 529.982.247-26: o nono dígito é 7 e a função devolve ES e RJ, embora o segundo verificador esteja errado. Se a UF só faz sentido para CPFs válidos, chame o validador antes e só depois consulte a região.

Segundo, ela devolve uma lista, não um estado. Modelar o retorno como uma única sigla obrigaria a escolher arbitrariamente entre ES e RJ, ou entre os cinco estados da 1ª região. A lista vazia sinaliza entrada com tamanho errado.

A função inversa, digitoDaUf, é útil para gerar CPFs de teste de um estado específico: você escolhe oito dígitos aleatórios, coloca o dígito da UF na nona posição e calcula os verificadores. É isso que o gerador de CPF faz quando você seleciona um estado. Os números gerados podem coincidir com um CPF real por acaso, por isso servem apenas para testes.

Se você precisa da região sem escrever código, o validador de CPF mostra a região fiscal de qualquer número válido, e a API devolve o campo uf com a mesma lista.

CPF e mudança de estado

O CPF é atribuído uma vez e acompanha a pessoa por toda a vida. Mudar de estado, de cidade ou de país não gera um número novo, e o nono dígito continua apontando para a região da inscrição original.

Isso tem implicações para sistemas que tentam cruzar o nono dígito com o endereço. Uma regra como “recusar o cadastro se o CPF é da 8ª região e o endereço não é de São Paulo” vai recusar todo cliente inscrito em São Paulo que se mudou para outro estado. Da mesma forma, um sistema que usa a região do CPF para escolher a filial de atendimento vai errar com frequência.

Também não há motivo para atualizar ou recalcular o CPF quando o endereço muda. Se a sua aplicação permite editar o endereço, o CPF deve permanecer imutável no cadastro, e qualquer alteração no número deve ser tratada como correção de digitação, com a devida validação, e não como consequência da mudança.

Em resumo: o nono dígito informa onde o CPF nasceu, não onde a pessoa está. Use-o como dado histórico e, para a localização atual, confie no endereço informado.

Perguntas frequentes

O nono dígito do CPF indica onde a pessoa mora?

Não. Ele indica a região fiscal em que o CPF foi inscrito. A pessoa pode ter se mudado depois, e o número continua o mesmo.

Dá para saber a data de nascimento ou o sexo pelo CPF?

Não. Os nove primeiros dígitos não codificam data de nascimento, sexo nem idade. O único dígito com significado próprio é o nono, que indica a região fiscal.

Por que a função de UF devolve uma lista e não um estado só?

Porque cada região fiscal agrupa vários estados, com exceção das regiões 0, 6 e 8, que correspondem a RS, MG e SP. Pelo nono dígito 7, por exemplo, só é possível dizer que o CPF foi inscrito no Espírito Santo ou no Rio de Janeiro.

Leia também