Skip to content
Toolbase

Bulk QR / Barcode from CSV

Upload a CSV and get a ZIP of QR codes or barcodes, each file named after a column value. Perfect for SKUs and product labels. Free, private.

Your images never leave your browser
BulkZIP downloadNo upload
Loading tool…

How to use the Bulk QR / Barcode from CSV

  1. 1Drop a CSV, or switch to Paste values and paste one value per line.
  2. 2Map the value column and the filename column.
  3. 3Choose QR or a barcode symbology and add any prefix or suffix.
  4. 4Click Generate and watch the progress bar.
  5. 5Download the ZIP of PNG or SVG codes.

Hundreds of codes from one spreadsheet

Making one QR code takes a minute. Making four hundred, one per SKU, one per order, one per shelf location, and naming every file so it can be found again takes an afternoon and ends with mistakes. Bulk QR / Barcode from CSV reads a spreadsheet export, generates a code for every row, names each file from a column of your choice and hands you a single ZIP.

How it works

  1. Export your list as CSV from Excel, Google Sheets, Shopify, Amazon inventory reports or your ERP. A header row helps but is not required.
  2. Drop the CSV, or switch to Paste values and paste one value per line straight from a column.
  3. Map the columns: which column holds the value to encode and which column supplies the filename. Mapping SKU to both is common; mapping product URL to value and SKU to filename is how you get sku-1234.png containing a link.
  4. Choose the code type: QR (with the same colour, logo and error correction options as the single generator) or a barcode symbology such as EAN-13, UPC-A, Code 128 or ITF-14.
  5. Add an optional prefix or suffix. Prefixing https://yourshop.com/p/ to a column of handles turns product handles into working product-page QR codes; suffixing ?ref=box tracks scans.
  6. Click Generate. A progress bar counts rows and reports invalid values, then a ZIP downloads with every PNG or SVG.

Rows are processed in a Web Worker in batches, so a few thousand codes finish in well under a minute on a normal laptop.

Why it matters

  • Marketplaces and warehouses run on codes. FBA shipments want one FNSKU barcode per unit, Shopify POS scans a barcode per variant, and a WhatsApp QR code on every parcel from a Daraz order opens a support chat with the order number pre-filled.
  • Filenames are the difference between usable and useless. A ZIP of 400 files named qr-001 to qr-400 forces you to open each one; files named by SKU drop straight into label software, print merges and product image folders.
  • Invalid data is caught before printing. EAN-13 rows with 12 or 14 digits, or check digits that do not match, are listed in the report instead of silently producing a wrong barcode.
  • Consistent styling across a catalogue looks professional. Every code in the batch gets identical size, margin and colours.
RowsOutputApproximate time
100100 PNG files, one ZIPA few seconds
1,0001,000 PNG files, one ZIPUnder 30 seconds
5,0005,000 SVG files, one ZIPAbout a minute

Tips

  • Save the CSV as UTF-8 so non-Latin product names in the filename column survive; the tool also strips characters that are illegal in filenames.
  • Use SVG output for label printers and PNG at 600 px or more for anything that will be resized.
  • Keep encoded values short. A code holding a 40-character URL scans far better on a small label than one holding a 200-character one.
  • Rename or convert the resulting files in bulk later with Bulk Rename + Convert, and lay them out on printable sheets with Image to PDF / PDF to Images.
  • Test one value first in the QR Code Generator or Barcode Generator to settle the styling, then run the whole file here.

Privacy

Your images never leave your browser and neither does your spreadsheet. The CSV is parsed on your device, every code is rendered locally and the ZIP is built in memory, so SKU lists, customer order numbers and internal URLs are never uploaded.

Frequently asked questions

What should my CSV look like?

Any CSV with one row per code. A header row lets you pick columns by name. At minimum you need a column with the value to encode; a second column for filenames is optional. Excel, Google Sheets, Shopify and Amazon inventory exports all work directly without editing.

How are the files named?

By the column you choose in the filename mapping, so a SKU column gives sku-1001.png and so on. Characters not allowed in filenames are stripped, duplicates get a numeric suffix, and non-Latin names are kept if the CSV is saved as UTF-8. A prefix or suffix can be added too.

Can I make barcodes as well as QR codes?

Yes. Choose QR or a barcode symbology such as EAN-13, UPC-A, Code 128, Code 39 or ITF-14. For EAN and UPC, check digits are added or verified per row, and rows with the wrong digit count are listed in the report instead of producing a bad barcode.

How many rows can it handle?

Thousands. Codes are rendered in a Web Worker in batches with a progress bar, so a 1,000-row file finishes in under 30 seconds on a typical laptop and the page stays responsive. Very large files are limited only by your device's memory for building the ZIP.

Do I have to upload the CSV?

No. Paste values mode lets you paste one value per line straight from a spreadsheet column, and files dropped into the tool are parsed on your device. Nothing is sent to a server, so SKU lists, customer order numbers and internal URLs stay private.