DDD

Códigos de área (DDD) em uso no Plano Geral de Numeração da Anatel e os estados que atendem.

  • Matriz de paridade

Decodificar

Retorna o estado e a região a que pertence um DDD, entre os 67 DDDs em uso no Plano Geral de Numeração da Anatel.

  • areaCode pode ser uma string ou um inteiro não negativo.
  • De uma string, todo caractere que não é dígito é removido antes, como na 2.4.0: "(0xx11)" e " 11 " resolvem para 11.
  • O resultado traz o DDD, o estado sede (sigla e nome), a região (código e nome) e todos os estados que ele atende.
  • A sede é o estado da cidade em torno da qual o código foi alocado, não necessariamente o estado com a maioria dos municípios: o DDD 61 tem sede no DF, que tem só 1 dos seus 13 municípios (Brasília).
  • Quatro DDDs cruzam uma divisa estadual (61, 42, 47 e 49). Para eles, a lista de estados também tem o outro estado, com a sede primeiro: o 61 dá DF, GO, o 42 dá PR, SC, o 47 e o 49 dão SC, PR.
  • Retorna null para um DDD fora de uso, um número negativo ou não inteiro, ou qualquer outro valor.
ParâmetroTipoObrigatório
areaCodestring | numbersim
retornaAreaCodeInfo | null

Retorna o estado e a região a que um DDD brasileiro (código de área) pertence, dentre os 67 DDDs em uso no Plano Geral de Numeração da Anatel. Aceita string ou número inteiro não negativo.

  • Uma string tem removido todo caractere que não é dígito, então '(11)', '0xx11' e 'DDD 11' são o DDD 11.
  • Retorna um AreaCodeInfo: areaCode, stateCode, stateName, regionCode, regionName e stateCodes. Retorna null quando o DDD não está em uso.
  • stateCode é o estado sede do DDD. Para os quatro DDDs que cruzam uma divisa (61, 42, 47 e 49) stateCodes lista também o outro estado, a sede primeiro.
import { getAreaCodeInfo } from '@brazilian-utils/brazilian-utils';

getAreaCodeInfo('11');
// { areaCode: 11, stateCode: 'SP', stateName: 'São Paulo', regionCode: 'SE', regionName: 'Sudeste', stateCodes: ['SP'] }

getAreaCodeInfo(21);
// { areaCode: 21, stateCode: 'RJ', stateName: 'Rio de Janeiro', regionCode: 'SE', regionName: 'Sudeste', stateCodes: ['RJ'] }

getAreaCodeInfo('61');
// { areaCode: 61, stateCode: 'DF', stateName: 'Distrito Federal', regionCode: 'CO', regionName: 'Centro-Oeste', stateCodes: ['DF', 'GO'] }

getAreaCodeInfo('00'); // null
getAreaCodeInfo('(0xx11)'); // o mesmo que '11'
getAreaCodeInfo(-11); // null
getAreaCodeInfo(1.1); // null

Fonte: Resolução Anatel nº 749/2022, Códigos Nacionais da Anatel, tabela da Anatel dos Códigos Nacionais por município (21/09/2026).

Código: brazilian-utils/javascript
Teste com JavaScript getAreaCodeInfo
As entradas começam com o primeiro caso compartilhado. Mude uma para ver o novo resultado.

Roda @brazilian-utils/brazilian-utils 2.5.0 no seu navegador.

Casos de teste compartilhados (13) e o resultado em cada biblioteca areaCode.getInfo

Get by municipality code

Retorna o DDD (o Código Nacional do Plano Geral de Numeração) que um município disca, dado o código IBGE de 7 dígitos.

  • code é lido como em municipality.getByCode: uma string da qual todo caractere que não é dígito é removido, ou um inteiro não negativo.
  • Cada um dos 5.571 municípios tem exatamente um DDD, então null só significa que o código não é de município.
  • O DDD quase sempre segue a divisa estadual. As exceções: o 61, DDD de Brasília, também atende 12 municípios de Goiás. Porto União (SC) disca 42, Rio Negro (PR) disca 47 e Barracão (PR) disca 49.
  • areaCode.getInfo dá o estado e a região sede do DDD.
  • A tabela vem do arquivo de Códigos Nacionais da Anatel de 21/09/2026, só linhas vigentes.
