This page opens on Code 128 with an example warehouse bin location, BIN A-14-03, already drawn, and PNG selected for the download. Replace it with your own text: the preview redraws as you type, and the scan check under it reads the barcode back the way a scanner would.
When Code 128 is the right barcode
Code 128 is for codes you assign yourself and read back inside your own business: stock-keeping units, bin and shelf locations, asset tags, work orders, library and lab samples, shipping references. It takes any mix of letters, digits and punctuation and stays compact, so it fits on small labels.
| Barcode | What it holds (in this generator) | Use it for |
|---|---|---|
| Code 128 | letters, digits, spaces and symbols, up to 80 characters | your own SKUs, locations, serials |
| Code 39 | capitals, digits, space and - . $ / + %, up to 60 | older systems that only read Code 39 |
| GS1-128 | GS1 application identifiers in brackets | cases and pallets for trading partners |
| UPC-A / EAN-13 | 12 or 13 digits from a GS1 number | products sold in shops |
Code 128 is not a retail product barcode. A till scans UPC or EAN numbers that are registered to your company; if you sell through shops or marketplaces, use the UPC or EAN-13 pages instead.
Size and printing
The bars start at 0.33 mm per module and 15 mm tall, a size that suits labels from a thermal or laser printer. Longer text makes a wider barcode at the same module width, so for a long serial number on a narrow label, shorten the code or lower the module width a little and check that the scan check still says it scans. Leave the white margin on both sides: a scanner needs it to find where the barcode starts.
PNG is right for documents and spreadsheets, SVG stays sharp at any size for print layouts, and PDF gives one barcode per page at its real size. For many codes at once, switch to batch mode, paste one value per line and print them on a label sheet.