Pular para o conteúdo
‹ Início

Sobre os dados

De onde vêm os números

Todos os números de eleição do site vêm de publicações oficiais do Tribunal Superior Eleitoral (TSE). Não há pesquisa própria nem estimativa. A única outra fonte é geográfica, do Instituto Brasileiro de Geografia e Estatística (IBGE), e não traz nenhum resultado: o centro de cada município, usado só pelo botão "Usar minha localização".

Resultados de 2026: arquivos oficiais assinados, um por município, do site de resultados do TSE (resultados.tse.jus.br), coletados em 26/10/2026. Estão finalizados nos dois turnos: 5.571 municípios, 497.897 de 497.897 seções apuradas, mais 186 postos de votação no exterior.

Resultados de 2018 e 2022: bases de dados abertos do TSE com a votação de presidente por município e zona, coletadas em 26/10/2026 e somadas por município — 5.570 municípios por ciclo, só as linhas de presidente do arquivo nacional.

Manifesto dos dados

Cada fonte fica registrada em data/manifest.json, no repositório: endereço, data da coleta (UTC), tamanho original em bytes e hash SHA-256 do arquivo baixado. Assim dá para conferir sempre se o que o TSE publica hoje é o mesmo arquivo que gerou os números daqui.

  • votacao_candidato_munzona_2018.zipDados abertos do TSE: votos de presidente por município e zonaColeta (UTC): 26/10/2026 21:55 · 395.389.280 bytes · SHA-256: f880848ef4ba…
  • detalhe_votacao_munzona_2018.zipDados abertos do TSE: aptos, comparecimento, abstenção, brancos e nulosColeta (UTC): 26/10/2026 21:55 · 4.269.741 bytes · SHA-256: df68c258a226…
  • votacao_candidato_munzona_2022.zipDados abertos do TSE: votos de presidente por município e zonaColeta (UTC): 26/10/2026 21:55 · 642.592.078 bytes · SHA-256: 56265a50afc3…
  • detalhe_votacao_munzona_2022.zipDados abertos do TSE: aptos, comparecimento, abstenção, brancos e nulosColeta (UTC): 26/10/2026 21:55 · 4.429.327 bytes · SHA-256: dbf41c5e95c2…
  • resultados.tse.jus.br/oficial/ele2026Resultados oficiais assinados, um arquivo por município (1º e 2º turnos)11.517 arquivos · 11.516 finais · geração mais recente do TSE: 25/10/2026 23:27 · digest dos arquivos: 62db05bd3b2b…Coleta (UTC): 26/10/2026
  • servicodados.ibge.gov.br/api/v3/malhas (metadados por estado)IBGE: centro de cada município, para o botão "Usar minha localização" (só geografia, nenhum resultado)27 arquivos · digest dos arquivos: 32453d216cc6…Coleta (UTC): 27/10/2026 18:44

O digest da linha de 2026 reúne em um único SHA-256 o hash de cada arquivo coletado, ordenado por nome, e a geração é a data mais recente que o TSE marcou em um arquivo coletado. Manifesto no GitHub: data/manifest.json ›

O site lê só as tabelas que o pipeline grava somadas por município: cities.csv (5.760 linhas), turnout.csv (34.498 linhas), votes.csv (240.981 linhas), candidates.csv (42 linhas), centroids.csv (5.570 linhas), todas conferidas contra o manifesto. Os centros dos municípios (centroids.csv) vêm do serviço de malhas do IBGE, um arquivo por estado; o município de Boa Esperança do Norte/MT, criado depois da malha que o IBGE publica, não tem centro e por isso nunca é oferecido como a cidade mais próxima. Os arquivos originais do TSE ficam no cache da coleta, não no site: nada aqui baixa de novo um arquivo do TSE para mostrar um número.

