GTIN14 Tools

Check Digit Calculator

EAN-13 · EAN-8 · UPC-A · ITF-14

A GS1 check digit is the last digit of an EAN or GTIN, calculated with alternating weights of 3 and 1 so a scanner can reject a mistyped code. Pick a symbology below, paste a payload to get the digit, or paste a full code to find out which position fails.

Shipping cartons. Indicator + company prefix + item reference + check digit.

Enter 13 digits to calculate the check digit, or all 14 to validate them.

Check digit

2

10012345678902

Check digit is 2 — full code 10012345678902

The algorithm, worked through once

Take the GTIN-14 payload 1001234567890, thirteen digits with no check digit yet.

  1. Step 1

    Weight from the right: the last payload digit gets 3, the one before it 1, and so on, alternating.

  2. Step 2

    Multiply and add. For this payload the weighted sum is 98.

  3. Step 3

    Round up to the next multiple of ten — 100 — and the difference is the check digit: 2, giving 10012345678902.

The same arithmetic runs on EAN-13, EAN-8 and UPC-A; only the payload length changes. That is why one calculator can cover all four symbologies without a lookup table.

Why the message names a position

“Invalid barcode” is a dead end when the label is already on 400 cartons. The validator below reports the expected digit, the digit you supplied, and — when a single substitution repairs the code — the exact position to fix. It never silently rewrites your input: you choose whether to accept the correction.

The check digit is the last of the 14. Paste a code and you get the position that fails, not just “invalid”.

GTIN-13 ↔ GTIN-14 conversion

A GTIN-13 identifies the retail unit. Adding a packaging indicator turns it into the carton code without touching the item reference.

Converted code14006381333938

Payload lengths by symbology

Check digit payload lengths
SymbologyPayloadWith check digitUsed on
GTIN-8 / EAN-878Very small packaging
GTIN-12 / UPC-A1112North American retail units
GTIN-13 / EAN-131213Retail units worldwide
GTIN-14 / ITF-141314Shipping cases and cartons

Need the symbol itself rather than the arithmetic? Generate an ITF-14 barcode and the check digit is filled in for you.

Check digit questions

How does a GS1 check digit work?

Starting from the rightmost digit of the payload, alternate weights of 3 and 1, multiply each digit, and add the results. The check digit is whatever brings that total up to the next multiple of ten. It catches single-digit typos and most swaps of two adjacent digits.

Why do my EAN-13 and ITF-14 check digits differ for the same item?

Because the payloads differ. A GTIN-14 has a packaging indicator in front of the GTIN-13 digits, so the weights land on different digits and produce a different result. Both codes can describe the same product while carrying different check digits.

Can a barcode be valid but still wrong?

Yes. A check digit only proves the 13 or 14 digits are internally consistent — it cannot tell you whether the number is registered, whether the prefix belongs to you, or whether the item reference matches the product. Use GEPIR to confirm ownership of a GTIN.

What does 'check digit position 14' mean?

It means the digit at position 14, the last one, does not match the value calculated from digits 1–13. That is the most common failure, and the calculator above offers the corrected code so you can compare it with the label you printed.

Does the check digit catch transposed digits?

Not in every case. Swapping two adjacent digits only fails the test when they differ by an amount the weighting can see; the validator above flags a transposition explicitly when swapping two neighbours repairs the code, which is more useful than a plain 'invalid'.

Can I check a whole column of codes at once?

Yes — paste them one per line into the bulk validation box. Each line is reported separately with the reason it failed, so you can fix a supplier's spreadsheet without opening a barcode editor.