SSCC-18 Check Digit Calculator & GS1-128 Label Generator
Type the first 17 digits of a Serial Shipping Container Code to get its check digit, validate a complete 18-digit SSCC, or download a ready-to-print GS1-128 pallet barcode as SVG. Free, instant, everything runs in your browser.
How the SSCC-18 check digit works
The SSCC check digit uses the same GS1 mod-10 algorithm that protects GTINs, EANs and UPCs — just stretched to 18 digits. Starting from the rightmost digit of the 17-digit body, each digit is multiplied alternately by 3 and 1. The products are summed, and the check digit is whatever brings the total up to the next multiple of ten: check = (10 − sum mod 10) mod 10.
Worked example — body 00614141123456789 (extension digit 0, GS1 Company Prefix 0614141, serial 123456789). Reading from the right: 9×3 + 8×1 + 7×3 + 6×1 + 5×3 + 4×1 + 3×3 + 2×1 + 1×3 + 1×1 + 4×3 + 1×1 + 4×3 + 1×1 + 6×3 + 0×1 + 0×3 = 140. The next multiple of ten is 140 itself, so the check digit is 0 and the complete code is 006141411234567890. Change any single digit and the sum stops landing on a multiple of ten — which is how the algorithm catches essentially every single-keystroke error and most adjacent transpositions before a mislabelled pallet reaches a receiving dock.
Because the weighting is anchored to the right-hand end, the digit immediately to the left of the check digit always carries weight 3. A common implementation bug is anchoring the 3-1-3-1 pattern to the left instead; for an 18-digit code with a 17-digit body the two orientations happen to coincide, but a routine written that way silently breaks on 13- and 14-digit GTINs. This calculator anchors correctly, so its results agree with the official GS1 check digit calculator on every length.
Anatomy of an SSCC: four parts, one pallet
The Serial Shipping Container Code is GS1's identifier for a logistic unit — a pallet, case, tote or parcel that moves through a supply chain as one physical thing. Unlike a GTIN, which says what a product is, the SSCC is a pure serial number: a licence plate that says this specific pallet, regardless of what is stacked on it. It is always exactly 18 digits:
Extension digit (1 digit) — a free digit, 0–9, chosen by the company that builds the unit. It has no assigned meaning in the standard; firms typically use it to extend serial capacity or to distinguish packaging streams.
GS1 Company Prefix (4–12 digits) — the globally unique prefix licensed to your company by a GS1 member organisation. This is what makes your SSCCs collision-free against every other shipper on earth.
Serial reference (the remaining digits) — a number you allocate sequentially or however your WMS prefers. A 7-digit prefix leaves 9 serial digits: one billion pallets before you wrap around.
Check digit (1 digit) — the mod-10 digit this tool computes.
Note that the prefix/serial boundary is invisible inside the 18 digits — scanners neither know nor care where your prefix ends. The human-readable line under a barcode is often grouped for legibility (this tool prints (00) 1 2345678 901234567 8 style spacing, assuming a 7-digit prefix for display), but the encoded data is always the unbroken 18-digit string.
The GS1-128 pallet label: what actually gets encoded
On a physical label the SSCC is carried in a GS1-128 barcode (formerly UCC/EAN-128), which is standard Code 128 with one addition: a leading FNC1 character that flags the content as GS1 Application Identifier data. The symbol this tool generates is built exactly to spec:
Start C (symbol value 105) opens the barcode in Code C, which packs two digits per symbol — the densest and cheapest-to-print encoding for an all-numeric payload. FNC1 (value 102) follows immediately, marking the symbol as GS1-128. Then comes the Application Identifier (00) — AI 00 means "the following 18 digits are an SSCC" — and the 18 digits themselves, all packed as ten Code C pairs. A mod-103 symbol checksum (the weighted sum of every symbol value, reduced modulo 103 — this is Code 128's own internal checksum, separate from the SSCC's mod-10 digit) and the stop pattern close the symbol. Each symbol is 11 modules wide, the stop is 13, and the generator adds the mandatory 10-module quiet zone on each side, so the SVG scans straight off a laser or camera scanner when printed at adequate size (GS1 recommends 0.495–1.016 mm X-dimension for logistics labels).
For the worked example above, the encoded pairs are 00 (the AI), then 00 61 41 41 12 34 56 78 90, and the mod-103 checksum works out to symbol value 30 — you can verify any GS1-128 decoder reports exactly (00)006141411234567890.
Who asks for SSCCs — and what happens when the digit is wrong
If you ship to major US and EU retailers (Walmart, Target, Kroger, Tesco, Carrefour and virtually every grocery chain), their routing guides require an SSCC-bearing GS1-128 label on every pallet and usually on every mixed case. Amazon FBA and vendor programs use SSCC pallet labels for less-than-truckload and full-truckload freight. In EDI, the SSCC is the key that links the physical pallet to the electronic 856 Advance Ship Notice (or EANCOM DESADV): the receiver scans the licence plate, looks up the ASN, and books in the whole hierarchy of cases and items underneath it without opening the shrink-wrap.
That is also why a wrong check digit is expensive. A pallet whose barcode fails validation, or whose SSCC does not match any transmitted ASN, drops out of the automated receiving flow into manual exception handling — and many retailers bill that back as a chargeback per non-compliant pallet. Validating the 18 digits before printing, and again when generating the ASN, costs milliseconds; a compliance deduction costs real margin. Warehouse teams typically paste suspect numbers from a pick file or a rejected ASN straight into a validator like this one to see whether the label or the message is at fault.
FAQ
Do I need my own GS1 Company Prefix to create SSCCs?
Yes, for any SSCC that travels outside your own four walls. The company prefix embedded in the SSCC is what guarantees global uniqueness, and retailers, carriers and marketplaces resolve it back to a licensed company. You license a prefix from your local GS1 member organisation; for very small volumes GS1 also sells individual GS1 identification numbers. Inventing a prefix you do not own risks colliding with another company's serial range and having shipments rejected at the dock.
Can I just make up an SSCC for internal warehouse use?
Inside a closed system that no trading partner ever sees, you can technically number pallets however you like. But the moment a label leaves your dock — to a retailer, a 3PL or Amazon — the SSCC must be built on a GS1 Company Prefix you are licensed to use, because receiving systems treat it as globally unique. Most companies therefore use real SSCCs everywhere rather than run two numbering schemes in parallel.
How long before an SSCC number can be reused?
The GS1 General Specifications require that an individual SSCC not be reallocated within one year of the shipment date, and many sectors expect far longer — traceability and recall programmes in food, pharma and retail often assume several years of uniqueness. In practice, with nine or more digits of serial capacity available, most companies simply never reuse a number.
Labelling at scale?
Our pay-per-use API validates and computes GS1 check digits in bulk — 25 free calls per month, no card required.
Checksum calculation and GS1-128 symbol generation only (GS1 General Specifications mod-10 and Code 128 mod-103 algorithms). This tool does not allocate numbers, query the GS1 registry, or confirm that a company prefix is licensed. Always verify label size and print quality (ISO/IEC 15416) against your trading partner's routing guide.