Skip to main content
Free online code tools

Free Bulk QR Code Generator from Excel or CSV

Upload a spreadsheet and get a ZIP of print-ready codes plus a report of every row. Rows that fail are reported, never quietly skipped.

  • No signup
  • Up to 500 codes per file
  • Runs in your browser

This page gives you one image file per row in a ZIP. Print labels from CSV instead if you want a print-ready sheet. Your file stays on this device either way.

Upload a CSV or Excel file

One row per code. A data column is used if present, otherwise the first column. An optional name column sets the file name. Up to 500 rows, 5 MB. CSV, .xlsx, .xlsm and .xls are read in your browser. Numbers with a leading zero should be entered as text in the sheet so the zero is kept.

Start from a sample file

Open one, replace our rows with yours, save, and upload it above.

namedata
table-01https://example.com/menu?table=1
table-02https://example.com/menu?table=2
spring-flyerhttps://example.com/offers/spring

What you get in the ZIP

qrcode-so-batch-qrcode.zip
├─ table-01.svg
├─ table-02.svg
├─ table-03.svg
├─ table-04.svg
├─ spring-flyer.svg
├─ review-card.svg
└─ manifest.csv

manifest.csv

row,file,data,status,message
"1","table-01.svg","https://example.com/menu?table=1","ok","Encoded"
"2","table-02.svg","https://example.com/menu?table=2","ok","Encoded"
"7","","","failed","Empty value — nothing to encode."

Step by step

  1. 1

    Make two columns

    Column A “name” becomes the file name; column B “data” is what the code holds — a link, text or a product number. A header row is optional.

  2. 2

    Upload the file

    Drop in the Excel or CSV file, or paste one value per line. Up to 500 rows; nothing leaves your device.

  3. 3

    Choose the format

    QR code, or a barcode such as Code 128, EAN-13 or UPC-A. Every row is checked against that format’s rules.

  4. 4

    Download the ZIP

    One SVG per row plus manifest.csv, which lists each row, its file and whether it worked.

How the batch is checked

Each row is validated against the same rules as the single-code generator before anything is drawn — a wrong-length EAN or an unsupported Code 39 character is reported with its row number rather than producing an unscannable image. The manifest inside the ZIP records every row, its file name if it succeeded, and the exact reason if it did not.

Printing the batch

The ZIP gives you separate image files, which suits designers and mail-merge tools. If you want a sheet of stickers instead — Avery-compatible A4 or Letter, or a thermal roll — upload the same spreadsheet to the label maker, which lays the codes out at actual size. See printing labels from a CSV file for the column format.

Bulk generator — common questions

Can I upload an Excel file, or only CSV?

Both. .xlsx, .xlsm and .xls files are read in your browser, along with .csv. Only the first sheet is used, so put your codes on the first tab.

How many codes can I make at once?

Up to 500 rows per file, and files up to 5 MB. For more, split the sheet into several files and run them one after another.

What format are the codes in?

One SVG file per row. SVG is a vector format, so a printer can scale it to any size without blurring. Open it in a browser, Word, Canva, Illustrator or Inkscape. Need a print-ready sheet of labels instead? Use the label maker with the same spreadsheet.

Why did some rows fail?

Each row is checked against the rules for the chosen format before anything is drawn — for example an EAN-13 must be 12 or 13 digits, and Code 39 cannot contain lower-case letters. Failed rows are listed with the reason in manifest.csv inside the ZIP, and on screen.

My numbers lost their leading zeros.

Spreadsheet programs turn 00123 into 123. Format that column as Text before typing, or put an apostrophe in front ('00123), then save again.