ParâmetroTipoObrigatório
codestring | numbersim
retornanumber | null

Retorna o DDD (código de área) de um município brasileiro a partir do código IBGE de 7 dígitos, segundo a tabela da Anatel dos Códigos Nacionais em vigor.

  • Aceita o código como o getMunicipalityByCode: string (com todo caractere que não é dígito removido) ou número inteiro não negativo.
  • Retorna o DDD como número, ou null quando o código não é de um município. Cada um dos 5.571 municípios tem exatamente um DDD.
  • O DDD quase sempre segue a divisa dos estados. As exceções: o 61 também cobre 12 municípios de Goiás no entorno de Brasília, e Porto União (SC) usa o 42, Rio Negro (PR) o 47 e Barracão (PR) o 49.
import { getAreaCodeByMunicipalityCode } from '@brazilian-utils/brazilian-utils';

getAreaCodeByMunicipalityCode('3550308'); // 11 (São Paulo/SP)
getAreaCodeByMunicipalityCode(3304557); // 21 (Rio de Janeiro/RJ)
getAreaCodeByMunicipalityCode('4122305'); // 47 (Rio Negro/PR)
getAreaCodeByMunicipalityCode('0000000'); // null

Fonte: Resolução Anatel nº 749/2022, Códigos Nacionais da Anatel, tabela da Anatel dos Códigos Nacionais por município (21/09/2026).

Código: brazilian-utils/javascript
Teste com JavaScript getAreaCodeByMunicipalityCode
As entradas começam com o primeiro caso compartilhado. Mude uma para ver o novo resultado.

Roda @brazilian-utils/brazilian-utils 2.5.0 no seu navegador.

Casos de teste compartilhados (21) e o resultado em cada biblioteca areaCode.getByMunicipalityCode

List by state

Retorna todos os DDDs que atendem um estado, em ordem crescente.

  • A comparação de stateCode ignora maiúsculas e minúsculas e espaços nas pontas, como já acontecia na 2.4.0.
  • Um DDD que cruza uma divisa aparece em todos os estados que atende.
  • Retorna uma lista vazia quando stateCode não é um estado brasileiro.
ParâmetroTipoObrigatório
stateCodestringsim
retornanumber[]

Retorna todos os DDDs (códigos de área) que atendem um estado brasileiro, dentro do Plano Geral de Numeração da Anatel. A comparação não diferencia maiúsculas de minúsculas e o resultado vem em ordem crescente.

  • Retorna [] quando stateCode não é um estado brasileiro.
  • Um DDD de divisa (os mesmos quatro de getAreaCodeInfo) é listado em cada estado que atende.
import { getAreaCodesByState } from '@brazilian-utils/brazilian-utils';

getAreaCodesByState('SP'); // [11, 12, 13, 14, 15, 16, 17, 18, 19]
getAreaCodesByState('ac'); // [68]
getAreaCodesByState('DF'); // [61]
getAreaCodesByState('GO'); // [61, 62, 64]
getAreaCodesByState('SC'); // [42, 47, 48, 49]
getAreaCodesByState('XX'); // []

Fonte: Resolução Anatel nº 749/2022, Códigos Nacionais da Anatel, tabela da Anatel dos Códigos Nacionais por município (21/09/2026).

Código: brazilian-utils/javascript
Teste com JavaScript getAreaCodesByState
As entradas começam com o primeiro caso compartilhado. Mude uma para ver o novo resultado.

Roda @brazilian-utils/brazilian-utils 2.5.0 no seu navegador.

Casos de teste compartilhados (14) e o resultado em cada biblioteca areaCode.listByState

Fontes oficiais

Veja também Telefone, Estados (UF), Municípios

Atualizado em

Nesta página