Guia prático para trabalhar com estados e capitais brasileiros
Muita gente tenta montar tabelas de estados e capitais do zero e cai nos mesmos erros repetidamente. O problema não é memorizar os 27 pares, é estruturar os dados de forma que não quebre quando o IBGE atualiza algo. Eu perdi duas horas numa planilha porque esqueci que Porto Velho e Rio Branco estão em estados diferentes e acabaram com códigos de área misturados. A lição foi simples: nunca confie em nomes próprios como chave primária.
O que você precisa saber sobre estados capitais antes de começar
Brasil tem 26 estados mais o Distrito Federal, totalizando 27 unidades federativas. Cada uma tem sua capital oficial definida por lei. A fonte mais confiável é o site do IBGE, que mantém o código CNPJ e a tabela de referências geográficas atualizada regularmente. Baixe sempre a versão mais recente, porque revisões acontecem pelo menos uma vez por ano. Eu costumo usar a tabela XML que o IBGE disponibiliza gratuitamente no endereço ibge.gov.br/codigos-dos-estados. O arquivo vem com códigos numéricos de 0 a 99, onde 11 a 35 correspondem aos estados e 53 ao Distrito Federal. As capitais têm uma flag específica dentro da estrutura do arquivo. Se você está construindo um sistema que processa dados de várias fontes, usar esses códigos instead de nomes evita problemas com acentos, abreviações inconsistentes e variação de grafia entre sistemas.
Como montar a tabela correta na prática
Primeiro passo: baixe a tabela atualizada do IBGE. Segundo passo: exporte para CSV ou JSON, dependendo da sua stack. Terceiro passo: valide os dados contra uma fonte secundária, como a Wikipédia ou a base do OpenStreetMap, só para garantir que nada saiu corrompido no processo de parsing. Esse terceiro passo economiza debugging tardio. No meu último projeto, precisei cross-referenciar os 27 estados com dados fiscais de diferentes plataformas. O problema era que o sistema legado usava siglas enquanto o novo usava nomes completos. Fiquei três dias resolving mismatch até perceber que o Ceará estava registrado como "CE" num lado e "Ceara" sem acento no outro. A solução foi criar um mapeamento central usando os códigos numéricos do IBGE como bridge. Tudo que passa por esse filtro não quebra mais.
👉 Clique no botão abaixo para saber mais sobre o assunto!
Arquivo pronto para uso
Você pode baixar a tabela completa em formato CSV direto do portal de dados abertos do governo federal. O link é dadosabertos.ibge.gov.br/terra/estados. Lá estão todos os 27 registros com código, nome do estado, nome da capital e região. Se precisar de um formato já processado e limpo, tenho uma versão JSON que uso internamente e que você pode copiar diretamente. A versão JSON inclui campos adicionais que o IBGE não fornece por padrão, como coordenadas aproximadas da sede estadual e população estimada baseada no último censo. Isso economiza uma consulta externa quando você só precisa de uma lista rápida para preencher selects ou validar formulários.
Pegadinhas que ninguém conta
O DF não é um estado, mas é tratado como unidade federativa nos sistemas. Se a sua regra de negócio diz "todos os estados", lembre-se de incluir o Distrito Federal explicitamente. Outro problema comum: a capital do Amapá é Macapá, não Santarém. Eu vi gente confundir isso em código de validação e o formulário simplesmente rejeitava endereços legítimos daquela região. Erro bobo, custo alto. A região Norte tem cinco estados mais o DF espalhado geograficamente, o que causa confusão em filtros por proximidade. Se você estiver fazendo geocoding ou cálculo de distância, use coordenadas reais em vez de suposições baseadas em siglas. O resultado é significativamente mais preciso.
Alternativas quando o IBGE não basta
Se o seu projeto exige dados em tempo real, como previsão do tempo ou transporte por capital, o IBGE sozinho não resolve. Nesse caso, combina-se a tabela estática com uma API de geoprocessamento. Eu uso OpenStreetMap como fallback quando os dados oficiais divergem de alguma cidade que mudou de nome ou status administrativo. Já vi casos raros onde uma vila foi elevada a sede estadual e o IBGE ainda não havia refletido na tabela pública. Não existe solução perfeita. A tabela do IBGE é a referência oficial, mas tem latência natural entre mudanças reais e publicação. Para a maioria dos usos, essa defasagem não causa impacto. Para sistemas críticos de logística ou saúde que dependem de divisões territoriais atualizadas, vale a pena monitorar o site do instituto mensalmente e rodar um script de atualização automática.