Free Barcode Check Digit Checker & Calculator
Validate or calculate the check digit for EAN-13, UPC-A, EAN-8, and other common barcode formats.
Find this tool useful? Save it for next time.
How to validate or calculate a barcode check digit
Select the barcode format, then enter the digits. Enter all digits including the last one to validate - the tool immediately shows whether the check digit is correct. Enter one digit fewer than the full length to calculate the missing check digit and see the complete number.
The tool shows the full working of the calculation step by step, so you can verify the arithmetic independently or understand how the result was reached.
The GS1 modulo-10 algorithm
All GS1 barcode formats use a weighted modulo-10 algorithm. Starting from the rightmost base digit, digits alternate between weight 3 and weight 1, right to left. The products are summed, and the check digit is calculated as the amount needed to bring the total to the next multiple of 10.
This simple structure means a single digit error almost always produces a different check digit, catching mis-keys and mis-scans. Two transposed adjacent digits are also caught in most cases because swapping digits in positions with different weights changes the sum.
Common check digit problems
- Manually transcribed barcode numbers with a single digit wrong - use Validate mode
- Generating a new product code and needing the final digit - use Calculate mode
- Barcode rejecting at a retailer scanner after label printing - check the full 13/12/8-digit sequence
- System importing barcode data with validation errors - verify each number individually
- Converting a legacy product code to EAN-13 - calculate the check digit after prepending the country code
Frequently asked questions
What is a barcode check digit?
A check digit is the final digit in a barcode number, calculated mathematically from all the preceding digits. When a barcode is scanned, the scanner re-calculates what the check digit should be and compares it to the one encoded. If they do not match, the scan is rejected. This catches mis-scans, data entry errors, and corrupted or damaged barcodes before incorrect data enters a system.
How is the EAN-13 check digit calculated?
The EAN-13 check digit uses the GS1 modulo-10 algorithm. Each of the first 12 digits is multiplied by alternating weights of 1 and 3 (starting with 1 for the leftmost digit). The products are summed, divided by 10, and the check digit is 10 minus the remainder - or 0 if the remainder is already 0. For example, the digits 590123412345 produce a check digit of 7, making the full EAN-13 number 5901234123457.
Does the same algorithm work for UPC-A, EAN-8, and ISBN-13?
Yes. All GS1 barcode formats - EAN-13, UPC-A, EAN-8, ISBN-13, and GTIN-14 - use the same underlying modulo-10 algorithm with alternating weights. The only difference is the number of digits used as the base. Because the weight assignment depends on distance from the right, the same formula handles all lengths correctly. This tool applies the same calculation for all supported formats.
How do I use this tool to validate an existing barcode?
Select the barcode format, then enter all digits of the barcode including the final check digit. The tool immediately shows whether the check digit is valid or, if it is wrong, what the correct check digit should be. This is useful for catching typos in manually entered barcode numbers, verifying that a printed barcode was set up correctly, or debugging a system that is rejecting a barcode.
How do I use this tool to calculate a missing check digit?
Select the barcode format and enter all digits except the last one. The tool calculates and displays the check digit along with the full number including the check digit. Use this when you have a product identifier or ISBN base number and need to generate the complete valid barcode number before printing.
My barcode is scanning but returning wrong data - could the check digit be wrong?
If the barcode scans successfully, the scanner has confirmed the check digit is correct for the data it read. A successful scan with wrong data usually indicates the barcode was generated with an incorrect base number rather than a check digit error. Use this tool to verify the check digit of the number you intended to encode, then compare it to what the scanner actually returns.
What is the difference between ISBN-10 and ISBN-13 check digits?
ISBN-10 uses a completely different algorithm - modulo 11 with descending weights (10, 9, 8 ... 2) - and the check digit can be a digit from 0 to 9 or the letter X (representing 10). ISBN-13 uses the same GS1 modulo-10 algorithm as EAN-13. Since 2007, all ISBNs have been assigned and used as 13-digit ISBN-13 numbers. This tool supports ISBN-13. For ISBN-10 validation, you would need a separate tool.
What is GTIN-14 and when is it used?
GTIN-14 (Global Trade Item Number, 14 digits) is used in supply chain and logistics to identify trade items at multiple packaging levels - for example, a case of 24 units of a product. It is typically encoded in a GS1-128 barcode on outer cartons. The first digit is a packaging indicator (1–8), followed by a 13-digit base that includes the underlying EAN-13 or UPC-A code, and the same GS1 modulo-10 check digit.
Related Tools
EAN-13 Barcode Generator
Generate a standards-compliant EAN-13 barcode for retail product labels. Download as SVG or PNG.
UPC-A Barcode Generator
Generate a standards-compliant UPC-A barcode for product packaging. Download as SVG or PNG.
Barcode Label Sheet Generator
Enter a list of barcodes, choose a label sheet layout, and generate a print-ready sheet in seconds.