Bulk QR Code Generator
Bulk QR code generator, CSV in and ZIP out
Paste a list of URLs or upload a CSV. The generator builds a QR for each row, names them sequentially, and packs the lot into a ZIP with a manifest. Made for table numbers, event tickets, SKU stickers and campaign tracking URLs.
CSV or one URL per line
URLs to encode
One URL per line. Optional filename label after a comma. `#` lines are ignored.
- Files never leave your device
- Runs in your browser
- Free, no signup
How it works
- 1
Paste URLs or upload CSV
One URL per line, or `url,label` for explicit filenames. Comments start with `#`.
- 2
Pick format and size
PNG, SVG or JPG. 512–2400 px. The same style applies to every QR in the batch.
- 3
Download the ZIP
Each QR is sequentially numbered. A manifest.csv reconnects each file to its source URL.
What this bulk QR tool does
CSV or one-per-line
Two-column CSV with optional labels, or pasted URLs. Skip the label and we derive a slug from the URL.
Manifest for the print shop
ZIP includes a manifest.csv mapping each filename to its source URL. Hand-off to designers stays clean.
All-local rendering
Each QR renders in your browser. Nothing is uploaded; no list of your URLs lands on anyone else's server.
Where this helps
Hotel table numbers
60 tables, 60 QRs pointing at the right `/menu?table=N`. One run, one ZIP, one print order.
Event tickets
Per-attendee URLs with unique tokens. Bulk-encode, send to the lanyard printer with the manifest.
Inventory SKU labels
One QR per SKU pointing at the lookup URL. Manifest doubles as the label sheet.
Campaign UTM links
One QR per channel (poster, swag, digital). Per-channel attribution from the same campaign.
Property listings
One QR per listing pointing at the agent's microsite. Bulk-print yard-sign stickers.
Trade-show booths
Per-product info-page QRs. Visitors scan the right product without your team typing on tablets.
Tips that help
- 1
Use short URLs
Long tracking URLs make dense QRs. A short redirect URL keeps the QR scan-friendly at smaller print sizes.
- 2
Keep batches under 1,000
Browser memory handles 1k cleanly. 10k push the page; split into chunks of 500-1,000 for very large runs.
- 3
Pair the QR with a printed label
QRs all look the same. Print the table number or attendee name above each so users know which to scan.
- 4
Keep the manifest with the print order
Print shops appreciate a spec sheet. The manifest doubles as your reconciliation record.
When bulk QR generation earns its place
One-off QRs work fine in a normal generator. Bulk is for the case when you need a hundred at once: a table-number campaign across a hotel, a numbered ticket run for an event, a SKU sticker batch for inventory. Generating them one at a time wastes time; bulk plus a manifest gets the job done in a single download.
The CSV format
Two columns: `url` and `label`. The URL is what the QR encodes. The label becomes the filename (e.g. `table-1.png`). If you skip the label, we slugify the URL.

Lines starting with `#` are treated as comments. Blank lines are ignored. Headers are not required; we treat the first row the same as any other.
Single-column input also works: paste one URL per line and we derive the filename from the URL. This is the fastest path for a quick batch.
Filename and manifest
Each QR is named `01-yourlabel.png`, `02-yourlabel.png`, and so on. The two-digit prefix preserves order when the ZIP is unzipped or imported into a designer's tool.
The ZIP also includes a `manifest.csv` mapping each index to its filename and source URL. Hand this to your print shop alongside the QRs so they can sanity-check the run.
Filenames are stripped of unsafe characters. URLs with query strings still work; we slugify the path component only when no explicit label is given.
Where bulk QR earns its place
Hotel and restaurant table-number QRs: 60 tables, each pointing at `/menu?table=12`. One batch, one ZIP, one print run.
Event ticketing: per-attendee URL with a unique token. Bulk-generate, hand to the print shop with the manifest, lanyards print with the right token.
Inventory labels: one QR per SKU pointing at a lookup URL. The manifest doubles as your label sheet for the warehouse.
Campaign tracking links: per-channel UTM-tagged URLs. Each channel gets its own QR for posters, swag and digital placements.
Read moreRead less
What to watch for
Long URLs make dense QRs. If your tracking URL is 400 characters, each QR is a 33×33 grid; print larger or shorten the URL with a redirect.
Browser memory. 1,000 PNGs at 1024 px fit; 10,000 push the page. For very large batches, split into chunks of 500-1,000.
Visual sameness. Bulk QRs at a default style look identical; pair the print with a clear label per row (table number, attendee name) so users know which is which.
Frequently asked questions
Honest answers to what people ask before using this tool.
Further reading
Independent references if you want to go deeper on the formats and tradeoffs.
Related tools
- QR code generator
One-off QR with full styling options.
- QR code with logo
Single branded QR with a centre logo.
- QR code scanner
Decode a QR with the webcam or an image upload.
- Wi-Fi QR code generator
Single Wi-Fi QR for cafes, hotels and offices.
- Compress to a target KB
Shrink the QR PNGs after extraction if a system has a size cap.
- Resize image in pixels
Resize all the extracted QRs to a print spec.