Bulk EAN-8 barcode generator

EAN-8 is the one retail code where a batch should give you pause. GTIN-8 numbers are not carved out of your company prefix in a block — each one is allocated individually by GS1, and only for products too small to carry a thirteen-digit symbol. A list of a hundred sequential EAN-8 values almost always means somebody invented ninety-nine of them.

One value per line. A single line of comma- or semicolon-separated values works too. A header row (like “Value”) counts as a value and will be rejected — leave it out.

Nothing recognized yet.

Appearance
Size
Caption
Caption position
Caption alignment
Colours

Enter a value — the code appears here.

Specification

Character set
digits
Length
exactly 8 characters
Check digit
calculated automatically by the encoder

Where this code earns its place in a batch

  • The small-package subset of a range: lip balms, sachets, single-serve items where a thirteen-digit symbol would not fit the face of the pack at legal module width.
  • Runs of a dozen rather than a hundred — because GTIN-8 is allocated per product, a genuine EAN-8 batch is short by nature, and a long one is a sign something was invented.

Preparing the list

  • Paste the GTIN-8 numbers you were actually allocated rather than generating a range: sequential EAN-8 is the shape of a mistake, not of a catalogue.
  • Keep the batch to the products that genuinely need the short symbol — lip balms, single-serve sachets, cigarette packs — and use EAN-13 for the rest of the range.
  • Read the values in the field before printing: eight digits are short enough that a transposition passes the eye and still produces a valid check digit only by accident.

What goes wrong in a batch

  • Generating EAN-8 as a sequence from a company prefix: the format has no prefix-and-reference split that works that way, and the resulting numbers belong to whoever was allocated them.
  • Excel strips the leading zero from an eight-digit number and leaves seven; the row then fails validation rather than printing wrong, but the whole column needs re-exporting as text.

Frequently asked questions

Why does a bulk EAN-8 run make less sense than a bulk EAN-13 run?
Because GTIN-8 is allocated per product rather than as a block inside your prefix. A hundred EAN-13 codes is a normal product range; a hundred EAN-8 codes would mean a hundred separate allocations, which is rare enough to be worth double-checking.
Can I convert a list of EAN-13 numbers to EAN-8?
No. EAN-8 is not a compressed EAN-13 — it is a separately issued number. The compression you may be thinking of is UPC-E, which shortens a qualifying UPC-A and can be expanded back.