Bulk QR code generator

Paste a list, one entry per line, and download up to 1,000 QR codes in a single ZIP.

px
Your codes
Paste your list above and press Generate. Every code is generated on your device, nothing is uploaded.

A thousand QR codes from one paste

Making one QR code is easy. Making three hundred, one per event ticket, is where most free tools give up and point you at a paid plan. This one takes a plain list, one entry per line, and turns every line into its own QR code, up to 1,000 at a time. Press Generate and it works through the list in the background with a live count, then hands you a single ZIP containing every image plus a mapping.csv index. Codes can be PNG, JPG or SVG at any size from 128 to 2048 pixels, each with a white background and the standard 4 module quiet zone already included.

The difference from most bulk services is where the work happens. Your list is never uploaded: the codes, the CSV and the ZIP file itself are all built by JavaScript running on your device. That matters when the list is a batch of ticket links, serial numbers, staff logins or internal URLs that should not be sitting in a stranger's server logs. It also means no sign-up, no watermarks and no per-code pricing.

Naming the files

By default the files are named in order: qr-0001, qr-0002 and so on, matching the order of your lines. When you want meaningful names, put the name first, then a pipe character, then the text to encode. Names are tidied automatically, lowercased with anything unusual swapped for hyphens, and duplicates get _2, _3 endings so nothing is overwritten.

table-07 | https://example.com/menu
Produces table-07.png containing the menu link, and a row in mapping.csv reading table-07.png,https://example.com/menu.
250 ticket links pasted with no pipes
You get qr-0001 to qr-0250, so the ZIP holds 251 files: 250 images plus mapping.csv. The 42nd line of your list is always qr-0042.

What is in the ZIP

Alongside the images sits mapping.csv, a two column file listing every filename next to the exact text it encodes. It sounds like a small thing until you are holding a folder of near-identical squares: the CSV is how you match code 0173 back to order 0173, feed a mail merge, or spot-check a sample before printing. Values containing commas or quotes are escaped properly, so it opens cleanly in Excel, Google Sheets or any script.

Lines that cannot become a code, usually because they hold more text than the QR specification allows, are reported by line number and skipped, so one bad line never sinks a batch of 999 good ones. Each code uses medium error correction, meaning roughly 15% of a printed code can be scuffed or covered and it will still scan. The tool picks the smallest QR version that fits each line, and the pixel size you choose is divided across the resulting grid:

pixels per module = image size ÷ (modules per side + 8)
A 32 character link at the default 512 pixels
32 bytes needs version 3 (version 2 holds 26 bytes at medium correction, version 3 holds 42), which is 29 modules per side. With the quiet zone that is 37 cells, so each module is 512 ÷ 37 ≈ 14 pixels, comfortably crisp for print.

Where bulk codes earn their keep

  • Event tickets. One unique check-in link per ticket, named by ticket number, merged onto the printed design from mapping.csv.
  • Product labels. A code per SKU pointing at the product page or care instructions, as SVG for the label printer.
  • Table numbers. Every table gets its own ordering link, named table-01 to table-40 with the pipe syntax.
  • Asset tags. Laptops, tools and kit each get a code that resolves to their entry in your asset register.
  • Inventory and shelf labels. Warehouse bins with codes that jump straight to the stock record, regenerated in minutes when locations change.

Print a sample at final size and scan it with a couple of phones before committing to the full run. QR Code is a registered trademark of DENSO WAVE INCORPORATED.

Frequently asked questions

How do I choose my own filenames?

Put the name first, then a pipe character, then the text, like table-01 | https://example.com/menu. That line becomes table-01.png containing the link. Lines without a pipe are named automatically as qr-0001, qr-0002 and so on.

What is mapping.csv for?

It is a two column index inside the ZIP listing every filename next to the exact text it encodes. A thousand QR images look identical to the eye, so the CSV is how you check, print or mail merge the right code against the right record. It opens in Excel or Google Sheets.

Is my list uploaded anywhere?

No. The codes and the ZIP itself are built entirely in your browser with JavaScript, so lists of ticket links, serial numbers or internal URLs never leave your device. That also means there is no account, no watermark and no per-batch charge.

Why did some lines fail?

Almost always because a line holds more text than one QR code can store, which is a hard limit of the QR specification. Failed lines are listed by line number and every other line still generates, so you can shorten the long ones and rerun just those.

Which format should I pick?

PNG is the safe default for screens, documents and most print. JPG makes smaller files but has soft edges, so only use it where space is tight. SVG is a vector that stays perfectly sharp at any size, ideal for professional print work like labels and posters.

Related tools