Bulk Barcode Generator from CSV
Generate Code 128, Code 39, EAN-13, EAN-8, UPC-A, or ITF-14 barcodes from spreadsheets—with deterministic validation before you print.
Choose what each code contains
Retail formats validate digit count and check digit. This tool renders identifiers you already have; it does not allocate GTIN, UPC, or EAN numbers.
Preview
Your file and generated codes stay in this browser tab. Nothing is uploaded.
Help, examples, limits, and privacy
Input: A CSV with one identifier column and an optional label column. Output: Validated barcode labels in PNG, ZIP, A4, or Letter format.
High-resolution PNGs preserve quiet zones and bar proportions. PDF sheets use fixed cells so browsers never stretch the barcode image.
How it works
- Add product data. Upload a CSV or paste rows with SKU, item, asset, GTIN, UPC, EAN, or other identifier columns.
- Pick and validate the format. Use Code 128/39 for internal identifiers, or render an existing EAN-13, EAN-8, UPC-A, or ITF-14 after length and check-digit validation.
- Print or download. Export individual PNG files, a ZIP batch, or a printable A4 or Letter page of barcode labels.
Before you print
- Lowercase or unsupported symbols when Code 39 is selected
- Duplicate SKUs creating duplicate filenames
- Printing with Fit to page instead of 100% scale
Frequently asked questions
Should I use Code 128 or Code 39?
Code 128 is compact and supports more characters. Code 39 is common in industrial systems but has a smaller character set.
Does this issue UPC, EAN, or GTIN identifiers?
No. It only validates and renders identifiers you supply. Obtain retail identifiers through the appropriate issuing organization for your market.
Which retail formats are validated?
EAN-13, EAN-8, UPC-A, and ITF-14 are checked for digits, exact length, and a valid check digit before generation.
Will the printed barcodes scan?
Exports preserve a white quiet zone, dark bars, and fixed proportions. Printer quality and scaling still matter, so test one sheet before a large run.