Bulk Static code Runs in your browser

Bulk QR Code Generator

Generate hundreds of QR codes from a CSV and download a ZIP.

Your data is processed locally in your browser and is not uploaded to our servers.
QR codes created with this tool are static. Once generated, their encoded content cannot be changed.

What this tool does

Turns a spreadsheet into a folder of QR codes. Upload or paste a CSV, map your columns to the fields the QR type needs, check the validation report, pick a design, and download every code as a ZIP. Links, plain text, Wi-Fi networks and contact cards are all supported.

Getting your CSV ready

Download a template for the type you have chosen and you will get the exact column names the mapper recognises. Your own file works too: headers are detected automatically, common names are matched for you (link and website both map to URL), and anything unmatched can be assigned by hand. Comma, semicolon and tab delimiters are all detected, and UTF-8 with or without a byte-order mark is handled so accented names survive.

Validation before generation

Every row is checked with the same rules as the single generator: bad URLs, blocked schemes, invalid email addresses and empty required fields are listed with their row numbers before you generate anything. Exact duplicates can be skipped automatically. Invalid rows are excluded rather than silently producing broken codes, and you can download an error report as CSV to fix your source data.

File names

Map a column to "File name" and each code is named from it — room-101.png, jane-doe.svg — which is the difference between a usable batch and 300 files called qr-1 to qr-300. Names are sanitised and de-duplicated automatically, and no data from the encoded content ever ends up in a file name unless you map it there yourself.

It really does run in your browser

The CSV is read with the FileReader API, the codes are drawn on a canvas, and the ZIP is assembled with a small archive writer built into the page. No file, row or generated image is uploaded. That is worth knowing when the spreadsheet is a customer list, a guest Wi-Fi roster or an unreleased product catalogue.

Limits and performance

Batches are capped at 500 rows so the browser's memory stays sane; split larger jobs. Generation is chunked so the page stays responsive and the cancel button works instantly. SVG output is vector and usually smaller for simple codes; PNG suits anything being placed into a document or a print layout.

Frequently asked questions

Is my CSV uploaded to a server?

No. It is read in your browser, the codes are drawn locally, and the ZIP is built on your device.

How many codes can I generate at once?

Up to 500 per batch. That keeps browser memory reasonable — run several batches for larger lists.

Can I name each file from a column?

Yes. Map any column to "File name" and it is used, sanitised and de-duplicated.

What happens to rows with bad data?

They are listed with their row number and reason, excluded from the ZIP, and downloadable as an error-report CSV.

PNG or SVG?

SVG for print and anything that will be resized; PNG for documents, slides and systems that cannot read vectors.

Curious how we build and check these codes? Read our methodology.