UPC check digit calculator

Work out or verify the last digit of any UPC, EAN, ITF-14/GTIN-14 or SSCC number, and step through exactly how it's calculated. Paste a whole column to fix them in bulk.

036000291452

  1. 0×30
  2. 3×13
  3. 6×318
  4. 0×10
  5. 0×30
  6. 0×10
  7. 2×36
  8. 9×19
  9. 1×33
  10. 4×14
  11. 5×315

The check digit is what you add to reach the next multiple of 10: 58 → 60, so the check digit is 2. When the sum is already a multiple of 10, it's 0.

Fix a whole column of numbers at once

Why barcodes carry a check digit

A retail scanner reads a UPC in a few milliseconds, often at an angle and through shrink-wrap. The check digit is a cheap self-test: if the digits it decoded don't add up, it beeps no and tries again instead of ringing up the wrong product.

The alternating ×3 weight is the clever part. With equal weights, swapping two neighbouring digits (the most common typing error) would leave the sum unchanged. Weighting one of them by 3 changes the total unless the two digits differ by exactly 5, so almost every swap is caught. GS1 publishes the method in its General Specifications, section 7.9.

Once your numbers check out, turn them into barcodes: UPC-A, EAN-13, EAN-8 or ITF-14. Each generator adds missing check digits and flags wrong ones for you.

Questions people ask

How is a UPC check digit calculated?
Take the first 11 digits. Starting from the right, multiply alternate digits by 3 and 1 (the rightmost gets 3). Add the results. The check digit is the number that brings the total up to the next multiple of 10. For 03600029145 the sum is 58, so the check digit is 2.
Is the method the same for EAN-13, EAN-8, ITF-14 and SSCC?
Yes. All GS1 identifiers use the same mod-10 algorithm, with weights 3 and 1 counted from the right. That is why a UPC-A padded with a leading zero is a valid EAN-13 with the same check digit.
What errors does a check digit catch?
Every single wrong digit, and most swaps of two neighbouring digits (except when the two digits differ by exactly 5). It does not catch every double error, which is why scanners also rely on the barcode structure itself.
Does ISBN-13 use the same check digit?
Yes. ISBN-13 is an EAN-13, so it uses the same calculation. The old ISBN-10 used a different mod-11 scheme (which is where the "X" check digit came from).