Skip to content
Zoyku

Barcode Generator

Create scannable CODE128, EAN-13 and UPC-A barcodes with adjustable bar width and height — vector SVG output, rendered in your browser.

Barcode value
Format
Bar width (2×)
Height (90 px)

CODE128 accepts any letters, digits and most symbols — the default for inventory and tracking labels.

This tool runs entirely in your browser. Your data never leaves your device — it is not uploaded to any server.

How to use

  1. 1Enter the barcode value — letters/digits for CODE128, 12 digits for EAN-13, 11 for UPC-A.
  2. 2Pick the format and adjust bar width and height.
  3. 3Download the SVG for printing or import it into your design tool.

Barcode Generator

Type a value, pick a symbology and get a retail-ready barcode with an optional human-readable line underneath. CODE128 handles any letters, digits and symbols for inventory labels; EAN-13 and UPC-A validate and auto-complete the check digit for product packaging.

Rendering uses the JsBarcode library inside your browser and outputs a scalable SVG, so the same file prints crisply on a 12 mm label or an A4 sheet. Nothing is uploaded and no codes are stored.

Frequently asked questions

Why does my EAN-13 input get rejected?

EAN-13 needs exactly 12 digits (the 13th check digit is computed automatically) or all 13 digits with a valid final check digit. UPC-A similarly wants 11 digits. Letters, spaces or the wrong digit count are rejected with the library's error message.

Which format should I use for retail products?

EAN-13 in most of the world, UPC-A in the US and Canada — both are GS1 retail standards that scanners at checkout expect. Use CODE128 for internal stock, asset and shipping labels where no GS1 number exists.

What resolution is the output?

The download is a vector SVG, so it scales to any DPI without blur. Keep the quiet zones (the blank margins on each side) intact when placing it — trimming them is the most common cause of unreadable scans.

Embed this tool

Put this tool on your own site with one line — it runs entirely in the visitor's browser.

<iframe src="https://zoyku.com/en/tools/barcode-generator?embed=1" width="100%" height="640" style="border:0;border-radius:16px" title="Zoyku — barcode-generator" loading="lazy"></iframe>
100% local processing