Paste a list of SKUs, serial numbers or asset tags — or import a CSV, or copy two columns (code + name) straight from Excel — and get a Code 128 barcode for every line. Choose automatic set switching or force Code 128 A, B or C, then download them all as PNG or SVG in one ZIP, or print them on one sheet. Everything runs in your browser.
Up to 100 codes per batch — this keeps rendering fast and the tab responsive. Codes that don't fit the selected format are skipped and listed below the results with the reason (wrong length, non-numeric, or a check digit that doesn't match). If your EAN list has 12 digits (or your UPC list 11) because the check digit was never added, choose Missing — calculate it. Numbers that look damaged by a spreadsheet (a dropped leading zero, 4.00638E+12) are called out by name. For printing, pick SVG or PNG — large, or use the print sheet under the results.
Code 128 encodes any ASCII text — upper and lower case letters, digits and punctuation — at any length, with no registration and no fixed format. That makes it the default barcode for anything you number yourself: SKUs, bin and shelf locations, asset tags, serial numbers, ticket and order numbers, document IDs. It's also the symbology inside GS1-128 carton labels and Amazon's FNSKU labels. For a retail product that will be scanned at someone else's checkout, you need a registered UPC-A or EAN-13 instead. The bulk barcode generator covers those (the formats are also in the menu above), and UPC vs EAN vs Code 128 explains which one a label needs.
A Code 128 barcode can switch between three character sets, and a scanner returns the same text whichever set was used. Auto picks the shortest combination, the way label software does, and is the right choice unless a specification names a set. B covers the printable characters: letters in both cases, digits and punctuation. C packs two digits into each symbol for compact all-numeric codes, but needs an even number of digits. An odd count is rejected rather than silently padded, because a padded leading zero is exactly the extra zero people later find when they scan. A adds control characters and has no lower case. It's rarely needed outside older industrial systems.
Code 128 grows with its content. In set B, each character takes 11 modules, plus 35 modules for the start, check and stop characters, plus a quiet zone of at least 10 modules on each side. A 10-character SKU is therefore 145 modules of bars. At a common 0.25 mm module that's about 36 mm, plus at least 2.5 mm of clear space at each end. Long all-numeric codes shrink a lot in set C, where 12 digits become 6 symbols. If a barcode won't fit your label, shorten the data, or use more digits and fewer letters, before you shrink the bars. Bars that are too thin are the usual reason a printed label won't scan.
Paste one code per line. Or select a code column and a name column in Excel or Google Sheets (code first) and paste both. Each row arrives tab-separated: the code is encoded, and the name becomes the downloaded file name and the caption on the print sheet. Import CSV / TXT loads a file the same way. The first column is the code, the second is the name, and a header row such as "SKU" or "Code" is skipped. Excel files (.xlsx) can't be read directly, so save them as CSV first or copy and paste. If your codes are long numbers, format the column as Text before exporting. Otherwise Excel may turn them into 1.23E+12 or drop leading zeros (why that happens).
Up to 100 barcodes per run, which keeps the page responsive on any device. For a longer list, run it in chunks of 100. Each run gives you its own ZIP and print sheet.
Yes. After generating, choose how many barcodes per row and click Print sheet / Save as PDF. The sheet redraws every barcode as vector graphics, adds dashed cutting guides and puts the name under each one. Choose "Save as PDF" in the print dialog to get a single file, and print at 100% scale. For long values, use 2 or 3 per row so the bars stay wide enough to scan.
FNSKU labels are Code 128, so you can generate the barcode itself here from the FNSKU (the X00… code). The label Amazon expects also carries the product title and condition at a specific size, so the label PDF from Seller Central is still the safest source for inbound FBA shipments. Use this tool for internal stock labels, or when you need many barcodes in a format Seller Central doesn't provide.
No. GS1-128 is Code 128 with a special FNC1 start character and Application Identifiers such as (01) and (17). This tool produces plain Code 128. If you type (01)…, the barcode scans, but GS1 systems won't parse it as structured data. Use GS1-aware label software for carton labels.
Once the page has loaded, it works with no connection, and nothing you enter or import leaves your browser. The barcodes are drawn locally with the open-source JsBarcode library.