Linear barcodes, by purpose
A barcode is a machine-readable encoding of a number or string. The right symbology depends entirely on what you’re encoding and where it’s scanned:
| Symbology | Encodes | Typical use |
|---|---|---|
| Code 128 | Full ASCII | Logistics, internal tracking |
| EAN-13 | 13 digits | International retail products |
| UPC-A | 12 digits | North American retail |
| Code 39 | A–Z, 0–9, few symbols | Automotive, defense, ID |
| ITF | Even digit count | Shipping cartons |
This generator validates format and computes check digits automatically, so an EAN-13 you enter 12 digits for gets the correct 13th digit appended.
Export as SVG for print
Always download barcodes as SVG (or high-resolution PNG) when they’ll be printed. Barcodes are scanned optically, and a low-resolution or scaled-up raster develops blurry bar edges that scanners misread. SVG is vector — it stays razor-sharp at any print size, which is exactly what reliable scanning needs. For professional print, treat 300 DPI as the floor.
Why a barcode fails to scan
Scan failures almost always trace to physical/print issues, not the data:
- Contrast — needs solid black bars on a solid white background; gray-on-gray fails.
- Size — EAN-13 has a minimum width (~25mm); too small and the bars blur together.
- Quiet zone — the blank margin on either side is required; cropping it breaks scanning.
- Screen glare — scanning a barcode off a glossy screen is unreliable; print it.
This tool’s automatic check-digit validation rules out the data-side errors, leaving these print/display factors as the things to get right.
QR vs barcode
If you need to encode a URL, contact info, or a lot of text rather than a product number, a 2D QR code holds far more data and scans easily from phone screens — use the QR Code Generator for that. Linear barcodes are for short numeric/alphanumeric identifiers in retail and logistics.