Validate an existing barcode or calculate the missing check digit for any UPC-A, EAN-13, or GTIN-14 barcode — instantly, no signup required.
Need to track your barcoded products? Craftybase links barcodes to your products, recipes, and inventory automatically.
Try free for 14 daysA check digit is the final digit of a barcode number, calculated from the preceding digits using a GS1 Mod-10 algorithm. For a UPC-A barcode like 012345678905, the 5 at the end is the check digit. It lets scanners detect typos and damaged barcodes instantly — without looking up the product.
What do you want to do?
Not sure how many digits your barcode should have? Read our guide to generating UPC barcodes
A check digit is a single verification digit appended to the end of a barcode number. It's calculated from all the preceding digits using a mathematical formula, so if anyone makes a typo — or a scanner misreads a damaged barcode — the error shows up immediately.
Without it, a scanner would have no way to know whether 012345678905 and 012345679805 are two different products or a transcription error. With the check digit, one of those numbers is mathematically valid and the other isn't. The scanner rejects the bad one before it can cause a stock error.
All GS1 barcodes (UPC-A, EAN-13, GTIN-14) use the same Mod-10 algorithm. Here's how it works, using the UPC-A barcode 01234567890? as an example:
01234567890So the complete barcode is 012345678905. The same algorithm works for EAN-13 and GTIN-14 — only the number of payload digits changes.
Three formats are supported by this calculator, and all three use the same GS1 Mod-10 algorithm:
For a deeper look at setting up barcodes for your products, see our guide to generating UPC barcodes.
Got your barcodes sorted?Craftybase helps you track exactly what you make and what you have — with barcoding support for your products, so you can scan in and out of stock without manual data entry.
Start your free trial →If a scanner won't read your barcode, the check digit is the first thing to check. Common causes:
Manually checking barcodes works for a handful of products. Once you're managing a growing range, it's worth having your inventory software do the checking automatically.
Craftybase stores barcodes for each of your products and materials, and can scan them in when you receive stock or record a sale. There's no manual digit verification — the system validates automatically and updates your inventory in real time.
Start your free trial →A UPC check digit is the final digit of a Universal Product Code, calculated from the first 11 digits using the GS1 Mod-10 algorithm. Its purpose is error detection: if any digit in the barcode is misread or mistyped, the check digit calculation will produce a different result, and the scanner rejects the barcode. This prevents the wrong product from being rung up or the wrong stock level from being updated. Every GS1 barcode standard — UPC-A, EAN-13, and GTIN-14 — uses the same check digit formula.
Take the first 11 digits of your UPC-A barcode. Starting from the rightmost digit, multiply alternating digits by 3 and 1 (rightmost × 3, next × 1, and so on). Sum all the products. The check digit is (10 − (sum mod 10)) mod 10. For example, the payload 01234567890 produces a sum of 85, so the check digit is (10−5)%10 = 5, giving the complete barcode 012345678905. The calculator above does this in one step — enter your 11 digits in Generate mode and it shows the answer immediately.
UPC-A is a 12-digit barcode used on retail products in the US and Canada. EAN-13 is a 13-digit international barcode; a UPC-A is technically an EAN-13 with a leading zero. GTIN-14 is a 14-digit code used for case and pallet tracking in supply chains — the first digit is a packaging indicator. All three use the same Mod-10 check digit algorithm. The main practical difference is where they're used: UPC-A for consumer retail in North America, EAN-13 for international retail, and GTIN-14 for B2B and logistics contexts.
The most common reasons a barcode scanner rejects a barcode are: an incorrect check digit (paste the full number into the Validate mode above to confirm), a typo or transposed digits in the barcode number, OCR misreads on the printed label (especially 0/O and 1/I confusion), or using the wrong barcode format for the context (for example, a retailer expecting GTIN-14 receiving UPC-A). If the validator shows the check digit is correct, the problem is likely print quality, label damage, or a scanner configuration issue rather than the number itself.
ISBN-10 (10-digit book identifiers) uses a different algorithm — a weighted sum with modulo 11, not modulo 10 — so this calculator will not give correct results for ISBN-10. ISBN-13, however, is simply a GS1 EAN-13 barcode with the 978 or 979 prefix, and does use the same Mod-10 check digit algorithm. This calculator handles ISBN-13 correctly: enter all 13 digits in Validate mode, or the first 12 in Generate mode.