Bulk barcode generator
- Free for commercial use
- No sign-up
- Nothing uploaded
Choose the output
US Letter sheets for laser printers. Other sheets aren't supported yet.
Start at label 1. To change it, click the first empty label.
One label per PDF page, each page the size of the label.
Off: each page is the size of its barcode, for design files. On: Letter pages with the barcode at true size, the print note and rulers.
First time with this sheet? Print the alignment test page and hold it against a blank label sheet, up to the light.
By downloading or printing, you agree to the Terms of use.
Make the file
Scan check: when you make the file, the page tries to read each barcode back before you download it.
Print at 100% (Actual size), not "Fit to page". Then measure the ruler: 1 in should be 1 in.
Free to use, including commercially. No sign-up, no watermark. License
By downloading or printing, you agree to the Terms of use.
This bulk barcode generator turns a pasted list or a CSV file into Avery label sheets, thermal labels, one PDF or a ZIP of files. It runs in your browser, so nothing is uploaded, and it checks every row: each one that can't be made is listed with the reason. Lists have no row limit. A PDF holds up to 100,000 codes at a time; a ZIP has no limit. On a phone, a very large ZIP of separate files can run out of memory, so the page warns you first. For Amazon FBA labels, use the FNSKU label generator.
Make barcodes from Excel or Google Sheets
Put your codes in one column, and captions (such as a SKU or a product name) in another if you want them on the labels. Export the sheet as CSV (File, then Download or Save as, then CSV) and upload it here, then pick the code column and the caption column.
Spreadsheets treat long numbers as numbers and drop their leading zeros: the U.P.C. number 036000291452 becomes 36000291452. Before you export, format the code column as Text. This page keeps every value exactly as it is in the file, and flags rows that look like they lost their zeros instead of guessing.
Which label sheets are supported
| Sheet | Labels per sheet | Label size |
|---|---|---|
| Avery 5160 | 30 | 1″ × 2-5/8″ |
| Avery 5161 | 20 | 1″ × 4″ |
| Avery 5162 | 14 | 1-1/3″ × 4″ |
Source: Avery's own templates for each sheet, US Letter. Measured on October 28, 2026.
The same sizes are sold under other brands; what matters is the layout on the sheet. A full-height UPC-A or EAN-13 is taller than a 1″ label, so on Avery 5160 and 5161 the page offers Avery 5162 or a shorter bar height (below GS1's minimum, which some scanners may not read).
Print label sheets that line up
- Print the alignment test page on plain paper first and hold it against a blank label sheet, up to the light. The outlines should sit on the labels.
- Print at 100% (Actual size), not "Fit to page". A PDF scaled to fit comes out the wrong size, and the labels drift off the sheet. Each PDF has a ruler to check.
- On a part-used sheet, pick the first empty label as the start position, so the used labels are skipped.
Thermal label printers
Thermal printers print one label at a time from a roll. Pick your roll size and your printer's resolution, usually 203 dpi or 300 dpi. Each bar is drawn as a whole number of printer dots, and a 203 dpi printer's dots are large: the smallest UPC-A or EAN-13 it can print exactly has bars 3 dots wide, 0.375 mm (14.8 mils), where a 300 dpi printer can use 4 dots, 0.339 mm (13.3 mils). So the same code comes out wider at 203 dpi.
Why some rows are not exported
A row is left out of the file when its check digit is wrong, when it has the wrong length or characters the barcode type can't hold, when it doesn't fit the label, or when its barcode doesn't scan back in the check. An 11-digit UPC-A waits for a choice: it can be a UPC-A missing its check digit, or one whose leading 0 a spreadsheet dropped. Pick a reading for one row, or use it for all similar rows. The report lists every row with its reason, and you can download it as a CSV.
Questions
Is there a row limit?
No. Lists of any length are checked. A PDF holds up to 100,000 codes at a time, so split longer lists or make a ZIP. On a phone, a ZIP of thousands of files can run out of memory; the page warns you before it starts.
Why are some rows not exported?
Because they are wrong or can't be made: a wrong check digit, a wrong length, a value that needs a choice, or a code that doesn't fit the label. Each one is in the report with the reason. Rows that are fine are made either way.
Can I add a caption under each code?
Yes, on label sheets and thermal labels. Add a caption column to your CSV, or paste two columns, and pick it as the caption column. A caption too long for the label is cut with "…".
Does my data leave my computer?
No. The file and the list are read in this browser tab, and the barcodes are made there. Nothing you paste or upload is sent to us or to analytics.
Can I print on a part-used sheet?
Yes. Choose the first empty label as the start position. The used labels before it stay blank in the PDF.