An ISBN-13 is the 13-digit identifier printed on every modern book, and the final digit is a checksum that lets scanners and databases catch typos. This tool builds strings that satisfy that checksum so they look and validate like real ISBNs, while the body is random — perfect for seeding a catalog, exercising a barcode renderer, or demoing library software without touching genuine registered numbers.
How it works
Every ISBN-13 begins with a GS1 prefix (978 or 979), followed by registration-group, registrant, and publication digits, and ends with a single check digit. This generator fixes the prefix, fills the next nine positions with random digits, then computes the check digit using the standard algorithm:
- Number the first 12 digits from position 0.
- Multiply even positions by 1 and odd positions by 3, then add all products.
- The check digit is
(10 - (sum % 10)) % 10.
Appending that check digit yields a structurally valid 13-digit ISBN. Optional hyphen grouping splits it into the familiar 978-1-234-56789-0 shape for readability.
The check-digit calculation in practice
For example, suppose the first 12 digits are 978014028329. The alternating multiply-by-1-and-3 sum works like this:
Position: 9 7 8 0 1 4 0 2 8 3 2 9
Weight: 1 3 1 3 1 3 1 3 1 3 1 3
Product: 9 21 8 0 1 12 0 6 8 9 2 27
Sum = 9+21+8+0+1+12+0+6+8+9+2+27 = 103
Check digit = (10 - (103 % 10)) % 10 = (10 - 3) % 10 = 7
So the full ISBN is 9780140283297 or, hyphenated, 978-0-14-028329-7. A scanner reading this off a barcode will recompute the same check and confirm the scan was accurate.
978 versus 979 prefix
The 978 prefix (sometimes called “Bookland”) is the original GS1 range for books and covers the vast majority of ISBNs in circulation. The 979 prefix was added later to handle overflow — as the 978 range fills up, new publisher codes are issued under 979. If you are testing a catalog system, generate a mix of both prefixes to ensure your database and display logic handles both. Some older barcode scanners and library systems have edge cases with 979 that 978 alone would not expose.
When hyphenation matters
The hyphenated form splits an ISBN into readable groups: prefix, registration group, registrant, publication number, and check digit. Real ISBNs use variable-length groups determined by the publisher’s registration code, so this tool uses a simplified grouping for display. If your system stores ISBNs as plain digit strings internally and only hyphenates for display, test both storage formats:
- Plain 13 digits for database fields, API payloads, and barcode data.
- Hyphenated for print display, metadata exports, and anywhere a human reads the identifier.
Practical guidance
- A scanner or validator will accept these because the checksum is correct, but a lookup against any real bibliographic database (such as the Open Library or WorldCat) will return nothing.
- Use the unhyphenated form when feeding databases that store ISBNs as plain 13-digit strings.
- Never ship random ISBNs to customers — a value you generated today could theoretically be assigned to a real book in the future.