Como os números do site são calculados

  • Votos válidos: a soma dos dois candidatos do 2º turno; brancos e nulos ficam de fora. A porcentagem de um candidato divide os votos dele por esses votos válidos.
  • Votaram / Não votaram: "Votaram" divide os votos válidos pelo eleitorado apto do turno; "Não votaram" é o resto do eleitorado, repartido em abstenção, brancos e nulos. Nulos incluem os que o TSE anota à parte como anulados em apuração separada.
  • Porcentagens inteiras: as fatias de cada barra são arredondadas de forma que somem exatamente 100%. Por isso uma fatia pode ficar uma décima acima ou abaixo do exato.
  • Margem (pp): a diferença entre as porcentagens de votos válidos dos dois candidatos do 2º turno, em pontos percentuais. Com 33,6% e 30,0% dos votos válidos, a margem é 3,6 pp.
  • Virada: a mudança da margem entre dois resultados, em pontos percentuais — do 1º para o 2º turno de 2026, ou de 2026 contra 2022. Na comparação com 2022, Lula é comparado com Lula e Flavio Bolsonaro com Bolsonaro, que foi o candidato de número 22 nos dois anos.
  • Grupos: cidades agrupadas pelo vencedor do 2º turno de 2018 e de 2022; cada grupo mostra o resultado de 2026 pela porcentagem de cidades. Venceu quem teve mais votos que o outro candidato do 2º turno; empates ficam fora das barras e aparecem como nota.
  • Exterior: os postos de votação fora do Brasil (UF zz) entram nos totais nacionais e não entram nos agregados por região e por estado.

O que foi conferido

  • Em cada município e turno: votos válidos + brancos + nulos + anulados em apuração separada = comparecimento.
  • No 2º turno de cada ciclo: a soma dos votos dos dois candidatos iguala os votos válidos de cada município.
  • Os totais do Brasil são os totais oficiais do TSE, com o exterior incluído: no 2º turno de 2026, Lula 64.256.232, Flavio Bolsonaro 59.826.041, 124.082.273 votos válidos — os mesmos números do arquivo nacional do próprio TSE, não uma soma parcial.
  • A votação por município de 2018 e 2022 bateu, município por município, com os arquivos da etapa anterior de análise deste projeto.
  • Rodar make data duas vezes deixa cada arquivo byte a byte igual: UTF-8, mesma ordem de linhas, sem carimbo de hora dentro dos dados (as datas ficam no manifesto).
  • make data-check revalida sem rede: tamanho e SHA-256 de cada tabela, contagem de linhas e as regras de soma acima.

O que ainda não temos

  • Relatório da janela de extensão de horário de votação: não entra nesta versão (v1). Por isso nada no site diz quando uma seção abriu atrasada ou fechou depois do horário.
  • Dados mais finos do TSE: por seção, por local de votação e por bairro. Esta versão usa só o total por município; nada aqui mostra urna, seção ou bairro.

Limites

  • Os percentuais de 2018 e 2022 usam como base os dois candidatos do 2º turno de cada ciclo.
  • Boa Esperança do Norte/MT existe só em 2026 e não tem dados nos ciclos anteriores: 5.570 de 5.571 municípios por ciclo. O site mostra "sem dados", não zero.
  • Salvador/BA, 1º turno de 2018, zona 18: o comparecimento inclui 746 votos que não são válidos, brancos nem nulos — o TSE os marca como anulados em apuração separada. Os arquivos deste projeto têm uma coluna só para esses votos, e a conta acima só fecha com ela.
  • Eleitorado apto nem sempre fecha com comparecimento + abstenção: em 2018 restam 470 eleitores e, em 2022, 657 — seções não instaladas, que o TSE informa; em 2026 restam 423, sem campo correspondente nos arquivos. Como "Não votaram" parte do eleitorado apto, esse resto está contado ali.
  • Postos do exterior em 2026: 40 deles (de 186) não estavam instalados — eleitorado declarado, comparecimento zero em 80 postos-turno.
  • Constantes nacionais de 2018 e 2022 do manifesto foram copiadas das páginas de resultados do TSE na coleta de 26/10/2026 e não puderam ser re-verificadas em outra fonte nesse dia (arquivos históricos do TSE fora do ar). Exceção: o eleitorado de 2022 (156.454.011), re-verificado no arquivo de perfil de comparecimento do TSE.
  • O mapa por estado mostra área, não eleitores.
  • Compare cidades por pontos percentuais, não por votos absolutos: o eleitorado de cada município é muito diferente.

Confira você mesmo

  1. Abra o manifesto do repositório e escolha a fonte do resultado que quer conferir.
  2. Baixe o arquivo no TSE pelo endereço do manifesto e confira o hash: o arquivo publicado hoje deve bater com o SHA-256 registrado.
  3. Some os votos de presidente do município e compare com o número na página dele.
  4. No repositório, rode make data-check: refaz, sem rede, todas as conferências da lista acima.

Edições dos dados

