QR Tools

Bulk QR Code Generator

Turn a list or a CSV into hundreds of QR codes at once, all sharing one look: shapes, colours, gradient, logo and error correction. Every code is scanned back before you download the batch as PNG or SVG.

Privacy

Your list, your logo and every code made from them stay in this browser. Nothing is uploaded, nothing is stored, and the ZIP is assembled on your own device.

Tips

  • Paste straight out of a spreadsheet. Tabs, commas and semicolons are all understood, and a header line naming the columns is used if you give one.
  • Add a column called name to choose the file names. Without one the file name comes from the content, which is fine for URLs and unhelpful for contact cards.
  • Every code is rasterised and read back, not just the first. Rows differ in length, so they differ in version, and a logo that clears a short URL can smother a long one.
  • A batch is only as printable as its densest code. The statistics give the smallest safe print width for the worst one in the run, which is the size the whole sheet should be set at.
  • The download stays shut until every code has been checked, and each file is decoded once more from the exact bytes going into the archive. Anything that fails is left out rather than shipped.

Frequently asked questions

How many codes can I make at once?

Five hundred in one run. Everything happens in this tab — encoding, styling, checking and zipping — so the limit is about keeping the page responsive rather than a quota. For more than that, split the list and run it twice.

Can I use a CSV or a spreadsheet?

Yes. Paste it in or load the file. The separator is worked out for you, quoted fields are handled, and if the first row names the fields it is used as a header. Whatever mapping was worked out is printed above the codes so you can check it before you print four hundred labels.

Do all the codes have to look the same?

Yes, and that is the point: one set of shape, colour, gradient, eye and logo settings applied across the whole batch, so a sheet of table numbers or badges is consistent. For a one-off code with its own look, use the single QR Code Generator.

How do I know the whole batch will scan?

Twice over. Each code is drawn, rasterised and decoded again, and the result compared with the row it came from — once at a comfortable size and once small and rough. Then, when you press download, every file is decoded a second time from the exact bytes about to go into the archive, because a PNG at 300 px is not the same artefact as the SVG it came from. The download is shut until that finishes, and anything that fails to read is left out of the archive rather than shipped.

What happens to a code that will not scan?

It is marked in the grid, counted in the summary and excluded from the download, so the ZIP only ever contains codes that were decoded successfully. The buttons say how many passed, the page suggests the single change that would fix the batch — usually raising the error correction — and the CSV records every row including the rejected ones.

What names do the downloaded files get?

A column named name, label, filename, id or ref sets the file name. Failing that the name is made from the content itself, lower-cased and hyphenated, with duplicates numbered so nothing overwrites anything inside the ZIP.

Is any of this uploaded?

No. The list, the logo you choose, the codes and the ZIP are all built in your browser. Nothing is sent to a server, so a list of customer addresses or staff phone numbers never leaves the device.

Related tools