Checagens / Urnas
Votos liberados pelo mesário e "pianistas": o que os logs de todas as urnas mostram
Lemos o log de todas as urnas do 2º turno. Liberações seguidas pelo mesário existem, mas são raras e se concentram em poucos lugares. Nessas seções, comparecimento e resultado ficaram iguais aos das vizinhas. Os testes não mostram rastro de votos no lugar de eleitores; mostram falhas de leitura de digital.
Em resumo
- 6,73% dos votos do 2º turno (8.632.459) foram liberados pelo mesário depois de 4 tentativas sem
reconhecer a digital do eleitor. No 1º turno, a taxa foi de 6,66%.
- Liberações seguidas existem, mas são raras: 133 das 497.896 seções do Brasil tiveram 20 ou mais votos
seguidos liberados pelo mesário, concentradas em poucos municípios.
- Nessas seções, o comparecimento e o resultado ficaram iguais aos das outras seções do mesmo local de votação.
- Não encontramos rastro de votos dados no lugar de eleitores ("pianistas") nos quatro testes que os logs e os boletins
permitem. Encontramos falhas: seções em que o leitor quase não reconheceu digitais durante horas, e 2.791.357 liberações (32,3%) em que nem a digital do mesário foi reconhecida.
Como a urna libera o eleitor
- O mesário digita o título ou o CPF do eleitor.
- O eleitor põe o dedo no leitor. A urna faz até 4 tentativas.
- Se nenhuma reconhecer a digital, o mesário pergunta um dado pessoal (o ano de nascimento) e confirma com a própria digital.
- A urna libera o voto.
Quem não tem biometria cadastrada é liberado pelo documento, sem tentativa de digital. Tudo fica no log da urna, com hora, minuto e segundo. O log não registra em quem a pessoa votou nem quem estava diante da urna.
Quantos foram
| Como o voto foi liberado | Votos | % dos votos |
|---|---|---|
| Digital do eleitor reconhecida | 111.970.134 | 87,32 |
| Liberado pelo mesário (4 tentativas sem reconhecer a digital) | 8.632.459 | 6,73 |
| Eleitor sem biometria cadastrada | 7.252.020 | 5,66 |
| Exterior (a urna não usa biometria) | 380.612 | 0,30 |
| Total (499.177 urnas com log) | 128.235.225 | 100 |
O total liberado pelo mesário é o mesmo da linha "Habilitação biográfica" dos boletins de urna (8.632.462 nas mesmas seções): são duas contagens independentes do mesmo fato, uma no log e outra no boletim.
Liberações seguidas
Em cada seção, contamos a maior sequência de votos seguidos liberados pelo mesário.
| Maior sequência de votos seguidos liberados pelo mesário | Seções |
|---|---|
| até 4 | 496.040 |
| 5 a 9 | 1.661 |
| 10 a 19 | 62 |
| 20 a 49 | 103 |
| 50 ou mais | 30 |
Em 99,6% das seções, a maior sequência foi de até 4 votos. As seções com 20 ou mais se concentram em poucos lugares: Lauro de Freitas (9), Dias d'Ávila, Candeias e Simões Filho (5 cada), na região de Salvador (BA); Rio de Janeiro (6); Trindade, GO (4). Nas seções com 20 ou mais seguidas, a digital do mesário também falhou mais: não foi reconhecida em 42,2% das liberações, contra 32,3% no resto do país. Esse é o retrato de um leitor de digital com problema, que não reconhece nem o eleitor nem o mesário.
O teste do voto
Se alguém votasse no lugar dos eleitores, a seção ficaria diferente das vizinhas: mais gente votando, ou mais votos para um candidato. Comparamos cada seção com as outras do mesmo local de votação (a mesma escola), que recebem eleitores do mesmo bairro. "Esperado" é quanto cada candidato teria se a seção votasse na mesma proporção que as vizinhas.
| Maior sequência | Seções | Lula: votos × esperado | Flávio: votos × esperado | Comparecimento × vizinhas |
|---|---|---|---|---|
| até 4 | 482.024 | 62.201.846 × 62.209.271 | 58.585.767 × 58.578.342 | +0,02 ponto |
| 5 a 9 | 1.545 | 207.394 × 205.774 | 160.422 × 162.042 | −0,27 ponto |
| 10 a 19 | 57 | 7.694 × 7.721 | 6.437 × 6.410 | −1,22 ponto |
| 20 ou mais | 129 | 18.673 × 18.675 | 13.069 × 13.067 | +0,13 ponto |
Nas 129 seções com 20 ou mais liberações seguidas, somando todas, Lula teve 2 votos a menos que o esperado e Flávio Bolsonaro, 2 votos a mais. O comparecimento ficou 0,13 ponto acima do das vizinhas.
E os "pianistas"?
"Pianista" é o mesário que vota no lugar de eleitores que faltaram. O log não mostra quem votou, mas isso deixaria rastros. Testamos quatro:
- Mais gente votando que nas vizinhas. Nas seções que mais se parecem com o padrão (veja abaixo), o comparecimento do
2º turno ficou 0,08 ponto acima do das vizinhas. No 1º turno, ficava 0,67 ponto abaixo: a distância diminuiu. Isso também acontece quando as seções são escolhidas pela liberação do 1º turno, que não tem relação com o que houve no 2º: nas seções com 20% ou mais de liberação no 1º turno, a diferença de comparecimento para as vizinhas foi de -0,91 ponto no 1º turno e de -0,41 no 2º (negativo quer dizer abaixo das vizinhas). É um movimento dessas seções, não das liberações do 2º turno.
- Voto diferente das vizinhas. Essas seções deram a Lula 0,45 ponto a mais que as vizinhas. Mas as mesmas seções já
davam a Lula 0,69 ponto a mais no 1º turno: a diferença é anterior ao 2º turno e diminuiu nele. Olhando só os boletins, nas seções com 20% ou mais de habilitação biográfica, Lula teve 0,62 ponto sobre as vizinhas no 2º turno e 0,98 no 1º.
- Um mesário liberando muitos votos. Em 686 seções, um mesmo mesário liberou 50 votos ou mais. Nelas, Lula ficou
0,24 ponto acima das vizinhas, contra 0,59 no 1º turno.
- Eleitor que chega e "já votou". Se alguém votasse por um eleitor que depois aparece, a urna avisaria que ele já votou.
Houve 62.013 avisos isolados durante a votação, em 53.061 seções, menos de 1 para cada 2 mil votos. O aviso também aparece quando o mesário digita de novo um título ou quando o eleitor volta à seção; o log não diz qual foi o caso. As seções com esses avisos têm a mesma taxa de liberação pelo mesário que as outras (6,8% e 6,7%).
| Sinais do padrão | Seções | Lula × vizinhas, 2º turno | Lula × vizinhas, 1º turno | Comparecimento × vizinhas, 2º turno | Comparecimento × vizinhas, 1º turno |
|---|---|---|---|---|---|
| 0 | 449.350 | −0,02 | −0,03 | +0,02 | +0,06 |
| 1 | 29.654 | +0,16 | +0,23 | +0,03 | −0,19 |
| 2 | 3.477 | +0,40 | +0,64 | +0,02 | −0,52 |
| 3+ | 1.274 | +0,45 | +0,69 | +0,08 | −0,67 |
Diferenças em pontos percentuais, seção menos as vizinhas do mesmo local. Para Flávio Bolsonaro, os valores são praticamente os mesmos com o sinal trocado.
"Sinais do padrão" são os indicadores em que a seção está entre o 1% mais alto do país: proporção de votos liberados pelo mesário, maior sequência de liberações por mesário reconhecido, digital fora da lista de mesários usada de novo, avisos de "já votou" durante a votação, liberações feitas por um mesmo mesário e liberações depois das 16h.
O que encontramos de problema
- Digital do mesário não reconhecida. Em 2.791.357 liberações (32,3% do total), a digital usada
para liberar não bateu com a de nenhum mesário registrado na abertura da seção; a urna a gravou como uma digital nova e liberou o voto. Nesses casos, o log não confirma que quem liberou era mesário da seção.
- Leitor que não reconhece digitais. Em algumas seções, quase nenhuma digital foi reconhecida durante horas. Exemplos:
Rio de Janeiro, zona 8, seção 74 (3 de 300 votos com a digital do eleitor); Lauro de Freitas (BA), zona 180, seção 280 (4 de 324); Tomazina (PR), zona 19, seção 55 (2 de 227).
Pelos testes acima, nenhum dos dois problemas veio acompanhado de comparecimento acima das vizinhas ou de voto diferente do que a seção já fazia no 1º turno.
O que o log não responde
Se quem estava na cabine era o dono do título. Isso só a folha de votação assinada pelo eleitor, a ata da seção e os fiscais dos partidos mostram. Diferenças estatísticas pequenas entre seções não são, por si só, prova de nada.
Para conferir
O log de cada urna está no Portal Resultados do TSE, seção por seção (arquivo -log.jez, dentro de "Dados de urna"). Os boletins de urna estão no Portal de Dados Abertos do TSE.
Os logs não ficam neste site (são cerca de 95 GB). Para refazer a conta, baixe os [scripts](/dados/scripts_analise_tse_2026.zip) e rode, depois de montar a base: python scripts/logs_todos.py base logs 0/1 16 8 --todas (baixa os logs do Portal Resultados e retoma de onde parou), python scripts/logs_biometria.py base logs e python scripts/biometria_resumo.py base logs resumo.json.
Como chegamos a esses números
Eleitores habilitados pelos dados do documento (a linha "Habilitação biográfica" do boletim), por turno
SELECT turno, sum(habilitacao_biografica) AS habilitacao_biografica,
round(100.0 * sum(habilitacao_biografica) / sum(comparecimento), 2) AS pct
FROM secoes GROUP BY 1 ORDER BY 1Rodar no seu navegador →Comparecimento das seções em relação às vizinhas do mesmo local, nos dois turnos, pela habilitação biográfica do 1º turno
WITH t AS (
SELECT s2.uf, s2.zona, s2.local_votacao, 100.0 * s1.habilitacao_biografica / s1.comparecimento AS hb1,
s1.comparecimento c1, s1.aptos a1, s2.comparecimento c2, s2.aptos a2
FROM secoes s2 JOIN secoes s1 ON s1.turno = 1 AND s1.uf = s2.uf AND s1.zona = s2.zona AND s1.secao = s2.secao
WHERE s2.turno = 2 AND s2.uf <> 'ZZ' AND s1.comparecimento >= 50),
d AS (SELECT CASE WHEN hb1 >= 20 THEN '20_ou_mais' WHEN hb1 >= 10 THEN '10_a_19' ELSE 'ate_9' END AS faixa,
100.0 * c1 / a1 - 100.0 * (sum(c1) OVER w - c1) / nullif(sum(a1) OVER w - a1, 0) AS dif1,
100.0 * c2 / a2 - 100.0 * (sum(c2) OVER w - c2) / nullif(sum(a2) OVER w - a2, 0) AS dif2
FROM t WINDOW w AS (PARTITION BY uf, zona, local_votacao))
SELECT faixa, count(*) AS secoes, round(avg(dif1), 2) AS d1, round(avg(dif2), 2) AS d2
FROM d WHERE dif1 IS NOT NULL AND dif2 IS NOT NULL GROUP BY 1 ORDER BY 1Rodar no seu navegador →Voto em Lula em relação às vizinhas do mesmo local, nos dois turnos, pela habilitação biográfica do 2º turno
WITH t AS (
SELECT s2.uf, s2.zona, s2.local_votacao, 100.0 * s2.habilitacao_biografica / s2.comparecimento AS hb2,
s2.votos_lula l2, s2.votos_validos v2, s1.votos_lula l1, s1.votos_validos v1
FROM secoes s2 JOIN secoes s1 ON s1.turno = 1 AND s1.uf = s2.uf AND s1.zona = s2.zona AND s1.secao = s2.secao
WHERE s2.turno = 2 AND s2.uf <> 'ZZ' AND s2.comparecimento >= 50),
d AS (SELECT CASE WHEN hb2 >= 20 THEN '20_ou_mais' WHEN hb2 >= 10 THEN '10_a_19' ELSE 'ate_9' END AS faixa, l2, v2, l1, v1,
(sum(l2) OVER w - l2) * 1.0 / nullif(sum(v2) OVER w - v2, 0) AS viz2,
(sum(l1) OVER w - l1) * 1.0 / nullif(sum(v1) OVER w - v1, 0) AS viz1
FROM t WINDOW w AS (PARTITION BY uf, zona, local_votacao))
SELECT faixa, count(*) AS secoes,
round(100.0 * sum(l2) / sum(v2) - 100.0 * sum(v2 * viz2) / sum(v2), 2) AS l2,
round(100.0 * sum(l1) / sum(v1) - 100.0 * sum(v1 * viz1) / sum(v1), 2) AS l1
FROM d WHERE viz2 IS NOT NULL AND viz1 IS NOT NULL GROUP BY 1 ORDER BY 1Rodar no seu navegador →Forma de liberação de cada voto
No log de cada urna, para cada evento "O voto do eleitor foi computado" do dia da eleição, lemos as mensagens anteriores: tentativas de digital do eleitor, pedido de dado pessoal e digital do mesário (reconhecida, ou gravada como nova). Scripts: scripts/logs_todos.py (download), scripts/logs_biometria.py (leitura) e scripts/biometria_resumo.py (tabelas desta página).
Comparação com as vizinhas
Para cada seção, somamos as outras seções do mesmo local de votação (sem ela) e calculamos quantos votos cada candidato teria se a seção votasse na mesma proporção. Só entram seções com 50 votos ou mais e com ao menos uma vizinha; o exterior fica de fora (lá a urna não usa biometria). O mesmo cálculo foi feito no 1º turno, com os boletins.
Continue entendendo
Seções em que um candidato teve mais de 90% dos votos
Seções com votação muito concentrada existem em todas as eleições e para os dois lados. A tabela compara 2018, 2022 e 2026 no 2º turno, com a mesma métrica para os dois candidatos de cada ano.
Entenda →Resultado128.236.074eleitores na soma dos boletins do 2º turno; no total oficial do TSE, 128.236.074A soma dos boletins dá o resultado oficial?
Somando os boletins de urna de todas as seções publicados pelo TSE e comparando com o total oficial divulgado pelo próprio TSE, nos dois turnos de 2026.
Entenda →Comparações3 eleiçõespresidenciais na base, seção por seção: 2018, 2022 e 2026Como comparar 2018, 2022 e 2026
As três eleições presidenciais estão na base. A comparação justa é por município, estado ou país, nunca por seção, porque o TSE renumera e redistribui as seções entre eleições.
Entenda →Números calculados na base consolidada dos boletins de urna. Fonte: TSE (licença CC-BY). Análise independente; não é do TSE.