Barcode Tools · Free
Bulk barcode label generator.
Paste or open a CSV of codes and get a print-ready sheet of barcode labels for Avery 5160 or 5163. Every row is checked, check digits included, and nothing leaves your browser.
Inputs
Rows and sheets
| Row | Input | Result |
|---|
Sheet preview
No sheets yet.
How the labels are laid out
Each valid row becomes one label, filled left to right then top to bottom, and a new sheet starts when the grid is full. Rows that fail validation are listed with the reason and are left off the sheet, so a bad code never reaches a printed label. The symbol is scaled to fit its label while keeping its proportions and its built-in quiet zone, and a caption from column 2 is printed underneath.
| Preset | Label | Grid | Left / top margin | Pitch (across / down) |
|---|---|---|---|---|
| Avery 5160 | 2-5/8" x 1" | 3 x 10 = 30 | 0.1875" / 0.5" | 2.75" / 1.0" |
| Avery 5163 | 4" x 2" | 2 x 5 = 10 | 0.16" / 0.5" | 4.19" / 2.0" |
Label sizes, counts per sheet and the Letter (8-1/2" x 11") sheet size come from Avery's template pages: Avery 5160 and Avery 5163. Margins and pitch were measured from the blank PDF templates those pages offer for download (read at 300 dpi), so the 5163 figures are good to about 0.01". Page checked 30 Sep 2026. If your labels ever differ from these figures, Avery's template for your product number is the authority.
Check digits, worked example
The GS1 check digit is a modulo-10 sum. Take the 12 data digits of EAN-13 5901234123457, which are 590123412345. Working from the right, multiply alternate digits by 3 and 1: (5x3) + (4x1) + (3x3) + (2x1) + (1x3) + (4x1) + (3x3) + (2x1) + (1x3) + (0x1) + (9x3) + (5x1) = 15 + 4 + 9 + 2 + 3 + 4 + 9 + 2 + 3 + 0 + 27 + 5 = 83. The check digit is the amount that rounds 83 up to the next multiple of 10, which is 7. So 590123412345 becomes 5901234123457, and 5901234123458 fails because its last digit should be 7. UPC-A uses the same rule on 11 digits. Source: GS1: how to calculate a check digit manually (checked 30 Sep 2026).
What a pass means: a check confirms format and checksum only. It does not show the number was issued to you. Retail EAN and UPC numbers are issued through GS1; Code 128, Code 39 and QR labels for your own inventory need no GS1 number. Code 128, Code 39 and QR rows are checked for allowed characters only, because those symbologies carry whatever data you give them.
Printing tips
- Print at 100% scale on Letter paper with margins set to None. "Fit to page" shifts every label.
- Switch on label outlines and print on plain paper first, then hold it over a blank label sheet against a window.
- Scan one printed label with the scanner you will actually use before printing the full run.
- Long values shrink the bars to fit the label. If a scanner struggles, use a shorter code or the larger 5163 label.
FAQ
What should the CSV look like?
One code per line. An optional second column is printed as a caption under the symbol, and an optional first row of code, barcode, value, sku or id is skipped as a header. Quoted fields with commas are supported.
Does a passing check digit mean the number is real?
No. The check confirms only that the final digit matches the GS1 modulo-10 rule for the other digits. It does not show that the number was issued to you or to anyone. Retail EAN and UPC numbers come from GS1.
How do I print so the labels line up?
Use Print, choose Letter paper, set scale to 100 percent (not Fit to page) and margins to None. Print one test sheet on plain paper with label outlines switched on and hold it against a blank label sheet to the light before using real labels.
Is my list uploaded anywhere?
No. The CSV is parsed and the labels are drawn in your browser. Nothing you paste or open is sent to a server.
Why are only Avery 5160 and 5163 offered?
Their sheet geometry could be checked against Avery's own template files. Other layouts are not included until they can be verified the same way.