Label tools
9 tools that run in your browser. Nothing to install, nothing uploaded.
Barcode and label generation for people who print their own: Code 128 and EAN-13 symbols, a printable barcode sheet with optional sequential numbering, and a ZPL diagnostic label for thermal printers. Everything renders as vector output in your browser, which matters more here than in most categories — a barcode enlarged from a bitmap is a barcode scanners refuse at the till. The generators are explicit about the two things that actually decide whether a symbol reads: the printed width of the narrowest bar, and the quiet zone of blank space either side that people crop away to make a label fit.
- Address Label SheetPrint address labels at real millimetre sizes, measured rather than guessed from a preset.
- Barcode Label Sheet PDFA printable sheet of barcodes, optionally numbered in sequence.
- Bulk Barcode from CSVTurn a pasted list or CSV column into a printable sheet of barcodes.
- Barcode Check Digit CalculatorCalculate or verify the check digit on a barcode number.
- Code 128 GeneratorGenerate a Code 128 barcode that will actually scan at the size you print it.
- Code 39 GeneratorGenerate a Code 39 barcode — the symbology every scanner reads without configuration.
- EAN-13 Barcode GeneratorEAN-13 barcodes with the check digit calculated — and verified if you have one.
- UPC-A Barcode GeneratorGenerate a UPC-A barcode with the check digit calculated — or verified against yours.
- Label Printer Test (ZPL)Print a diagnostic label that shows dead printhead elements, weak darkness and wrong sizing.
What decides whether a barcode scans
Two measurements matter far more than the software that drew the symbol. The first is the width of the narrowest bar, the X-dimension: print it below roughly 0.25 mm and consumer scanners begin to struggle, and shrinking a barcode to fit a label is the single most common reason one fails at a till. The second is the quiet zone, the blank margin either side — Code 128 needs about ten times the narrowest bar width, EAN-13 needs a specified margin marked by the chevron on the film — and it is the first thing people crop away when a label is tight. Everything here renders as vector output so scaling stays crisp.
Choosing between Code 128 and EAN-13
They solve different problems. Code 128 is the general-purpose symbology for internal use: it encodes the full ASCII set, has no fixed length, and is what you want for an asset tag, a shelf location, a batch reference or an order number. EAN-13 is for retail, encodes exactly thirteen digits, and its final digit is a check digit computed from the other twelve. Crucially, an EAN-13 that will be scanned in a shop needs a number legitimately allocated to you through GS1 — inventing a plausible thirteen digits produces a valid symbol that collides with somebody else’s product.
Thermal label printers fail in recognisable ways
Direct thermal printing has a small set of characteristic faults, and a diagnostic label makes each obvious. A thin white line running down every label in the same place is a dead printhead element, which does not recover and means a replacement head. Uniformly faint output is usually darkness set too low, a printhead that needs cleaning with isopropyl alcohol, or media that does not match the printer’s settings. Labels that come out the right content but the wrong size, or that drift down the roll, point at calibration — the printer needs to re-learn the gap or black mark between labels before anything else will line up.
Frequently asked questions
Why does my printed barcode not scan?
Nearly always size or quiet zone. Shrinking a barcode to fit a label reduces the narrowest bar below what consumer scanners resolve — roughly 0.25 mm is the practical floor — and cropping the blank margin either side removes the quiet zone scanners use to find the symbol’s edges. After those, check contrast and print quality: a faint thermal label or a barcode printed on a coloured background is a barcode a scanner will refuse.
Should I use Code 128 or EAN-13?
Code 128 for anything internal — asset tags, shelf locations, batch numbers, order references — because it encodes the full ASCII set at any length. EAN-13 only for retail products scanned at a till, since it is exactly thirteen digits with a computed check digit. The catch is that a retail EAN-13 needs a number properly allocated to you through GS1; inventing thirteen plausible digits produces a valid-looking symbol that collides with someone else’s product.
Can I make up my own EAN-13 number?
You can generate a structurally valid one, and you should not use it commercially. The number space is allocated through GS1, and an invented code either collides with an existing product or belongs to a prefix registered to someone else — which retailers do check. For internal stock control where nothing will pass a retail till, Code 128 is the right choice and carries no allocation requirement at all.
What does a white line down every thermal label mean?
A dead printhead element. It appears in the same position on every label, does not move, and does not recover with cleaning — the head needs replacing. That is distinct from uniformly faint output, which is usually darkness set too low, a head needing a wipe with isopropyl alcohol, or media that does not match the printer’s settings. Labels of the wrong size or drifting down the roll point at calibration instead.