What is the Check Digit Calculator?
The check digit is the last digit of an EAN-13, UPC-A, EAN-8, ITF-14 or SSCC number. It is not part of your product number - it is a checksum computed from the other digits so a scanner can detect a misread before the number reaches your till or stock system. This calculator computes the correct check digit for any GS1 number, shows the working step by step, and accepts a whole list at once so you can prepare hundreds of numbers for printing in one go.
Common Uses for the Check Digit Calculator
- Compute the missing check digit before printing EAN-13 or UPC-A labels
- Verify a supplier's barcode number is internally valid
- Prepare ITF-14 carton codes from 13-digit case numbers
- Bulk-append check digits to a spreadsheet column of product numbers
How the GS1 check digit formula works
Take the 12 data digits of an EAN-13, for example 590123412345. Starting from the rightmost digit, multiply alternately by 3 and 1: 5x3, 4x1, 3x3, 2x1, 1x3, 4x1, 3x3, 2x1, 1x3, 0x1, 9x3, 5x1, which sums to 83. The check digit is what must be added to reach the next multiple of 10 - 83 rounds up to 90, so the check digit is 7 and the full EAN-13 is 5901234123457. The same rule applies to every GS1 linear format regardless of length.
Which barcode formats have a check digit
Always: EAN-13, EAN-8, UPC-A, ITF-14 and SSCC-18 - the check digit is mandatory and scanners reject the code without it. Internally handled: Code 128, Code 93 and Code 32 compute their own check characters during encoding, so you never type one. Optional: Code 39 and MSI, where the check digit depends on your system's configuration. None: QR, DataMatrix, PDF417 and Aztec use built-in error correction instead.
Common check digit mistakes to avoid
The most frequent error is typing the check digit as part of the data, which produces a 13-digit EAN-13 input that fails validation - always enter only the data digits and let the calculator or generator append the check. The second is recalculating a check digit after editing a number: if you change any data digit, the old check digit is wrong and the barcode will be rejected at retail. Re-run the calculator whenever the underlying number changes.
Reference