Barcode Generator
Generate CODE128, EAN-13, EAN-8, UPC-A, CODE39, and ITF-14 barcodes from any value.
This tool runs entirely in your browser. Your files are never uploaded to a server.
Renders entirely in your browser using the jsbarcode library — nothing you type is uploaded. EAN-13/EAN-8/UPC-A/ITF-14 auto-calculate the check digit when you leave it off.
What this tool does
Encodes a value you type into a real, scannable barcode — CODE128, EAN-13, EAN-8, UPC-A, CODE39, or ITF-14 — and renders it as an image you can download.
How to use it
Pick a barcode type, type or paste the value to encode, and the barcode updates instantly below. For EAN-13, EAN-8, UPC-A, and ITF-14, leave off the final check digit and the tool calculates and appends it automatically.
Worked example
The default CODE128 sample encodes "Quiklio-12345" — CODE128 accepts any printable ASCII character, which is why it's the most common choice for general-purpose labels, asset tags, and internal tracking numbers.
Choosing a barcode type
CODE128 is the flexible general-purpose choice (letters, numbers, and punctuation). EAN-13/EAN-8/UPC-A are fixed-length numeric formats used on retail products worldwide. CODE39 is common in logistics and ID badges. ITF-14 is used on shipping cartons and pallets.
Check digits and validation
Retail formats reject a value that isn't the right length or contains non-digit characters — the tool shows a clear error message in that case rather than rendering an invalid-looking barcode.
Important limitations
This generates a correctly-encoded barcode image but doesn't verify that a specific number is actually registered to a real product (for that, a GS1-issued prefix is required) or guarantee how a particular scanner or printer will render it at small sizes — test a printed sample with your actual scanner before production use.
Privacy and sources
Barcode rendering happens entirely in your browser using the open-source jsbarcode library; nothing you type is uploaded or logged.
Frequently Asked Questions
- Do I need to calculate the check digit myself?
- No — for EAN-13, EAN-8, UPC-A, and ITF-14, enter the value without a check digit (or with a placeholder) and the tool calculates and appends the correct one automatically.
- Which format should I use for a general-purpose label?
- CODE128 — it accepts letters, numbers, and most punctuation, and is the most widely supported format for asset tags, internal tracking numbers, and shipping labels that aren't tied to a retail product code.
- Can I use this to create a real retail product barcode?
- The tool renders a technically valid EAN-13/UPC-A barcode, but a number only works at checkout if it's registered with GS1 (or your regional equivalent) — this tool doesn't register or validate ownership of a number.