Uma edição é uma cópia datada de todos os dados do site, publicada em um endereço próprio que nunca muda depois de publicado. Uma edição nova não apaga nem altera as anteriores: um número citado de uma edição continua o mesmo para quem abrir o endereço depois. O rodapé de cada página diz de qual edição vêm os números e leva até ela.

Edição que o site mostra agora: 27/10/2026. Todas as edições, da mais nova para a mais antiga: lista de edições e feed Atom.

Final, não ao vivo

O site mostra resultados finais, não apuração ao vivo. Uma edição nova só é publicada quando o TSE marcou como final o resultado de todos os municípios e turnos de 2026 e quando as conferências passam: o formato das tabelas, os totais nacionais iguais aos do TSE e dois builds que dão exatamente os mesmos bytes. Dados parciais nunca são publicados. Se uma conferência falha, nada é publicado, o motivo fica registrado no repositório e as edições já publicadas continuam como estão. Cada publicação automática aparece no feed, com as conferências que passou.

Dados abertos de cada edição

A página de cada edição oferece os resultados por município em CSV e NDJSON, com dicionário de dados, LEIAME, arquivo de citação e o SHA-256 de cada arquivo. Os arquivos são distribuídos sob a licença Creative Commons Atribuição 4.0 (CC BY 4.0): cite o TSE como origem dos resultados e o projeto pela compilação. Os resultados em si são publicações oficiais do TSE.

Como citar uma edição

Voto a Voto. Resultados da eleição presidencial por município, edição de 27/10/2026 (2026-10-27). https://voto-a-voto.com/edicoes/2026-10-27/

Cite sempre o endereço da edição, não o de uma página do site, que mostra a edição mais recente.

Código aberto

Página do projeto: github.com/hvasoares/voto-a-voto-oss.

O pipeline que coleta e confere os dados, o manifesto das fontes e o código deste site ficam no repositório, abertos para conferência.

Fontes e licença

Nenhum material de terceiros é usado no site: as fontes do texto são as do navegador do leitor e toda figura é desenhada a partir dos dados do TSE e da geografia do IBGE. Os números vêm das publicações oficiais do TSE listadas em "De onde vêm os números" — os resultados assinados de 2026 e o diretório de dados abertos do TSE; o IBGE só dá o centro de cada município.

O repositório distribui os arquivos somados a partir desses originais e registra, no manifesto, o URL, a data e o hash de cada um deles: a versão exata usada pode ser conferida a qualquer momento junto ao TSE.

Privacidade

O que este site coleta de você: nada pessoal.

  • A navegação é estática; não há conta nem formulário.
  • O texto digitado na busca não é enviado: a busca roda no próprio navegador.
  • O botão "Usar minha localização" só pede a posição ao navegador depois do seu toque. A posição é usada no seu aparelho, contra o centro de cada município, para abrir a cidade mais próxima; ela não é enviada nem guardada, e o site só baixa a lista dos centros (um arquivo igual para todos).
  • Para medir como o site é usado, este site usa o Google Analytics — páginas vistas, cidades e relatórios abertos, quantos resultados uma busca mostrou (nunca o texto digitado), imagens baixadas, a tela do QR e a impressão do pôster. Ao utilizar nossos serviços, você está ciente dessa funcionalidade; o aviso aparece na primeira visita e o botão "Prosseguir" o guarda como visto.
  • Nada pessoal é enviado e nenhuma função do site depende dessa medição: se preferir, bloqueie o domínio googletagmanager.com no seu navegador e o site continua inteiro.

O que fica guardado no seu aparelho

O site lembra de poucas coisas, só no navegador deste aparelho (armazenamento local). Nada disso é enviado a nós nem a ninguém, e nenhuma delas é necessária: com o armazenamento do navegador bloqueado, o site funciona inteiro, apenas sem lembrar.

  • voto-a-voto:place: a cidade ou o estado que você escolheu na página inicial, para o atalho "Sua cidade".
  • voto-a-voto:register: a linguagem escolhida no cartão da cidade (padrão ou simples).
  • voto-a-voto:notice: o aviso de medição já visto (o botão "Prosseguir").

O atalho "Sua cidade" da página inicial mostra o que você escolheu; "esquecer meus dados", nele, apaga tudo o que está na lista acima.

Anúncios e apoio

Doações e análise de uso são separadas. Não há anúncios em nenhuma página.

Edição 27/10/2026Privacidade