Como funciona o dígito de controlo do EAN-13

O 13.º dígito de todos os códigos de barras EAN-13 não é escolhido — é calculado. Aqui está a fórmula, um exemplo resolvido completo, e porque é que importa.

EAN Studio · Atualizado em julho de 2026

Um código de barras EAN-13 codifica treze dígitos. Os primeiros doze identificam o produto (um prefixo GS1, um prefixo de empresa e uma referência de artigo); o décimo terceiro é um dígito de controlo — um único dígito calculado a partir dos outros doze. A sua única função é detetar erros: se um dígito for mal digitado ou mal lido, o dígito de controlo deixa de corresponder e a leitura é rejeitada.

A fórmula, em termos simples

Lendo os doze dígitos de dados da esquerda para a direita:

  1. Multiplica os dígitos nas posições ímpares (1.ª, 3.ª, 5.ª …) por 1.
  2. Multiplica os dígitos nas posições pares (2.ª, 4.ª, 6.ª …) por 3.
  3. Soma todos os resultados para obter uma soma.
  4. O dígito de controlo é o que tens de acrescentar a essa soma para chegar ao próximo múltiplo de dez. Em fórmula: controlo = (10 − (soma mod 10)) mod 10.

Esse "mod 10" final importa num caso especial: se a soma já for um múltiplo de dez, o dígito de controlo é 0, não 10.

Um exemplo resolvido

Toma os doze dígitos de dados 400638133393. Dispõe-nos com os seus pesos:

Dígito400638133393
Peso131313131313
Produto40018324193999

Os produtos somam 4 + 0 + 0 + 18 + 3 + 24 + 1 + 9 + 3 + 9 + 9 + 9 = 89. O próximo múltiplo de dez acima de 89 é 90, e 90 − 89 = 1. Portanto o dígito de controlo é 1, e o EAN-13 completo é 4006381333931.

Não queres fazer isto à mão? A calculadora de dígito de controlo faz isto na hora para EAN-13, UPC-A, EAN-8 e GTIN-14, e o gerador de EAN-13 adiciona o dígito de controlo automaticamente quando crias o código de barras.

Porque é que os leitores dependem dele

Quando um leitor lê um EAN-13, repete exatamente este cálculo nos primeiros doze dígitos e compara o resultado com o décimo terceiro. Se não coincidirem, a leitura é descartada. Este único dígito extra deteta a esmagadora maioria das gralhas de um só dígito e muitos erros de transposição — um seguro barato contra a leitura do produto errado numa caixa.

A mesma matemática move o UPC, o EAN-8 e o GTIN-14

O método do EAN-13 é na verdade o algoritmo GS1 módulo-10, e é partilhado por toda a família: o UPC-A (11 dígitos de dados), o EAN-8 (7 dígitos de dados) e o GTIN-14 / ITF-14 (13 dígitos de dados) usam todos os mesmos pesos alternados de 3 e 1 a partir da direita. Só muda o comprimento; a lógica é idêntica.

O dígito de controlo não é o número completo. Calculá-lo não cria um número de produto registado. Para venda a retalho, o GTIN por trás de um EAN-13 é atribuído pela GS1. Esta matemática apenas completa e valida um número que já tens.

Calcula-o ou gera-o agora

Salta a aritmética — obtém o dígito de controlo e o número completo no teu navegador.

Abrir a calculadora de dígito de controlo

Perguntas frequentes

O que é o dígito de controlo do EAN-13?

É o 13.º e último dígito de um código de barras EAN-13, calculado a partir dos primeiros doze. Os leitores recalculam-no a cada leitura para detetar um número mal digitado ou mal lido.

Como se calcula o dígito de controlo do EAN-13?

Multiplica os doze dígitos de dados por pesos alternados de 1 e 3 (o primeiro dígito por 1), soma os produtos, e o dígito de controlo é o número necessário para chegar ao próximo múltiplo de dez.

A mesma fórmula aplica-se ao UPC-A e ao EAN-8?

Sim. O UPC-A, o EAN-8 e o GTIN-14 usam todos o mesmo algoritmo GS1 módulo-10; só muda o número de dígitos de dados.

O que acontece se o dígito de controlo estiver errado?

Um leitor recalcula o dígito de controlo e rejeita a leitura se não corresponder, por isso um número inválido ou mal digitado simplesmente não lê como um produto válido.