Sign In
Products
ZPL ViewerBarcode GeneratorImage → ZPLZPL cheat sheetLabel DesignerTemplate Gallery
Developers
API QuickstartAPI ReferenceMCP ServerBulk GenerationWebhooksSDKs & ExamplesLimitsDirectPrint agent NewGitHub ActionVS Code extensionOn-Premise
Solutions
Logistics & ShippingE-CommerceERP & WMSManufacturingRetailHealthcare & LaboratoryAll solutions
Tools
ZPL Diagnostics HubZPL DebuggerSize & DPI AnalyzerDPI ConverterBarcode fit calculatorShipping Label AnalyzerFont InspectorOrientation DebuggerCalibration AssistantPrinter Compatibility CheckerBarcode Readability CheckerPrinter Language DetectorThermal Printer Test PackZPL ToolsEPL ToolsTSPL ToolsCPCL ToolsPrinter Language ConverterAll ToolsGuidesPricing
Language
EnglishTürkçeDeutsch
Home›Guides›Which barcode symbology should I use?

Which barcode symbology should I use?

Published:

Picking a barcode is not a matter of taste: the data you carry, the space you have and the device that will read it already narrow the choice a long way. Three questions settle most cases.

1. What is the data?

2. How much room is there?

Linear (1D) barcodes grow horizontally as the data gets longer; on a narrow label a long Code 128 either squeezes past readability or overflows. Two dimensional codes fit the same data into a square: Data Matrix for very small surfaces (electronic parts, pharmaceutical cartons), QR where easy scanning matters more.

When space is genuinely tight, moving to 2D is almost always better than shrinking a 1D code: reducing the module width is what makes a barcode unreadable.

3. What will read it?

This question gets skipped most often and causes the most expensive mistake. The laser scanner at a supermarket checkout does not read 2D codes; QR is only read by camera-based scanners and phones. If the other side is a carrier or a retail chain, the symbology is not your choice — it is in their specification.

The short version

Do not assume the character set and length your chosen symbology accepts — test it. The same data can be valid in one symbology and invalid in another.

Frequently asked questions

When is Code 128 the better choice over EAN-13?

EAN-13 exists for retail product codes: exactly 13 digits, read at checkouts. Code 128 encodes arbitrary alphanumeric data compactly, which makes it the usual default for logistics and internal labels.

When is a QR code the wrong choice?

When the reader is a classic laser scanner — lasers read only 1D codes. A QR code needs a camera-based reader; choose it for URLs and larger payloads, not for existing 1D scan lines.

What if there is very little space on the label?

With a camera reader available, Data Matrix usually fits where a 1D code will not. Shrinking a 1D barcode below its minimum bar width just makes it unreadable.

Related guides

ZPL barcode not scanning

When a printed ZPL barcode will not scan, the cause is usually in the file: wrong data, a module too narrow, or a clipped quiet zone. Check them in order.

The check digit your printer silently rewrites

Send an EAN-13 with a wrong check digit and the printer does not complain — it prints a different number. Measured, and how to catch it before the run.

GS1-128 vs Code 128

GS1-128 is Code 128 plus one invisible character. What FNC1 changes, why parentheses are not data, and why a wrong encoding is worse than no barcode.

What is ZPL?

ZPL is the language Zebra thermal printers understand. How to read the commands, how a label is put together, and the most common mistakes.

Try your own ZPL code →