Bulk QR generator. Hundreds of codes, one click.
Your data never leaves your browser.
Style & output
Live preview
-Click any preview to download just that PNG.
Capped at 500 codes per run to keep your browser responsive, split bigger lists into batches. Rows whose value is too long for one QR are flagged and skipped, never silently dropped.
Why generate QR codes in bulk, locally?
Bulk QR services usually want your whole product list, ticket database or URL set uploaded to their servers, and many wrap your links in tracking redirects that expire. This tool renders every code on your own device from your raw values: no tracking, no expiry, no account. You get plain PNG files in a ZIP, named by row, label or value, ready for print sheets, packaging or mail merges. Completely free, no sign-up, no limits.
How to use the Bulk QR Generator
This generator turns a list of values into QR codes and downloads them as PNG files in one ZIP. Each line of your list, or each row of a CSV column, becomes one static code that holds exactly that text, drawn in your browser with your chosen size, colors and caption. It is for anyone printing labels, tickets, product tags or mail merge sheets.
Step by step
-
Add your values
On the Paste lines tab, type or paste one value per line: URLs, serial numbers, ticket codes or any text. Empty lines are skipped. The counter at the top right shows how many values were found.
-
Or use a CSV file
Switch to CSV file and drop a file on Drop a .csv file, or click it to browse. Comma, semicolon and tab separated files are detected from the first line. Untick First row is a header if row one holds data rather than column names.
-
Pick the columns
For a CSV, choose the Value column (encoded in the QR) and, if you want captions or names from another column, the Label column (optional). Rows with an empty value are skipped.
-
Set the style
Drag Size from 128 to 1024 pixels (default 512). Pick an Error correction level, Medium (recommended) by default. Choose Foreground and Background colors. Print the label (or value) under the QR is ticked by default and adds a caption under each code; set its text height with Caption size, 10 to 32 pixels (default 16), or untick it for bare codes.
-
Choose the file names
Under PNG filenames, pick Row number (qr-001.png), From label or From value. Repeated names get -2, -3 added so nothing is overwritten.
-
Preview and generate
Live preview shows the first 12 codes. Click a preview to download just that PNG and test it with your phone. Then press the Generate button to build every code and save qr-codes.zip.
Reading the result
- The Generate button shows how many codes it will make, such as Generate 4 QR codes (.zip). One run makes at most 500; the counter warns you when your list is longer and only the first 500 are used.
- A preview tile reading Row N: too long for one QR means that value does not fit at the chosen error correction level. It is skipped in the ZIP, and the message after generating lists the skipped rows.
- Each PNG is close to the chosen size, rounded down so every QR square is a whole number of pixels, with a border two squares wide in the Background color. A caption adds a strip twice the caption size in height below the code.
- Captions that are wider than the code are cut short with an ellipsis, so keep labels brief or raise the size.
Tips and common mistakes
- Scan one downloaded preview with a phone before you generate the whole batch, especially after changing colors.
- Keep a dark foreground on a light background with strong contrast. Light codes on dark backgrounds or pale colors are harder for many scanners to read.
- Higher error correction survives scratches and logos better but holds less data. If long URLs are flagged as too long, choose Low or shorten the links.
- The border around each code is narrow. When you place codes on packaging or busy artwork, leave extra empty space around them.
- Row number names follow the order of the codes in the batch, not the row numbers of your CSV. Use From label for names that match your data.
- Plain letters, digits and URL characters encode correctly. This tool does not encode text as UTF-8, so characters such as the euro sign, curly quotes, emoji, or Chinese, Arabic or Cyrillic text scan back as different characters. Test one preview before you print a batch that contains them.
Privacy and limits
Your list, your CSV and the generated images stay in your browser. Nothing is uploaded, and the page saves nothing, so closing the tab clears everything. The QR and ZIP libraries load from this site, not from a third party. The codes are static: they hold your text directly, with no redirect and nothing that expires or tracks scans.
Everything a batch tool should do.
- Batch-generate up to 500 QR codes from a pasted list or a CSV file in one click.
- Upload a CSV and choose which column holds the encoded value and which holds the label, comma, semicolon or tab separated, all auto-detected.
- Customize colors, size and error correction for every code in the batch at once.
- Add a caption under each QR code using the label or the raw value, with adjustable caption size.
- Name PNGs by row number, label or value so the ZIP is ready for mail merges or print layouts, duplicate names are de-conflicted automatically.
- Download a single PNG by clicking any preview tile before committing to a full batch export.
Frequently asked questions.
Is the Bulk QR Generator free?
Is it private? Are my files uploaded anywhere?
How many QR codes can I make at once?
What happens if a value is too long for a QR code?
What file format do I get?
Do the QR codes expire or track scans?
Published · Last updated .