Bulk QR Code Generator
Paste a list of links, download a ZIP of print-ready codes. Free, no signup, right on this page.
Making QR codes one at a time stops being fun at around the third code. This bulk QR code generator takes a pasted list or a CSV - one destination per row, with an optional name for the filename - and produces a ZIP of print-ready PNG or SVG codes plus a manifest, up to 100 per batch. It runs entirely in your browser: your links are never uploaded anywhere, there's no account, and no watermark. It generates static codes, which are perfect for stable destinations; if the URLs might ever change after printing, make them dynamic instead so a locked-in typo can't ruin a print run.
Paste your links, download a ZIP
Runs entirely in your browser - nothing is uploadedWhat you get
100 codes in one click
Table numbers, asset tags, event badges, product labels: paste the list, get the ZIP. Named rows become named files, and a codes.csv manifest maps every file to its destination.
Private by design
The generator runs in your browser - your URLs never touch our servers. Paste internal links, unreleased pages, or client work without a second thought.
Print-ready formats
1024px PNGs for labels and documents, or infinitely scalable SVGs for signage and professional print. No watermark on either, ever.
How it works
- 1
Paste your links (one per line) or upload a CSV with optional names, like: Table 4, https://menu.example.com
- 2
Pick PNG, SVG, or both - then hit Generate and save the ZIP.
- 3
Print and place them. If any destination might change later, recreate that code as a dynamic one first.
Who needs bulk QR code generation
Bulk generation matters when the codes have to be distinguishable - when the point is that table 12 is not table 13. If every copy would be identical, you do not need bulk generation, you need one code and a printer.
If the list already lives in a spreadsheet, export the name and link columns as CSV and paste them above. The Google Sheets QR code guide covers the export, and why the in-cell formula is not a print file.
Restaurants: table by table
One code per table rather than one for the room. Table 12's scan count tells you the terrace outsells the back room, and an order-at-table flow needs the table number in the URL anyway. A 40-table venue is a 40-row CSV and one export.
Asset tags and equipment
Laptops, ladders, extinguishers, HVAC units: each code carries the asset ID and opens its service record. Facilities teams generate hundreds at a time and print them on weatherproof labels.
Event badges
One unique code per attendee for check-in, session scanning, and lead capture. Generated from the registration export the night before, printed on the badge stock, done.
Product labels and packaging
Per-SKU or per-batch codes that open the manual, the authenticity check, or the reorder page. Batch codes let you trace a recall to the production run instead of the whole product line.
Retail and real estate signage
One code per shelf, window card, or listing, each pointing at its own page, all produced in a single run when the season changes.
Field teams and franchises
Each location gets its own code so head office can compare branches on the same campaign - the only honest way to read a national print run.
Bulk static vs bulk dynamic: which batch to make
This is the decision that sets your cost and your workflow, and it is worth two minutes before you generate 500 of the wrong thing.
Generate a static batch when
- Each destination URL already exists and will not move.
- You do not need per-code scan counts.
- The codes are disposable: one event, one season, one print run.
- You want zero ongoing dependency - static codes work forever, free, unlimited.
Generate a dynamic batch when
- The codes go on something durable: asset tags, packaging, signage, menus.
- You want to compare placements or locations by scan volume.
- Destinations will change - seasonal menus, rotating promos, moved documents.
- You need to retire or repoint individual codes without recalling the print run.
A useful middle path: generate the batch static for the pilot run, and dynamic once the layout is settled and the codes are going somewhere permanent. The cost difference is real - static codes are unlimited and free, dynamic codes are part of a paid plan past the first one - but so is the cost of reprinting 500 asset labels because a URL moved.
Background reading: how dynamic QR codes stay editable after printing and what per-code scan tracking shows you.
FAQ
Is bulk QR code generation really free?
Yes - up to 100 static codes per batch, with no signup, no watermark, and no expiry. The codes are generated in your browser, so there's nothing for us to meter. Need more than 100? Just run another batch.
Are my links uploaded to your server?
No. The entire tool runs client-side in your browser: parsing, QR generation, and ZIP packaging. Your list never leaves your machine, which makes it safe for internal or unreleased URLs.
What CSV format does the bulk generator accept?
Very forgiving input: one URL per line works, and so do comma-, semicolon-, or tab-separated rows where one field is the URL and the rest becomes the filename. A header row like name,url is skipped automatically.
Can I bulk-generate dynamic (editable) QR codes?
The free tool on this page makes static codes - the destination is baked in permanently. Dynamic codes, which you can re-point after printing and track scan-by-scan, are created from your dashboard with a Pro plan. For batches where URLs may change (menus, campaigns, listings), dynamic is the safer print.
What should I name the files?
Put the name in the row: 'Table 12, https://...' produces table-12.png. Rows without a name fall back to the destination domain, and the included codes.csv manifest records which file points where.
Printing links that might change? Go dynamic
Dynamic QR codes stay editable after printing and count every scan. They are part of Pro, at one flat rate for unlimited codes.
See Pro pricing